IP Library › Granted Patent US 9,380,103
Granted Patent B2
US 9,380,103 · App. 14/091,713 · Granted Jun 28, 2016

Adapting legacy endpoints to modern APIs

Inventors: Nikhil Vijay Thaker (Round Rock, TX); Kamal Zamer (Austin, TX)
Assignee: eBay Inc.
H04L67/00G06Q30/0633H04L67/02
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 9,380,103
App. No.
14/091,713
Granted
Jun 28, 2016
Kind
B2
Abstract

Example methods and systems are directed to adapting legacy endpoints to modern application protocol interfaces (APIs). A legacy endpoint may provide a powerful and complex API. A modern application may desire access to the legacy endpoint. One or more layers may be added between the modern application and the legacy endpoint. Each layer may provide a different API. These layers of APIs may transform the interface from a powerful and complex interface to a more limited but simpler and easier to use interface. In some example embodiments, a proxy layer, an adapter layer, a facade layer, and a service layer may be used.

Claims (67)

1. A system comprising:

a memory having instructions embodied thereon;

one or more processors configured by the instructions to implement modules comprising:

a proxy module configured to:

expose service methods provided by a legacy module;

an adapter module configured to:

receive calls from a facade module;

call methods in the proxy module; and

provide desired results to the facade module;

the facade module configured to:

receive desired results from the adapter module;

modify the desired results to conform to a format desired by a REST service module;

the REST service module configured to:

provide an application protocol interface;

receive calls conforming with the application protocol interface;

determine the correct methods in the facade module to call based on the calls;

call the correct methods in the facade module; and

respond to the calls with a result from correct methods in the facade module.

2. The system of claim 1 , wherein the one or more processors are further configured to implement the legacy module configured to provide the service methods.

3. The system of claim 2 , wherein the adapter module is further configured to determine one or more correct methods in the proxy module to call to provide the desired results; and wherein the calling of methods in the proxy module includes calling the one or more correct methods in the proxy module.

4. The system of claim 3 , wherein the proxy module is configured to hide methods provided by the legacy module other than the service methods.

5. The system of claim 3 , wherein the calls conforming with the application protocol interface are HTTP calls.

6. A non-transitory machine-readable medium having instructions embodied thereon which, when executed by one or more processors of a machine, cause the machine to implement modules comprising:

a facade module;

a REST service module;

a proxy module configured to perform operations comprising:

expose service methods provided by a legacy module; and

an adapter module configured to perform operations comprising:

receive calls from the facade module;

call methods in the proxy module; and

provide desired results to the facade module; wherein

the facade module is configured to perform operations comprising:

receive desired results from the adapter module;

modify the desired results to conform to a format desired by the REST service module; and

the REST service module is configured to perform operations comprising:

provide an application protocol interface;

receive calls conforming with the application protocol interface;

determine the correct methods in the facade module to call based on the calls;

call the correct methods in the facade module; and

respond to the calls with a result from correct methods in the facade module.

7. The non-transitory machine-readable medium of claim 6 , wherein the machine is further configured to implement the legacy module.

8. The non-transitory machine-readable medium of claim 7 , wherein the adapter module is further configured to determine one or more correct methods in the proxy module to call to provide the desired results; and wherein the calling of methods in the proxy module includes calling the one or more correct methods in the proxy module.

9. The system of claim 8 , wherein the proxy module is configured to hide methods provided by the legacy module other than the service methods.

10. The system of claim 8 , wherein the calls conforming with the application protocol interface are HTTP calls.

11. A method comprising:

implementing, by one or more processors of a machine, software modules comprising:

a facade module;

a REST service module;

a proxy module configured to perform operations comprising:

expose service methods provided by a legacy module; and

an adapter module configured to perform operations comprising:

receive calls from the facade module;

call methods in the proxy module; and

provide desired results to the facade module; wherein

the facade module is configured to perform operations comprising:

receive desired results from the adapter module;

modify the desired results to conform to a format desired by the REST service module; and

the REST service module is configured to perform operations comprising:

provide an application protocol interface;

receive calls conforming with the application protocol interface;

determine the correct methods in the facade module to call based on the calls;

call the correct methods in the facade module; and

respond to the calls with a result from correct methods in the facade module.

12. The method of claim 11 , wherein the modules further comprise the legacy module.

13. The method of claim 12 , wherein the adapter module is further configured to determine one or more correct methods in the proxy module to call to provide the desired results; and wherein the calling of methods in the proxy module includes calling the one or more correct methods in the proxy module.

14. The method of claim 13 , wherein the proxy module is configured to hide methods provided by the legacy module other than the service methods.

15. The method of claim 13 , wherein the calls conforming with the application protocol interface are HTTP calls.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2015
From: THAKER, NIKHIL VIJAY
To: EBAY, INC.
Reel/Frame 036492/0810 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 27, 2013
From: ZAMER, KAMAL
To: EBAY INC.
Reel/Frame 031685/0182 →
Continuity (2)
Provisional Application 61840192 · Jun 27, 2013
Related Publication 20150006318A1 · Jan 1, 2015