Method and apparatus for efficient representation of variable length identifiers in a distributed object system
First Claim
1. Apparatus fore efficient representation of variable length object identifiers in a distributed object system having a client and an object server with a method for dynamically crating a portable object adapter, the apparatus compressing:
- a database containing a plurality of fixed-length compact object identifiers that are unique only to a particular portable object adapter and variable light object identifiers that are unique throughout the distributed object system;
an ID server having a method responsive to a variable length object identifier for retrieving fixed-length compact object identifiers from the database and returning one of the retrieved fixed-length compact object identifiers which corresponds to the variable length identifier;
an IDL interface available to the object server for invoking the ID server method over the distributed object system; and
wherein the method for dynamically creating a portable object adapter invokes the IDL interface when a server object instance does not exist in order to create a server object instance in the portable object adapter using a variable length identifier and assign thereto a previously-assigned fixed-length compact object identifier.
2 Assignments
0 Petitions
Accused Products
Abstract
In a CORBA distributed object system, potential object name ambiguities in the Portable Object Adapter are resolved without using variable-length object identifiers by translating the variable length identifiers into a fixed length compact identifier, such as a integer. The mapping for persistent objects is maintained on an ID server with persistent state and the mappings are ultimately written to a file. A server IDL interface is defined to the ID server which interface includes a method that accepts a variable length fully qualified name and returns the compact identifier. The method assigns an identifier if one does not exist. Another method accepts the identifier and returns the name.
-
Citations
21 Claims
-
1. Apparatus fore efficient representation of variable length object identifiers in a distributed object system having a client and an object server with a method for dynamically crating a portable object adapter, the apparatus compressing:
-
a database containing a plurality of fixed-length compact object identifiers that are unique only to a particular portable object adapter and variable light object identifiers that are unique throughout the distributed object system;
an ID server having a method responsive to a variable length object identifier for retrieving fixed-length compact object identifiers from the database and returning one of the retrieved fixed-length compact object identifiers which corresponds to the variable length identifier;
an IDL interface available to the object server for invoking the ID server method over the distributed object system; and
wherein the method for dynamically creating a portable object adapter invokes the IDL interface when a server object instance does not exist in order to create a server object instance in the portable object adapter using a variable length identifier and assign thereto a previously-assigned fixed-length compact object identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for efficient representation of variable length object identifiers in a distributed object system having a client and an object server with a method for dynamically creating a portable object adapter, the method comprising the steps of:
-
(a) constructing a database containing a plurality of fixed-length compact object, identifiers that are unique only to a particular portable object adapter and variable length object identifiers that are unique throughout the distributed object system;
(b) constructing an ID server for managing the database, the ID server having a method for retrieving fixed-length compact object identifiers from the database in response to a variable length object identifier and returning one of the retrieved fixed-length compact object identifiers which corresponds to the variable length identifier;
(c) defining an IDL interface available to the object server for invoking the ID server method over the distributed object system; and
(d) using the method for dynamically creating a portable object adapter to invoke the IDL interface when a server object instance does not exist in order to createa server object instance in the portable object adapter using a variable length identifier and assigning thereto a previously-assigned fixed-length compact object identifier. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
(d) using the one compact object identifier returned from the ID server to identify an object implementation in the object server and to invoke a method in the identified object implementation.
-
-
11. A method according to claim 9 wherein the distributed object system has a memory and step (a) comprises the step of:
(a1) storing the database in the memory.
-
12. A method according to claim 9 wherein step (b) is performed with an ID server that has persistent state.
-
13. A method according to claim 9 wherein step (a) comprises the step of:
(a3) constructing a database in which each of the plurality of compact object identifiers comprises a fixed length integer.
-
14. A method according to claim 9 wherein the database comprises a plurality of variable length object identifier/compact object identifier pairs and wherein step (b) comprises the steps of:
-
(b1) searching the plurality of pairs to locate a given variable length object identifier; and
(b2) returning the corresponding compact object identifier of the pair.
-
-
15. A method according to claim 9 wherein the database comprises a plurality of variable length object identifier/compact object identifier pairs and wherein step (a) comprises the step of:
(a4) building a dictionary on the variable length object identifiers.
-
16. A method according to claim 9 wherein the database comprises a plurality of variable length object identifier/compact object identifier pairs and wherein step (a) comprises the step of:
(a5) building a dictionary on the compact object identifiers.
-
17. A computer program product for efficient representation of variable object identifiers in a distribution object system having a client and an object server with a method for dynamically creating a portable object adapter, the computer program product comprising a computer usable medium having computer readable program code thereon, including:
-
program code for constructing a database containing a plurality of fixed-length compact object identifiers that are unique only to a particular portable object adapter and variable length object identifiers that are unique throughout the distributed object system;
program code which constructs an ID server for managing the database, the ID server having a method for retrieving fixed-length compact object identifiers from the database in response to a variable length object identifier and returning one of the retrieved fixed-length compact object identifiers which corresponds to the variable length identifier;
program code for defining an IDL interface available to the object server for invoking the ID server method over the distributed object system; and
program code for using the method for dynamically creating a portable object adapter to invoke the IDL interface when aserver object instance does not exit in order create a server object instance in the portable o using a variable length identifier and assigning thereto a previously-assigned fixed-length compact object identifier. - View Dependent Claims (18, 19)
-
-
20. A computer data signal embodied in a carrier wave for efficient representation of variable length object identifiers in a distributed object system having a client and an object server with a method for dynamically creating a portable object adapter, comprising:
-
program code for constructing a database containing a plurality of fixed-length compact object identifiers that are unique only to a particular portable object adapter and variable length object identifiers that are unique throughout the distributed object system;
program code which constructed an ID server for managing the database, the ID server having a method for retrieve fixed-length compact object identifiers from the database in response to variable length object identifier and returning one of the retrieved fixed-length compact object identifiers which corresponds to the variable length identifier;
program code for defining an IDL interface available to the object server for invoking the ID server method over the distributed object system; and
program code for using the method for dynamically creating a portable object adapter to invoke the IDL interface when a server object instance does not exist in order to create a server object instance in the portable object adapter using a variable length identifier and assigning thereto a previously-assigned fixed-length compact object identifier. - View Dependent Claims (21)
-
Specification