Method and apparatus for dynamically brokering object messages among object models
Abstract
The present invention dynamically brokers object messages between object models. A mediating component provides a bridge between object models such that messages can be transmitted in either direction between object models. The mediating component can be resident on a client machine, a server machine, or both. The mediating component can be used as a bridge between two instances of the same object model running on different machines. Thus, network communication is made possible for objects of an object model that otherwise lacks a networking capability. A client object's message is forwarded to a server object. The mediating component performs any necessary translation of arguments or format of the message. In addition, the mediating component translates a server object's response.
Claims
exact text as granted — not AI-modified1 . A method of dynamically communicating an object message between a client and a server comprising the steps of:
intercepting a message generated by said client in a first object model; examining a second object model for interface information for said server; using the interface information to generate a translated message for said server; and forwarding said translated message to said server.
2 . The method of claim 1 further comprising the step of transmitting a response from said server to said client.
3 . The method of claim 1 further comprising the steps of:
said client sending a query to determine if said server is able to respond to said message; and
responding affirmatively to said query regardless of whether said server is able to respond to said message.
4 . The method of claim 1 wherein said step of mapping further comprises the steps of:
creating a proxy object;
creating a stub object; and
creating an association between said proxy object and said stub object.
5 . The method of claim 4 further comprising the step of creating an association between said client and said proxy object.
6 . The method of claim 4 further comprising the step of creating an association between said server and said stub object.
7 . The method of claim 4 further comprising the step of creating an association between said server and said proxy object.
8 . The method of claim 4 further comprising the step of creating an association between said client and said stub object.
9 . The method of claim 1 wherein said message includes an operation and a plurality of arguments, said step of generating further comprises the steps of:
translating said operation for said server,
translating said plurality of arguments for said server; and
generating a translated message using a message protocol of said server.
10 . The method of claim 9 wherein said step of translating said arguments further comprises the steps of:
determining the expected number and type of arguments of said server;
determining whether an expected argument type is different than an argument type; and
translating one of said plurality of arguments to an expected argument type when its type is different than said expected argument type.
11 . The method of claim 2 wherein said step of transmitting further comprises the steps of:
determining the expected type of said response;
determining whether said type of said response is different than said expected type;
translating said response from said type to said expected type when said type is different than said expected type;
generating a translated response using a message protocol of said client; and
transmitting, using said mapping, said translated response to said client.
12 . An article of manufacture comprising:
a non-transitory computer usable medium having computer readable program code embodied therein for dynamically handling an object message between a client and a server, the computer readable program code in said article of manufacture comprising: computer readable program code configured to cause a computer to intercept a message generated by said client in a first object model; computer readable program code configured to cause a computer to examine a second object model for interface information for said server; computer readable program code configured to cause a computer to use the interface information to generate a translated message for said server; and computer readable program code configured to cause a computer to forward said translated message to said server.
13 . The article of manufacture of claim 12 further comprising:
computer readable program code configured to cause a computer to send a query to determine if said server is able to respond to said message; and
computer readable program code configured to cause a computer to respond affirmatively to said query regardless of whether said server is able to respond to said message.
14 . The article of manufacture of claim 12 wherein said program code configured to cause a computer to generate a map of said client to said sever further comprises:
computer readable program code configured to cause a computer to create a proxy object;
computer readable program code configured to cause a computer to create a stub object; and
computer readable program code configured to cause a computer to create an association between said proxy object and said stub object.
15 . The article of manufacture of claim 14 further comprising computer readable program code configured to cause a computer to create an association between said client and said proxy object.
16 . The article of manufacture of claim 14 further comprising computer readable program code configured to cause a computer to create an association between said server and said stub object.
17 . The article of manufacture of claim 14 further comprising computer readable program code configured to cause a computer to create in association between said server and said proxy object.
18 . The article of manufacture of claim 14 further comprising computer readable program code configured to cause a computer to create an association between said client and said stub object.
19 . The article of manufacture of claim 12 wherein said message includes an operation and a plurality of arguments, said program code configured to cause a computer to generate a translated message further comprises:
computer readable program code configured to cause a computer to translate said operation for said server;
computer readable program code configured to cause a computer to translate said plurality of arguments for said server; and computer readable program code configured to cause a computer to generate a translated message using a message protocol of said server.
20 . The article of manufacture of claim 19 wherein said program code configured to cause a computer to translate said arguments further comprises:
computer readable program code configured to cause a computer to determine the expected number and type of arguments of said server;
a computer readable program code configured to cause a computer to determine whether an expected argument type is different than an argument type; and
computer readable program code configured to cause a computer to translate one of said plurality of arguments to an expected argument type when its type is different than said expected argument type.
21 . The article of manufacture of claim 12 wherein said program code configured to cause a computer to transmit said response further comprises the steps of:
computer readable program code configured to cause a computer to determine the expected type of said response;
computer readable program code configured to cause a computer to determine whether said type of said response is different than said expected type;
computer readable program code configured to cause a computer to translate said response from said type to said expected type when said type is different than said expected type;
computer readable program code configured to cause a computer to generate a translated response using a message protocol of said client;
and computer readable program code configured to cause a computer to transmit, using said mapping, said translated response to said client.
22 . (canceled)
23 . (canceled)
24 . (canceled)
25 . (canceled)
26 . (canceled)
27 . (canceled)
28 . (canceled)
29 . (canceled)
30 . (canceled)
31 . (canceled)
32 . A computer system, comprising:
a communication interface; and a processor coupled to the communication interface and configured to: intercept a message generated in a first object model; examine a second object model for interface information of a server; use the interface information to generate a translated message for said server; and forward said translated message to said server via the communication interface.Join the waitlist — get patent alerts
Track US2012278383A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.