System and method for interoperating with foreign objects from a single language computing environment
First Claim
1. A computing device implemented method of supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising:
- obtaining a class definition in a single language computing environment having a native object system, the class definition supporting an instantiation of objects accessible in the single language computing environment from classes defined in a plurality of types of foreign object systems;
examining a collection of metadata of a foreign class created in a first foreign object system, the first foreign object system different than the native object system, the metadata describing how to access an instance of the foreign class;
creating metadata corresponding to the metadata for the foreign class, the created metadata created in a form supported by the single language host computing environment; and
instantiating a first object instance in the single language host computing environment using the class definition, the instantiated first object instance referencing the created metadata and referencing the instance of the foreign class.
1 Assignment
0 Petitions
Accused Products
Abstract
A mechanism for providing automatic interoperation between native objects created in a single language computing environment and objects created in external virtual machines and foreign class systems is discussed. Embodiments of the present invention provides a class definition syntax for objects created in the single language computing environment that provides the ability to directly subclass external classes and implement external interfaces. One embodiment of the present invention also permits a foreign object system to instantiate native objects and to create foreign subclasses of native classes. More specifically, one embodiment of the present invention provides bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language computing environment.
-
Citations
33 Claims
-
1. A computing device implemented method of supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising:
-
obtaining a class definition in a single language computing environment having a native object system, the class definition supporting an instantiation of objects accessible in the single language computing environment from classes defined in a plurality of types of foreign object systems; examining a collection of metadata of a foreign class created in a first foreign object system, the first foreign object system different than the native object system, the metadata describing how to access an instance of the foreign class; creating metadata corresponding to the metadata for the foreign class, the created metadata created in a form supported by the single language host computing environment; and instantiating a first object instance in the single language host computing environment using the class definition, the instantiated first object instance referencing the created metadata and referencing the instance of the foreign class. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device implemented method of supporting interoperation between a single language computing environment and objects created in multiple types of foreign object systems, comprising:
-
obtaining a class definition for a native class in a single language computing environment, the class definition supporting the instantiation of objects accessible in a plurality of different types of foreign object systems; examining a collection of metadata of the native class created in the single language computing environment, the metadata describing how to access an instance of the native class; creating metadata corresponding to the metadata for the native class, the created metadata created in a form supported by an identified foreign object system; and instantiating a first foreign object instance in a form supported by the identified foreign object system using the class definition, the instantiated first foreign object instance referencing the created metadata and the instance of the native class. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computing device implemented system for supporting interoperation between a single language computing environment and objects created in multiple types of foreign object systems, comprising:
-
a class definition in a single language computing environment having a native object system, the class definition supporting the instantiation of objects accessible in the single language computing environment from classes defined in a plurality of types of foreign object systems; a mapping facility in the single language computing environment, the mapping facility providing bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language host computing environment, wherein the mapping facility examines the metadata of a first foreign class created in a first foreign object system, the metadata describing how to access an instance of the foreign object system, and wherein the mapping facility creates metadata corresponding to the metadata for the first foreign class, the created metadata created in a form supported by the single language host computing environment; and a first object instance, the first object instance instantiated using the class definition and referencing the created metadata and the instance of the foreign class. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A computing device implemented system for supporting interoperation between a single language computing environment and objects created in multiple types of foreign object systems, comprising:
-
a class definition in a single language computing environment having a native object system, the class definition supporting the instantiation of objects accessible in a plurality of different types of foreign object systems; a mapping facility in the single language computing environment, the mapping facility providing bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language host computing environment, wherein the mapping facility examines the metadata of a native object class created in the single language computing environment, the metadata describing how to access an instance of the native object class, and wherein the mapping facility creates metadata corresponding to the metadata for the native class, the created metadata created in a form supported by an identified foreign object system; and a first foreign object instance, the first foreign object instance instantiated using the class definition and referencing the created metadata and an instance of the native object class. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A computing device implemented method of supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising:
-
obtaining a native class in a native object system, the native class defining a native metaclass describing how to access a collection of data defined by the native class and a collection of data associated with an instance of the native class identifying a foreign metaclass for a foreign class created in a foreign object system, the foreign metaclass defining metadata describing how to access a collection of data defined by the foreign class and a collection of data associated with an instance of the foreign class; subclassing the foreign metaclass as a subclass of the native class; and instantiating, in the single language computing environment, an instance of the subclass, the instance of the subclass referencing metadata describing how to access the collection of data associated with the instance of the foreign class.
-
-
28. A computing device implemented method of supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising:
-
obtaining a native class in a native object system, the native class defining a native metaclass describing how to access a collection of data defined by the native class and a collection of data associated with an instance of the native class; identifying a foreign metaclass for a foreign class created in a foreign object system, the foreign metaclass defining metadata describing how to access a collection of data defined by the foreign class and a collection of data associated with an instance of the foreign class; subclassing the native metaclass as a subclass of the foreign class; and instantiating, in the foreign object system, an instance of the subclass, the instance of the subclass referencing metadata describing how to access the collection of data associated with the instance of the native class.
-
-
29. A physical medium for use with a computing device, the physical medium holding computer-executable instructions for supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising, the instructions comprising:
-
instructions for obtaining a class definition in a single language computing environment having a native object system, the class definition supporting an instantiation of objects accessible in the single language computing environment from classes defined in a plurality of types of foreign object systems; instructions for examining a collection of metadata of a foreign class created in a first foreign object system, the metadata describing how to access an instance of the foreign class, the first foreign object system different than the native object system; instructions for creating metadata corresponding to the metadata for the foreign class, the created metadata created in a form supported by the single language host computing environment; and instructions for instantiating a first object instance in the single language host computing environment using the class definition, the instantiated first object instance referencing the created metadata and an instance of the foreign class.
-
-
30. A physical medium for use with a computing device, the physical medium holding computer-executable instructions for supporting interoperation between a single language computing environment and objects created in multiple types of foreign object systems, the instructions comprising:
-
instructions for obtaining a class definition for a native class in a single language computing environment, the class definition supporting the instantiation of objects accessible in a plurality of different types of foreign object systems; instructions for examining a collection of metadata of the native class created in the single language computing environment, the metadata describing how to access an instance of the native class; instructions for creating metadata corresponding to the metadata for the native class, the created metadata created in a form supported by an identified foreign object system; and instructions for instantiating a first foreign object instance in a form supported by the identified foreign object system using the class definition, the instantiated first foreign object instance referencing the created metadata and an instance of the native class.
-
-
31. A physical medium for use with a computing device, the physical medium holding computer-executable instructions for supporting interoperation between a single language computing environment and objects created in foreign object systems, the instructions comprising:
-
instructions for obtaining a native class in a native object system, the native class defining a native metaclass describing how to access a collection of data defined by the native class and a collection of data associated with an instance of the native class; instructions for identifying a foreign metaclass for a foreign class created in a foreign object system, the foreign metaclass defining metadata describing how to access a collection of data defined by the foreign class and a collection of data associated with an instance of the foreign class; instructions for subclassing the foreign metaclass as a subclass of the native class; and instructions for instantiating, in the single language computing environment, an instance of the subclass, the instance of the subclass referencing metadata describing how to access the collection of data associated with the instance of the foreign class.
-
-
32. A physical medium for use with a computing device, the physical medium holding computer-executable instructions for supporting interoperation between a single language computing environment and objects created in foreign object systems, the instructions comprising:
-
instructions for obtaining a native class in a native object system, the native class defining a native metaclass describing how to access a collection of data defined by the native class and a collection of data associated with an instance of the native class; instructions for identifying a foreign metaclass for a foreign class created in a foreign object system, the foreign metaclass defining metadata describing how to access a collection of data defined by the foreign class and a collection of data associated with an instance of the foreign class; instructions for subclassing the native metaclass as a subclass of the foreign class; and instructions for instantiating, in the foreign object system, an instance of the subclass, the instance of the subclass referencing metadata describing how to access the collection of data associated with the instance of the native class.
-
-
33. A system for supporting interoperation between a single language computing environment and objects created in foreign object systems, comprising:
-
means for obtaining a class definition in a single language computing environment having a native object system, the class definition supporting an instantiation of objects accessible in the single language computing environment from classes defined in a plurality of types of foreign object systems; means for examining a collection of metadata of a foreign class created in a first foreign object system, the first foreign object system different than the native object system, the metadata describing how to access an instance of the foreign class; means for creating metadata corresponding to the metadata for the foreign class, the created metadata created in a form supported by the single language host computing environment; and means for instantiating a first object instance in the single language host computing environment using the class definition, the instantiated first object instance referencing the created metadata an instance of the foreign class.
-
Specification