Systems and methods for an extensible software proxy
First Claim
1. A computer implemented method for a proxy object to communicate with an external entity wherein the proxy object has an implementation class and is an abstraction of the external entity, said method comprising:
- invoking a first function on the external entity via the proxy object; and
dynamically determining whether the first function invocation is proper based on metadata derived from a proxy object definition;
wherein the proxy object comprises;
function interfaces and callback interfaces declared by proxy object definitions;
a proxy object implementation that includes built-in functions for initiating interaction with the external entity, built-in callbacks for handling asynchronous events from the external entity, and an invoke function for handling invocations to function interfaces that do not have a corresponding built-in function;
wherein the first function does not have a corresponding built-in function in the proxy object implementation;
wherein the invoking the first function on the external entity comprises invoking the invoke function of the proxy object implementation;
wherein the abstraction provides uniform access to the external entity;
registering the proxy object with an asynchronous event router, wherein the asynchronous event router receives and routes the asynchronous events to an appropriate proxy object;
wherein the external entity is a web service software application comprising a plurality of asynchronous functions, and the proxy object exchanges messages with the external entity over a network and via the asynchronous event router.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for creating a proxy object capable of communication with an external entity, comprising specifying a proxy object definition for the proxy object wherein the proxy object definition defines a first function for communicating with the external entity, specifying at least one implementation class for the proxy object definition, wherein the at least one implementation class does not implement the first function, and wherein the at least one implementation class includes functionality to support one of: proxy object design, software compilation and software execution.
210 Citations
19 Claims
-
1. A computer implemented method for a proxy object to communicate with an external entity wherein the proxy object has an implementation class and is an abstraction of the external entity, said method comprising:
-
invoking a first function on the external entity via the proxy object; and
dynamically determining whether the first function invocation is proper based on metadata derived from a proxy object definition;wherein the proxy object comprises; function interfaces and callback interfaces declared by proxy object definitions; a proxy object implementation that includes built-in functions for initiating interaction with the external entity, built-in callbacks for handling asynchronous events from the external entity, and an invoke function for handling invocations to function interfaces that do not have a corresponding built-in function; wherein the first function does not have a corresponding built-in function in the proxy object implementation; wherein the invoking the first function on the external entity comprises invoking the invoke function of the proxy object implementation; wherein the abstraction provides uniform access to the external entity; registering the proxy object with an asynchronous event router, wherein the asynchronous event router receives and routes the asynchronous events to an appropriate proxy object; wherein the external entity is a web service software application comprising a plurality of asynchronous functions, and the proxy object exchanges messages with the external entity over a network and via the asynchronous event router. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for an application to communicate with an external entity, comprising:
-
a processor; a computer readable medium storing instructions that when executed by the processor cause the system to function as; an asynchronous event router configured to accept asynchronous events from the external entity and forward them to one of;
the application and a proxy object;the application configured to invoke a function on the proxy object and configured to accept asynchronous events from the asynchronous event router; the proxy object configured to accept asynchronous events from the asynchronous event router and invoke the function on the external entity; wherein when the function is not defined by the proxy object, the proxy object is configured to dynamically determine whether the function invocation is proper based on the metadata; wherein the proxy object is an abstraction of the external entity and provides uniform access to the external entity and comprises; function interfaces and callback interfaces declared by proxy object definitions; and a proxy object implementation that includes built-in functions for initiating interaction with the external entity, built-in callbacks for handling asynchronous events from the external entity, and an invoke function for handling invocations to function interfaces that do not have a corresponding built-in function; wherein the external entity is a web service software application comprising a plurality of asynchronous functions, and the proxy object exchanges messages with the external entity over a network and via the asynchronous event router; and wherein the application is further configured to invoke the function on the proxy object by invoking the invoke function of the proxy object implementation. - View Dependent Claims (10, 11)
-
-
12. A non-transitory machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
-
invoke a first function on an external entity via a proxy object, wherein the first function is not defined by the implementation class, wherein the proxy object has an implementation class and is an abstraction of the external entity; and dynamically determine whether the first function invocation is proper based on metadata derived from a proxy object definition; wherein the proxy object comprises; function interfaces and callback interfaces declared by proxy object definitions; a proxy object implementation that includes built-in functions for initiating interaction with the external entity, built-in callbacks for handling asynchronous events from the external entity, and an invoke function for handling invocations to function interfaces that do not have a corresponding built-in function; wherein the first function does not have a corresponding built-in function in the proxy object implementation; wherein the invoking the first function on the external entity comprises invoking the invoke function of the proxy object implementation; wherein the abstraction provides uniform access to the external entity; register the proxy object with an asynchronous event router, wherein the asynchronous event router receives and routes the asynchronous events to an appropriate proxy object; and wherein the external entity is a web service software application comprising a plurality of asynchronous functions, and the proxy object exchanges messages with the external entity over a network and via the asynchronous event router. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
Specification