Environment extensibility and automatic services for component applications using contexts, policies and activators
First Claim
1. A system for providing an object execution environment in which objects have contexts that are an intersection of environment domains, the object execution environment being extensible to incorporate new behaviors specific to extended environment domains, the system comprising:
- an activator designation setting for designating an activator, the setting being settable to designate an environment extending activator operative to determine that a context of an object being activated include an extended environment domain; and
an object instantiation service operative at activation time of an object having a specified class to delegate processing determinative of a context in which the object is to be activated on to an activator chain that comprises the designated environment extending activator.
2 Assignments
0 Petitions
Accused Products
Abstract
An object system provides composable object execution environment extensions with an object model that defines a framework with contexts, policies, policy makers and activators that act as object creation-time, reference creation-time and call-time event sinks to provide processing of effects specific to the environment extensions. At object creation time, an object instantiation service of the object system delegates to the activators to establish a context in which the object is created. The context contains context properties that represent particular of the composable environment extensions in which the object is to execute. The context properties also can act as policy makers that contribute policies to an optimized policy set for references that cross context boundaries. The policies in such optimized sets are issued policy events on calls across the context boundary to process effects of switching between the environment extensions of the two contexts.
-
Citations
25 Claims
-
1. A system for providing an object execution environment in which objects have contexts that are an intersection of environment domains, the object execution environment being extensible to incorporate new behaviors specific to extended environment domains, the system comprising:
-
an activator designation setting for designating an activator, the setting being settable to designate an environment extending activator operative to determine that a context of an object being activated include an extended environment domain; and
an object instantiation service operative at activation time of an object having a specified class to delegate processing determinative of a context in which the object is to be activated on to an activator chain that comprises the designated environment extending activator. - View Dependent Claims (2, 3)
-
-
4. A system for executing component application objects within an environment having a plurality of domains that pertain to objects executing in the environment, a set of the domains that pertain to an object forming a context of the object, the system comprising:
-
a plurality of object activators operative in response to being delegated activation of a specified object within a specified context to determine to modify any domains of the context for the specified object, and to further delegate activation of the specified object in the modified context to another of the object activators; and
an object instantiation service having an interface for calling by a client object to request instantiation of a class of server object, and operative in response to the instantiation request to delegate activation of the server object within a context of the client object to a selected one of the object activators, whereby activation of the server object is delegated through a sequence of the activators and such delegation through the sequence results in a destination context in which the server object is instantiated;
wherein the system is modifiable to include new activators for instantiation of objects to have contexts that incorporate new domains to thereby extend the environment.
-
-
5. A process for extending an object execution environment to provide an added domain and a behavior specific to the added domain, objects in the object execution environment having a context being an intersection of domains, the process comprising:
-
defining an environment-extending activator with functionality responsive to being delegated activation of an object to modify a context in which the object is to be activated to include the added domain; and
at activation of the object, delegating activation of the object from an object instantiation service through a chain of activators that comprises the environment-extending activator, whereby the object is activated in a context that includes the added domain.
-
-
6. A method of providing an object execution environment with composable environment extensions that bound objects within domains subject to domain-specific environment behaviors, the method comprising:
-
for a domain in the environment, defining a create-time event sink, a reference-time event sink and a call-time event sink to provide processing of environment behaviors specific to the domain at create-time, reference-time and call-time, respectively;
on creation of an object in the environment, causing the create-time event sink to process the create-time environment behaviors specific to the domain for the object;
on passing a reference to the object in the environment, causing the reference-time event sink to process the reference-time environment behaviors specific to the domain for the object; and
on calls to the object in the environment, causing the call-time event sink to process the call-time environment behaviors specific to the domain for the object.
-
-
7. A method of providing an object execution environment with composable environment extensions, the method comprising:
-
defining a plurality of activators for performing activation-time processing of the composable environment extensions;
defining a plurality of policy makers for performing reference passing-time processing of the composable environment extensions;
defining a plurality of policy objects for performing call-time processing of the composable environment extensions;
at object creation, causing the activators to construct a context object to represent a first context of the instantiated object comprising an intersection of the composable environment extensions, the context object having a collection of the policy makers for the intersecting composable environment extensions;
at creation of a reference to the instantiated object from a second context differing in at least one composable environment extension from the first context, causing the policy makers of the first and second contexts to contribute policy objects for the differing composable environment extensions to the reference; and
at issuance of a call to the instantiated object using the reference, causing the contributed policy objects to process side effects of switching between the differing composable environment extensions.
-
-
8. A computer-readable storage medium having computer-executable instructions stored thereon for an extensible object execution environment having intersecting domains bounding groups of objects executing within the environment, the instructions comprising:
-
object creation code responsive to a request of a client for creation of a component application object in the extensible object execution environment to invoke activators for processing object creation effects of the domains and establish a context representing an intersection of the domains within which the component application object is created, the context having context properties specifying the intersection of the domains and policy makers of such domains;
reference marshaling code operative on marshaling a reference to the component application object from a separate context having at least one domain not in common with the component application object'"'"'s context to invoke the policy makers of the contexts for processing reference passing effects of the domains and establish a set of policies for invoking by the reference on calls made from the separate context using the reference, the policies processing cross-boundary effects of the at least one domain not in common between the contexts.
-
-
9. A component application object execution system having an object model for an extensible object execution environment having intersecting domains bounding groups of component application objects executing within the environment, the object model comprising:
-
a cross-context reference proxy for a client in a client context to reference and issue calls to a component application object in a server context, the client and server contexts characterizing different intersections of domains in the environment, the cross-context reference proxy issuing policy events on a call from the client to the component application object;
a set of policies associated with the cross-context reference proxy and responsive to the issued policy events to process cross-domain boundary call effects for domains differing between the client and server contexts. - View Dependent Claims (10, 11, 12, 13)
the policies set associated with the cross-context reference proxy contains policies begin specialized to references from the client context to component application objects in the server context, and containing policies specific to the domains differing between the client and server contexts.
-
-
11. The component application object execution system of claim 9 wherein the object model further comprises:
-
object context objects associated with the client and component application object and representative of the client context and the server context, respectively; and
a collection of context properties associated with each of the object context objects and representing domains in the respective context represented by the object context object.
-
-
12. The component application object execution system of claim 11 wherein the object model further comprises:
a collection of policy makers associated with each of the object context objects and contributing policies for the domains in the context represented by such object context object at creation of the cross-context reference proxy to the policies set.
-
13. The component application object execution system of claim 12 wherein the context properties are objects, at least some of which also operate as policy makers that contribute a policy for the domain represented by the context property.
-
14. In a runtime environment, where components execute in a context including a set of context-specific behaviors, a method comprising:
-
receiving a reference request from a component in a first context;
determining that the reference request is for a component of a second context;
determining a first set of context-specific behaviors to enforce on cross-context requests made by the component in the first context to the component in the second context;
returning to the component in the first context, a behavioral monitoring reference to the component in the second context;
receiving a cross-context service request from the component in the first context using the behavioral monitoring reference; and
determining that the cross-context service request violates a context-specific behavior contained in the determined first set of context-specific behaviors. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22)
generating a side effect upon determining that the context-specific behavior has been violated.
-
-
20. The method of claim 14, further comprising:
-
receiving a call-back reference request for the component in the second context to make call-back requests to the component in the first context;
determining a second set of context-specific behaviors to enforce on cross-context requests made by the component in the second context to the component in the first context;
returning to the component in the second context, a behavioral monitoring call-back reference to the component in the first context;
receiving a cross-context service request from the component in the second context using the behavioral monitoring call-back reference; and
determining that the cross-context service request violates a context-specific behavior contained in the determined second set of context-specific behaviors.
-
-
21. The method of claim 20 wherein the first and second sets are not equivalent.
-
22. The method of claim 21 wherein context-specific behaviors are monitored by context specific-behavioral components and a determination that a cross-context service request violates a context-specific behavior is determined through data sharing between a context-specific behavioral component in the first context and a context-specific behavioral component in the second context.
-
23. A system for executing components within an environment which includes plural policy agents that act as sinks for events triggered when components in the environment request services, the system comprising:
-
a runtime service for receiving a request for a reference to a component, for returning the reference to the component, and for associating with the reference returned, a set of policy agents; and
a runtime service for receiving a service request at the returned reference, for determining that the service request triggers an event handled by a policy agent in the set associated with the returned reference, and for invoking the policy agent to handle the triggered event. - View Dependent Claims (24, 25)
a runtime service for discovering the policy agents in the domain of a component requesting a reference, for discovering the policy agents in the domain of a component for which a reference is being requested, and for selecting the set of policy agents associated with the reference returned from the policy agents discovered in the requesting and requested domains.
-
-
25. The system of claim 23, further comprising:
a runtime service for obtaining data for a policy agent invoked to handle a triggered event, where the data obtained is from a policy agent in another domain.
Specification