System and method for locating object view and platform independent object
First Claim
1. A method of operating a distributed computer system having a plurality of distinct computers, the method comprising steps of:
- a) in a first computer, storing viewer programs, each viewer program enabling a user thereof to view data in objects of an associated data type;
b) in said first computer, enabling a user to view data in a first object having an associated first data type using a first one of said viewer programs;
said data in said first object including link data referencing a second object of a second data type, said link data identifying a second computer in which said second object is located;
c) in said first computer, enabling said user to select said link data;
e) said first computer responding to user selection of said link data by establishing a first communication link between said first computer and said second computer and initiating retrieval of said second object from said second computer including retrieving data type information associated with said second object;
f) said first computer, determining whether said viewer programs stored in said first computer include a viewer program associated with said second data type;
g) when said determination in step (f) is negative, determining whether a viewer program associated with said second data type is stored in said second computer;
h) when said determination in step (g) is positive,h1) loading a copy of said viewer program associated with said second data type into said first computer,h2) executing a verification procedure on said copied viewer program to determine whether said copied viewer program meets predetermined operand stack usage criteria;
h3) when said determination is step h2 is positive, executing said copied viewer program so as to enable said user to view said second object.
2 Assignments
0 Petitions
Accused Products
Abstract
A class loader downloads objects and object viewers from remote computer nodes, and invokes locally stored object viewers to view objects. When a user selects an object to view, a conventional downloading of the referenced object is initiated. The class loader, however, utilizes data type information received at the beginning of the object downloading process to determine if a viewer for the referenced object is available on the user'"'"'s workstation. If an appropriate view is not locally available, the class loader automatically locates an appropriate viewer on the server from which the object is being downloaded, or from any other appropriate server known to the user'"'"'s workstation. The class loader downloads the located viewer and then invokes a program verification procedure to verify the integrity of the downloaded viewer before the viewer is executed. Once a viewer has been verified, the viewer is added to the user'"'"'s local viewer library, downloading of the referenced object is completed, and execution of the viewer to view the downloaded object is enabled. If an appropriate viewer cannot be located, or the only viewer located does not pass the verification procedure, downloading of the referenced object is aborted.
177 Citations
12 Claims
-
1. A method of operating a distributed computer system having a plurality of distinct computers, the method comprising steps of:
-
a) in a first computer, storing viewer programs, each viewer program enabling a user thereof to view data in objects of an associated data type; b) in said first computer, enabling a user to view data in a first object having an associated first data type using a first one of said viewer programs;
said data in said first object including link data referencing a second object of a second data type, said link data identifying a second computer in which said second object is located;c) in said first computer, enabling said user to select said link data; e) said first computer responding to user selection of said link data by establishing a first communication link between said first computer and said second computer and initiating retrieval of said second object from said second computer including retrieving data type information associated with said second object; f) said first computer, determining whether said viewer programs stored in said first computer include a viewer program associated with said second data type; g) when said determination in step (f) is negative, determining whether a viewer program associated with said second data type is stored in said second computer; h) when said determination in step (g) is positive, h1) loading a copy of said viewer program associated with said second data type into said first computer, h2) executing a verification procedure on said copied viewer program to determine whether said copied viewer program meets predetermined operand stack usage criteria; h3) when said determination is step h2 is positive, executing said copied viewer program so as to enable said user to view said second object. - View Dependent Claims (2, 3)
-
-
4. A method of operating a distributed computer system having a plurality of distinct computers, the method comprising steps of:
-
a) in a first computer, storing viewer programs, each viewer program enabling a user thereof to view objects of an associated data type; b) in said first computer, enabling a user to select a reference to an object located in a second computer; c) said first computer responding to user selection of said reference by establishing a first communication link between said first computer and said second computer and initiating retrieval of said object from said second computer including retrieving data type information associated with said object; d) in said first computer, determining whether said viewer programs stored in said first computer include a viewer program associated with said retrieved data type; e) when said determination in step (d) is negative, determining whether a viewer program associated with said retrieved data type is stored in said second computer; f) when said determination in step (e) is positive, f1) loading a copy of said viewer program associated with said retrieved data type into said first computer, f2) executing a verification procedure on said copied viewer program to determine whether said copied viewer program meets predetermined operand stack usage criteria; f3) when said determination in step f2 is positive, executing said copied viewer program so as to enable said user to view said second object. - View Dependent Claims (5, 6)
-
-
7. A method of operating a distributed computer system having a plurality of distinct computers, the method comprising steps of:
-
a) in a first computer, storing a first library of viewer programs, each viewer program enabling a user thereof to view objects of an associated data type; b) in said second computer, storing objects and a second library of viewer programs, each viewer program in said first and second libraries of viewer programs enabling a user of said second computer to view objects of an associated data type; c) in said second computer, enabling said user of said second computer to select an object and determining said selected object'"'"'s associated data type; d) in said second computer, determining whether said viewer programs stored in said second computer include a viewer program associated with said selected object'"'"'s data type; e) when said determination in step (d) is negative, determining whether a viewer program associated with said selected object'"'"'s data type is stored in said first computer; f) when said determination in step (e) is positive, f1) loading a copy of said viewer program associated with said selected object'"'"'s data type into said second computer, f2) executing a verification procedure on said copied viewer program to determine whether said copied viewer program meets predetermined operand stack usage criteria; f3) when said determination in step f2 is positive, executing said copied viewer program so as to enable said user to view said selected object. - View Dependent Claims (8, 9)
-
-
10. A distributed computer system having a plurality of distinct computers, comprising:
-
a first computer, including; a first memory for storing objects and viewer programs, each stored object including data type information associated with said each object; and a second computer, including; a second memory, distinct from said first memory, for storing viewer programs, each viewer program enabling a user of said second computer to view objects of an associated data type; a user interface control program for enabling said user to select a reference to one of said objects stored in said first memory of said first computer; and an inter-computer link control program for responding to user selection of said object reference by establishing a first communication link between said second computer and said first computer and initiating retrieval of said one object from said first computer including retrieving data type information associated with said object; said user interface control program including viewer search instructions for determining whether said viewer programs stored in said second computer include a viewer program associated with said retrieved data type, and, when said determination is negative, for attempting to locate a viewer program associated with said retrieved data type in said first computer; and said inter-computer link control program including viewer downloading instructions for loading a copy of said viewer program associated with said retrieved data type into said second memory of said second computer when said viewer search instructions locate in said first computer said viewer program associated with said retrieved data type. - View Dependent Claims (11)
-
-
12. A distributed computer system having a plurality of distinct computers, comprising:
-
a first computer, including; a first memory for storing a first library of viewer programs, each stored object including data type information associated with said each object; and a second computer, including; a second memory for storing objects and a second library of viewer programs, each viewer program in said first and second libraries of viewer programs enabling a user of said second computer to view objects of an associated data type; a user interface control program for enabling said user to select an object and for determining said selected object'"'"'s associated data type; and a class loader, coupled to said second memory, said class loader including; viewer search instructions for determining whether said viewer programs stored in said second computer include a viewer program associated with said selected object'"'"'s data type, and, when said determination is negative, for attempting to locate a viewer program associated with said selected object'"'"'s data type in said first computer; and viewer downloading instructions for loading a copy of said viewer program associated with said selected object'"'"'s data type into said second computer when said viewer search instructions locate in said first computer said viewer program associated with said selected object'"'"'s data type.
-
Specification