IP Library Granted Patent US 7,721,005
Granted Patent B2
US 7,721,005 · App. 11/307,022 · Granted May 18, 2010

Data bus between middleware layers

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,721,005
App. No.
11/307,022
Granted
May 18, 2010
Kind
B2
Abstract

A system and method is introduced that integrates middleware components without canonicalization of data at runtime. An interface receives inputs identifying at least a first and second middleware to be made interoperative and a configurator configures at least an in-port and an out-port based on a binding and transport associated with the first and second middleware, respectively. Interoperation of the first and second middleware is effected via at least one communication path between the configured in-port and out-port, wherein the communication path allows an incoming message to pass from the in-port corresponding to said first middleware to the out-port corresponding to the second middleware without the creation of an intermediate canonical message.

Claims (10)

1. A method to integrate a plurality of middleware without canonicalization of data at runtime, said method implemented using in-ports and out-ports, each in-port associated with a functor object on which each in-port makes one or more calls and each functor-object providing a function for each supported data type, and each in-port facilitating communication between a specific middleware and a first interface, each out-port facilitating communication between another specific middleware and said first interface, said method comprising the steps of:

(a) receiving inputs identifying at least a first and second middleware to be made interoperative, said interoperation implemented via at least one communication path between an in-port corresponding to said first middleware and an out-port corresponding to said second middleware;

(b) receiving an incoming message from said first middleware via said in-port corresponding to said first middleware;

(c) in case of no intermediaries present between said in-port and said out-port, providing said in-port with access to a functor object to make a sequence of calls, said functor object associated with said out-port and supporting a function for a plurality of supported data types; said in-port parsing data elements of said incoming message and calling a supported function on said functor object; and said functor object facilitating passage of data from said in-port corresponding to said first middleware to said out-port corresponding to said second middleware; and

in case of at least one intermediary present between said in-port and said out-port: providing said in-port with access to a first functor object to make a sequence of calls, said first functor object associated with said intermediary and supporting a first function for a plurality of supported data types, said in-port parsing data elements of said incoming message and calling a supported function on said first functor object. providing said intermediary with a second functor object to make a sequence of calls, said second functor object associated with said out-port and supporting a second function for a plurality of supported data types; said in-port parsing data elements of said incoming message and calling a supported function on said second functor object; and said first and second functor objects facilitating passage of data objects from the in-port corresponding to said first middleware to said out-port corresponding to the second middleware.

2. An article of manufacture comprising computer storage medium having computer readable program code that is executable by a computer to implement a method to integrate a plurality of middleware without canonicalization of data at runtime, said method implemented using in-ports and out-ports, each in-port associated with a functor object on which each in-port makes one or more calls and each functor-object providing a function for each supported data type, and each in-port facilitating communication between a specific middleware and a first interface, each out-port facilitating communication between another specific middleware and said first interface, said medium comprising:

(a) computer readable program code receiving inputs identifying at least a first and second middleware to be made interoperative, said interoperation implemented via at least one communication path between an in-port corresponding to said first middleware and an out-port corresponding to said second middleware;

(b) computer readable program code receiving an incoming message from said first middleware via said in-port corresponding to said first middleware;

(c) in case of no intermediaries present between said in-port and said out-port, computer readable program code providing said in-port with access to a functor object to make a sequence of calls, said functor object associated with said out-port and supporting a function for a plurality of supported data types; said in-port parsing data elements of said incoming message and calling a supported function on said functor object; and said functor object facilitating passage of data from said in-port corresponding to said first middleware to said out-port corresponding to said second middleware; and

in case of at least one intermediary present between said in-port and said out-port: computer readable program code providing said in-port with access to a first functor object to make a sequence of calls, said first functor object associated with said intermediary and supporting a first function for a plurality of supported data types, said in-port parsing data elements of said incoming message and calling a supported function on said first functor object, computer readable program code providing said intermediary with a second functor object to make a sequence of calls, said second functor object associated with said out-port and supporting a second function for a plurality of supported data types; said in-port parsing data elements of said incoming message and calling a supported function on said second functor object; and said first and second functor objects facilitating passage of data objects from the in-port corresponding to said first middleware to said out-port corresponding to the second middleware.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2013
From: IONA TECHNOLOGIES LIMITED
To: MICRO FOCUS IP DEVELOPMENT LIMITED
Reel/Frame 029832/0838 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2013
From: IONA TECHNOLOGIES, INC.
To: IONA TECHNOLOGIES, PLC
Reel/Frame 029833/0138 →
RE-REGISTRATION AS A PRIVATE COMPANY Recorded Sep 21, 2009
From: IONA TECHNOLOGIES, PLC
To: IONA TECHNOLOGIES LIMITED
Reel/Frame 023254/0603 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2006
From: COUSINS, PETER LAWRENCE; CARBERY, DESMOND; CONWAY, ALAN THOMAS
To: IONA TECHNOLOGIES INC.
Reel/Frame 017425/0474 →