Application class extensions
View Patent ↗A method for extending a first application class includes integrating a first data buffer within the first application class for holding extended properties, and utilizing a rule based engine to determine the values to associate with one or more of the extended properties of the first application class.
1. A computer program product comprising a computer readable storage medium including a computer readable program, wherein the computer readable program when executed on a computer causes the computer to extend a first application class by:
constructing a private property of the first application class which encapsulates a first variable sized data buffer for holding one or more extended properties that are not compiled into the structure of the class;
allocating the first data buffer when an instance of the first application class is constructed;
utilizing a rule based engine to determine the values to associate with one or more of the extended properties in the first data buffer;
creating an attribute to represent each of the one or more extended properties associated with the first application class;
creating a second data buffer for holding the one or more extended properties associated with the first application class; and
associating the second data buffer with each instance of the first application class.
2. The computer program product of claim 1 , wherein the computer readable program causes the computer to utilize the one or more extended properties associated with the first application class to create a second application class.
3. The computer program product of claim 1 , wherein the computer readable program causes the computer to utilize the one or more extended properties associated with the first application class to alter a structure of an instance of the first application class.
4. The computer program product of claim 3 , wherein the computer readable program causes the computer to alter the structure of an instance of the first application class by:
identifying a context of the instance of the first application class;
identifying a set of the extended properties based on the identified context; and
utilizing the set of extended properties for the instance of the application class.
5. The computer program product of claim 4 , wherein the computer readable program causes the computer to identify the context of an instance by identifying when a system state changes, and wherein the computer readable program causes the computer to identify the set of properties by:
generating property mapping rules; and
applying the property mapping rules to the instance upon the identification of the system state change.
6. A computer program product comprising:
a computer readable storage medium having computer readable code means embodied therein for causing a computer to extend a first application class, the computer readable code means in the computer program product comprising:
computer readable program code means for causing a computer to construct a private property of the first application class which encapsulates a first variable sized data buffer within the application class for holding one or more extended properties that are not compiled into the structure of the class;
computer readable program code means for causing a computer to allocate the first data buffer when an instance of the first application class is constructed;
computer readable program code means for causing a computer to utilize a rule based engine to determine values one or more of the extended properties to associate with the first application class one or more extended properties in the first data buffer;
computer readable program code means for creating an attribute to represent each of the one or more extended properties associated with the first application class;
computer readable program code means for creating a second data buffer for holding the one or more extended properties associated with the first application class; and
computer readable program code means for associating the second data buffer with each instance of the first application class.
7. The computer program product of claim 6 , wherein the computer readable code means in the computer program product further comprises:
computer readable program code means for utilizing the one or more extended properties associated with the first application class to create a second application class.
8. The computer program product of claim 6 , wherein the computer readable code means in the computer program product further comprises:
computer readable program code means for utilizing the one or more extended properties associated with the first application class to alter a structure of an instance of the first application class.
9. The computer program product of claim 8 , wherein the computer readable program code means to alter a structure of an instance of the first application class further comprises:
computer readable program code means for identifying a context of the instance of the first application class;
computer readable program code means for identifying a set of the extended properties based on the identified context; and
computer readable program code means for utilizing the set of extended properties for the instance of the application class.
10. The computer program product of claim 9 , wherein the computer readable program code means for identifying the context of an instance includes computer readable program code means for identifying when a system state changes, and wherein computer readable program code means for identifying the set of properties includes:
computer readable program code means for generating property mapping rules; and
computer readable program code means for applying the property mapping rules to the instance upon the identification of the system state change.
11. An article of manufacture comprising:
a computer readable storage medium having computer readable program code means embodied therein for causing a computer to extend a first application class, the computer readable code means in the article of manufacture comprising:
computer readable program code means for causing a computer to construct a private property of the first application class which encapsulates a first variable sized data buffer within the application class for holding one or more extended properties that are not compiled into the structure of the class;
computer readable program code means for causing a computer to allocate the first data buffer when an instance of the first application class is constructed;
computer readable program code means for causing a computer to utilize a rule based engine to determine values one or more of the extended properties to associate with the first application class one or more extended properties in the first data buffer;
computer readable program code means for creating an attribute to represent each of the one or more extended properties associated with the first application class;
computer readable program code means for creating a second data buffer for holding the one or more extended properties associated with the first application class; and
computer readable program code means for associating the second data buffer with each instance of the first application class.
12. The article of manufacture of claim 11 , wherein the computer readable code means in the computer program product further comprises:
computer readable program code means for utilizing the one or more extended properties associated with the first application class to create a second application class.
13. The article of manufacture of claim 11 , wherein the computer readable code means in the computer program product further comprises:
computer readable program code means for utilizing the one or more extended properties associated with the first application class to alter a structure of an instance of the first application class.
14. The article of manufacture of claim 13 , wherein the computer readable program code means to alter a structure of an instance of the first application class further comprises:
computer readable program code means for identifying a context of the instance of the first application class;
computer readable program code means for identifying a set of the extended properties based on the identified context; and
computer readable program code means for utilizing the set of extended properties for the instance of the application class.
15. The article of manufacture of claim 14 , wherein the computer readable program code means for identifying the context of an instance includes computer readable program code means for identifying when a system state changes, and wherein computer readable program code means for identifying the set of properties includes:
computer readable program code means for generating property mapping rules; and
computer readable program code means for applying the property mapping rules to the instance upon the identification of the system state change.
16. A controller for a substrate processing apparatus comprising:
first circuitry for extending a first application class comprising:
circuitry for constructing a private property of the first application class which encapsulates a first variable sized data buffer for holding one or more extended properties that are not compiled into the structure of the class;
circuitry for causing a computer to allocate the first data buffer when an instance of the first application class is constructed;
circuitry for utilizing a rule based engine to determine values to associate with the one or more extended properties in the first data buffer;
circuitry for creating an attribute to represent each of the one or more extended properties associated with the first application class;
circuitry for creating a second data buffer for holding the one or more extended properties associated with the first application class; and
circuitry for associating the second data buffer with each instance of the first application class.
17. The controller of claim 16 , further comprising circuitry for utilizing the one or more extended properties associated with the first application class to create a second application class.
18. The controller of claim 16 , further comprising circuitry for utilizing the one or more extended properties associated with the first application class to alter a structure of an instance of the first application class.
19. The controller of claim 18 , wherein the circuitry to alter a structure of an instance of the first application class comprises:
circuitry for identifying a context of the instance of the first application class;
circuitry for identifying a set of the extended properties based on the identified context; and
circuitry for utilizing the set of extended properties for the instance of the application class.
20. The controller of claim 19 , wherein the circuitry for identifying the context of an instance includes circuitry for identifying when a system state changes, and wherein the circuitry for identifying the set of properties includes:
circuitry for generating property mapping rules; and
circuitry for applying the property mapping rules to the instance upon the identification of the system state change.