# US 8,752,066 B2 · Implementing a middleware component using factory patterns

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,752,066 B2
- Document ID: US8752066B2
- Status: Granted
- Kind: B2
- Application number: 12/623,567
- Filed: 2009-11-23
- Published: 2011-05-26
- Granted: 2014-06-10
- Earliest claimed: 2009-11-23
- Assignees: Raytheon Company
- Applicants: John J. Lipasek; Scott A. Schilling; Robert Sedlmeyer
- Inventors: John J. Lipasek; Scott A. Schilling; Robert Sedlmeyer
- Web page: https://patentgrep.com/patent/US8752066B2

## CPC

- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

In one aspect, a method to use a middleware component includes receiving a request from an application to interact with a platform using a service and using an abstract factory pattern corresponding to the service. The abstract factory pattern is associated with a first factory pattern stored in the middleware component. The method also includes determining if the first factory pattern is associated with the platform and invoking the service with the platform using the first factory pattern if the first factory pattern is associated with the platform.

## Claims

### Claim 1

A method to use a middleware component comprising service components to facilitate a plurality of services, the method comprising:
providing the service components, a service component facilitating a respective one of the plurality of services comprising a messaging service, an invocation service, a logging service and a persistence data service, each service component comprising an abstract factory pattern and a delegate configured to receive a request for a platform from an application and to invoke the abstract factory pattern;
receiving the request from the application to interact with a platform using a first service of the plurality of services;
using an abstract factory pattern stored in a first service component of the service components to encapsulate a plurality of factory patterns that enable access to more than one platform, the first service component facilitating the first service, the plurality of factory patterns comprising a first factory pattern, each of the plurality of factory patterns associated with a corresponding one platform;
determining if the first factory pattern is associated with the platform; and
invoking the first service with the platform using the first factory pattern if the first factory pattern is associated with the platform.

### Claim 2 (depends on 1)

The method of claim 1 wherein receiving the request from the application to interact with the platform using the first service comprises receiving a request from an application to interact with a platform using the messaging service.

### Claim 3 (depends on 1)

The method of claim 1 wherein receiving the request from the application to interact with the platform using the first service comprises receiving a request from an application to interact with a platform using the invocation service.

### Claim 4 (depends on 1)

The method of claim 1 wherein receiving the request from the application to interact with the platform using the first service comprises receiving a request from an application to interact with a platform using the logging service.

### Claim 5 (depends on 1)

The method of claim 1 wherein receiving the request from the application to interact with the platform using the first service comprises receiving a request from an application to interact with a platform using the persistence data service.

### Claim 6 (depends on 1)

The method of claim 1 wherein the plurality of factory patterns are configured to facilitate interaction with at least two of: JAVA® 2, Enterprise Edition (J2EE®), MICROSOFT® WINDOWS®, Common Object Request Broker Architecture (CORBA®), Sun Solaris, Linux, HP Solaris, Mac OS, and System of Systems Common Operation Environment (SOSCOE) platforms.

### Claim 7 (depends on 1)

The method of claim 1 wherein the platform is a first platform, the request is a first request and the plurality of factory patterns comprises a second factory pattern and further comprising:
receiving a second request from the application to interact with a second platform different from the first platform using the first service;
determining if the second factory pattern is associated with the second platform; and
using the first service with the second platform if the second factory pattern is associated with the second platform.

### Claim 8 (depends on 1)

The method of claim 1 wherein the abstract factory pattern is a first abstract factory pattern and the request is a first request and further comprising:
receiving a second request from the application to interact with the platform using a second service;
using a second abstract factory pattern stored in a second service component of the service components to encapsulate a second plurality of factory patterns that enable access to more than one platform, the second service component facilitating the second service, the second plurality of factory patterns comprising a second factory pattern, each of the second plurality of factory patterns associated with a corresponding one platform;
determining if the second factory pattern is associated with the platform; and
using the second service with the platform if the second factory pattern is associated with the platform.

### Claim 9

An article comprising a non-transistory machine-readable medium that stores executable instructions to invoke a first service on a platform using a middleware component comprising service components, a service component facilitating a respective one of a plurality of services comprising a messaging service, an invocation service, a logging service and a persistence data service, each service component comprising an abstract factory pattern and a delegate configured to receive a request for a platform from an application and to invoke the abstract factory pattern, the instructions causing a machine to:
receive the request from the application to interact with the platform using the first service;
use an abstract factory pattern stored in a first service component of the service components to encapsulate a plurality of factory patterns that enable access to more than one platform, the first service component facilitating the first service, the plurality of factory patterns comprising a first factory pattern, each of the plurality of factory patterns associated with a corresponding one platform;
determine if the first factory pattern is associated with the platform; and
invoke the first service with the platform using the first factory pattern if the first factory pattern is associated with the platform.

### Claim 10 (depends on 9)

The article of claim 9 wherein the instructions to receive the request from the application to interact with the platform using the first service comprises instructions to receive a request from an application to interact with a platform using one of a messaging service, an invocation service, a logging service and a persistence data service.

### Claim 11 (depends on 9)

The article of claim 9 wherein the plurality of factory patterns are configured to facilitate interaction with at least two of: of JAVA® 2, Enterprise Edition (J2EE®), MICROSOFT® WINDOWS®, Common Object Request Broker Architecture (CORBA®), Sun Solaris, Linux, HP Solaris, Mac OS, and System of Systems Common Operation Environment (SOSCOE) platforms.

### Claim 12 (depends on 9)

The article of claim 9 wherein the request is a first request and the plurality of factory patterns comprises a second factory pattern and further comprising instructions causing the machine to:
receive a second request from the application to interact with a second platform different from the first platform using the first service;
determine if the second factory pattern is associated with the second platform; and
use the first service with the second platform if the second factory pattern is associated with the second platform.

### Claim 13 (depends on 9)

The article of claim 9 wherein the abstract factory pattern is a first abstract factory pattern and the request is a first request and further comprising instructions causing a machine to:
receive a second request from the application to interact with the platform using a second service;
use a second abstract factory pattern stored in a second service component of the service components to encapsulate a second plurality of factory patterns that enable access to more than one platform, the second service component facilitating the second service, the second plurality of factory patterns comprising a second factory pattern;
determine if the second factory pattern is associated with the platform; and
use the second service with the platform if the second factory pattern is associated with the platform.

### Claim 14

An apparatus to invoke a first service on a platform, the apparatus comprising a middleware component comprising service components, each service component facilitating a respective one of a plurality of services comprising a messaging service, an invocation service, a logging service and a persistence data service, each service component comprising an abstract factor pattern and a delegate configured to receive a request for a platform from an application and to invoke the abstract factory pattern, the middleware component comprising:
circuitry configured to:
receive the request from the application to interact with the platform using the first service of the plurality of services;
use an abstract factory pattern stored in a first service component of the service components to encapsulate a plurality of factory patterns that enable access to more than one platform, the first service component facilitating the first service, the plurality of factory patterns comprising a first factory pattern, each of the plurality of factory patterns associated with a corresponding one platform;
determine if the first factory pattern is associated with the platform; and
invoke the first service with the platform using the first factory pattern if the first factory pattern is associated with the platform.

### Claim 15 (depends on 14)

The apparatus of claim 14 wherein the circuitry comprises at least one of a processor, a memory, programmable logic and logic gates.

### Claim 16 (depends on 14)

The apparatus of claim 14 wherein the circuitry to receive the request from the application to interact with the platform using the first service comprises circuitry to receive a request from an application to interact with a platform using the first service component to facilitate one of a messaging service, an invocation service, a logging service and a persistence data service.

### Claim 17 (depends on 14)

The apparatus of claim 14 wherein the plurality of factory patterns are configured to facilitate interaction with at least two of: JAVA® 2, Enterprise Edition (J2EE®), MICROSOFT® WINDOWS®, Common Object Request Broker Architecture (CORBA®), Sun Solaris, Linux, HP Solaris, Mac OS, and System of Systems Common Operation Environment (SOSCOE) platforms.

### Claim 18 (depends on 14)

The apparatus of claim 14 wherein the request is a first request and the abstract factory pattern is associated with a second factory pattern and further comprising circuitry to:
receive a second request from the application to interact with a second platform different from the first platform using the first service;
determine if the second factory pattern is associated with the second platform; and
use the first service with the second platform if the second factory pattern is associated with the second platform.

### Claim 19 (depends on 14)

The apparatus of claim 14 wherein the abstract factory pattern is a first abstract factory pattern and the request is a first request and further comprising circuitry to:
receive a second request from the application to interact with the platform using a second service;
use a second abstract factory pattern stored in a second service component of the service components to encapsulate a second plurality of factory patterns that enable access to more than one platform, the second service component facilitating the second service, the second plurality of factory patterns comprising a second factory pattern;
determine if the second factory pattern is associated with the platform; and
use the second service with the platform if the second factory pattern is associated with the platform.

### Claim 20 (depends on 14)

The apparatus of claim 14, wherein a service component to facilitate the invocation service further comprises an intercepting filter configured to provide at least one of compression or encryption to data sent to a platform.
