Patent ID: 7904587

Claim:
An article of manufacture comprising a non-transitory computer storage medium having computer readable program code embodied therein implementing a communication device to facilitate interoperation between a plurality of middleware, said storage medium comprising: (a) computer readable program code implementing one or more in-ports, IP 0 , . . . , IP m , each in-port associated with a middleware from said plurality of middleware, each of said in-ports defining a connection between a given middleware and an API handling a given operation call coming from said given middleware to a bus, said in-ports identifying an operation call from said middleware, and computer readable program code implementing one or more out-ports, OP 0 , . . . , OP n , each out-port associated with a middleware from said plurality of middleware, wherein ‘m’ and ‘n’ are chosen such that any of the following conditions are true: m=n, m=1 and n>1, m>1 and n=1, and m≠n, each of said out-ports defining a connection between another middleware and another API handling another operation call going from said bus to said another middleware, each of said in-port and out-port comprising a binding and a transport, said binding is at least associated with data formatting and said transport associated with at least a communications protocol or middleware; (b) computer readable program code implementing a configurator, said configurator receiving inputs based on said identified operation call and, based on said inputs, dynamically configuring at least one in-port associated with a first middleware and at least one out-port corresponding to a second middleware, wherein said computer readable program code facilitates interoperation between said first and second middleware via at least one communication path between at least one configured in-port and at least one configured out-port, said communication path allowing an incoming message to pass from said at least one configured in-port to said at least one configured out-port, and wherein said API handles said operation call by dividing said operation call into a plurality of parts without transforming the data format of at least one of said parts into a canonical format.