Method for instantiating a class having different versions
First Claim
1. A method for instantiating a class having different versions defined in an object-oriented programming language, comprising the steps of:
- providing a computer network in which computers are arranged in distributed fashion in a network connection, a platform for operation of mobile software agents being provided by each of said computers;
step 1a) if a particular version of an instantiatable class is requested, using the requested version and jumping to step 1c;
step 1b) otherwise, using a newest version of the instantiatable class, investigating with the platform whether the newest version is already locally available, and, if warranted, jumping to step 1d, otherwise, retrieving a class definition of a corresponding version from a class file server and jumping to step 1d);
step 1c) if the class definition of the corresponding version is already locally available, jumping to step 1d), otherwise searching for the class definition, and if the class definition is found, jumping to step 1d), otherwise, not instantiating the class; and
step 1d) instantiating the class according to a version to be used of the class definition.
1 Assignment
0 Petitions
Accused Products
Abstract
In a method for instantiating a class having different versions defined in an object-oriented programming language, updating of objects in a network for the running time of the system is enabled. Objects having different versions, above all software agents, are therefore instantiated. A distinction is made between the instantiation with different versions of an object, the updating of classes having different versions, and the updating of the platform, which provides operating software for the software agents. Applications of the method include Internet, network management, Java, and generally networked and/or distributed systems.
59 Citations
7 Claims
-
1. A method for instantiating a class having different versions defined in an object-oriented programming language, comprising the steps of:
-
providing a computer network in which computers are arranged in distributed fashion in a network connection, a platform for operation of mobile software agents being provided by each of said computers;
step 1a) if a particular version of an instantiatable class is requested, using the requested version and jumping to step 1c;
step 1b) otherwise, using a newest version of the instantiatable class, investigating with the platform whether the newest version is already locally available, and, if warranted, jumping to step 1d, otherwise, retrieving a class definition of a corresponding version from a class file server and jumping to step 1d);
step 1c) if the class definition of the corresponding version is already locally available, jumping to step 1d), otherwise searching for the class definition, and if the class definition is found, jumping to step 1d), otherwise, not instantiating the class; and
step 1d) instantiating the class according to a version to be used of the class definition. - View Dependent Claims (2, 3, 4, 5, 6, 7)
step 2a) importing a new version of a class to an administration platform;
step 2b) transmitting information concerning the new version of a class to class file servers;
step 2c) each individual class file server requesting the new class version from the administration platform, if it is required;
step 2d) if the new class is an agent class, jumping to step 2f);
step 2e) if the new class is not an agent class, transmitting information concerning the new version of the class to all platforms, and jumping to step 2h);
step 2f) if no agents are supposed to exist any longer with an old version of the agent class, jumping to step 2g) otherwise, transmitting the information concerning the new version of the class to all platforms and jumping to step 2h);
step 2g) notifying all platforms that a new version of the agent class is present, and destroying the agents of the old version;
step 2h) retrieving the class definition of the new version of the agent class from the class file server when instantiation takes place for a first time.
-
-
3. The method according to claim 2, wherein in addition, storing predeterminable agent data in step 2g) before the destruction of the agents.
-
4. The method of claim 1, wherein for updating of a platform:
-
step 3a) if a platform is to be updated, rejecting incoming agents, and allowing to depart only agents already present on the platform; and
step 3b) after a predeterminable time span, terminating locally still-existing agents and carrying out the updating for the platform.
-
-
5. The method according to claim 4, wherein in addition to the updating of the platform in step 3b), previously storing important agents and data that are still determinable, and restoring the agents and data after the updating.
-
6. The method according to claim 1, wherein for step 1c), carrying out a search for the class definition successively on a predecessor platform, an originating platform of the agent and, finally, on the class file server.
-
7. The method according to claim 1, wherein an implementation is carried out in a programming language that enables dynamic loading of classes.
Specification