IP Library Patent Application 13270978
Patent Application
App. No. 13/270,978

ASYNCHRONOUS MESSAGING BUS

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 None
App. No.
13/270,978
Abstract

Techniques for event message processing are presented. Embodiments may receive an event message from a first capability. The event message may include a header and a payload. Embodiments may then parse the header of the event message to identify a topic of the event message. Embodiments also identify a tenant identifier associated with the event message. Using the topic and the tenant identifier, embodiments may determine that a second capability is to receive the event message. Accordingly, embodiments send the event message to the second capability.

Claims (53)

1 . A system, comprising:

at least one processor; and

a communication module implemented by the at least one processor and communicatively coupled to a first capability and a second capability, the communication module configured to receive an event message from the first capability, the event message including a header and a payload; and

an event message handler implemented by the at least one processor and configured to:

parse the header of the event message to identify a topic of the event message,

identify a tenant identifier associated with the event message,

determine that the second capability is to receive the event message based on the topic and the tenant identifier, and

cause the communication module to send the event message to the second capability.

2 . The system of claim 1 , further comprising:

a processor-implemented negotiation module configured to:

receive an enrollment request from a tenant to authorize the first capability to send event messages on behalf of the tenant,

send an authorization request to the first capability to determine whether the first capability agrees to send the event messages on behalf of the tenant,

receive an authorization response that indicates that the first capability agrees to send the event messages, and

send an authorization token to the first capability, the authorization token being specific to the first capability and the tenant.

3 . The system of claim 1 , wherein the event message handler identifies the tenant identifier based on an authorization token sent in the event message, the authorization token being specific to the tenant and the first capability.

4 . The system of claim 1 , wherein the event message is asynchronously distributed from the first capability and asynchronously sent to the second capability.

5 . The system of claim 1 , wherein the event message handler is configured to determine that the second capability is to receive the event message by accessing a routing data store that associates topics and tenant identifiers to capabilities.

6 . The system of claim 1 , wherein:

the communication module is further communicatively coupled to a third capability; and

the event message handler is further configured to determine that the third capability is to receive the event message, in addition to the second capability, based on the topic and the tenant identifier.

7 . The system of claim 1 , wherein the event message handler is further configured to send an HTTP response message with a status code that indicates that the event message was successfully received.

8 . A computer-implemented method, comprising:

receiving an event message from a first capability, the event message including a header and a payload;

parsing, by a processor, the header of the event message to identify a topic of the event message;

identifying, by the processor, a tenant identifier associated with the event message;

determining, by the processor, that a second capability is to receive the event message based on the topic and the tenant identifier; and

sending the event message to the second capability.

9 . The computer-implemented method of claim 8 , further comprising:

receiving an enrollment request from a tenant to authorize the first capability to send event messages on behalf of the tenant;

sending an authorization request to the capability to determine whether the first capability agrees to send the event messages on behalf of the tenant;

receiving an authorization response that indicates that the first capability agrees to send the event messages on behalf of the tenant; and

sending an authorization token to the first capability, the authorization token being specific to the first capability and the tenant.

10 . The computer-implemented method of claim 8 , wherein the identification of the tenant identifier is based on an authorization token sent in the event message, the authorization token being specific to the tenant and the first capability.

11 . The computer-implemented method of claim 8 , wherein the event message is asynchronously distributed from the first capability and asynchronously sent to the second capability.

12 . The computer-implemented method of claim 8 , wherein the determining that the second capability is to receive the event message further comprises accessing a routing data store that associates topics and tenant identifiers to capabilities.

13 . The computer-implemented method of claim 8 , further comprising determining that a third capability is to receive the event message, in addition to the second capability, based on the topic and the tenant identifier.

14 . The computer-implemented method of claim 8 , further comprising sending an HTTP response message with a status code that indicates that the event message was successfully received in response to receiving the event message.

15 . A machine-readable storage medium storing a set of instructions that, when executed by at least one processor, causes the at least one processor to perform operations comprising:

receiving an event message from a first capability, the event message including a header and a payload;

parsing the header of the event message to identify a topic of the event message;

identifying a tenant identifier associated with the event message;

determining that a second capability is to receive the event message based on the topic and the tenant identifier; and

sending the event message to the second capability.

16 . The machine-readable storage medium of claim 15 , further comprising:

receiving an enrollment request from a tenant to authorize the first capability to send event messages on behalf of the tenant;

sending an authorization request to the capability to determine whether the first capability agrees to send the event messages on behalf of the tenant;

receiving an authorization response that indicates that the first capability agrees to send the event messages on behalf of the tenant; and

sending an authorization token to the first capability, the authorization token being specific to the first capability and the tenant.

17 . The machine-readable storage medium of claim 15 , wherein the identification of the tenant identifier being based on an authorization token sent in the event message, wherein the authorization token is specific to the tenant and the first capability.

18 . The machine-readable storage medium of claim 15 , wherein the event message is asynchronously distributed from the first capability and asynchronously sent to the second capability.

19 . The machine-readable storage medium of claim 15 , wherein the determining that the second capability is to receive the event message based on the topic and the tenant identifier further includes accessing a routing data store that associates topics and tenant identifiers to capabilities.

20 . The machine-readable storage medium of claim 15 , further comprising determining that a third capability is to receive the event message, in addition to the second capability, based on the topic and the tenant identifier.

21 . The machine-readable storage medium of claim 15 , further comprising sending an HTTP response message with a status code that indicates that the event message was successfully received in response to receiving the event message.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2015
From: EBAY INC.
To: PAYPAL, INC.
Reel/Frame 036169/0774 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2011
From: SHAFI, MOHAMMED SALEEM; CARRIERE, STEVEN JEROMY; CLAY, MICHAEL
To: EBAY INC.
Reel/Frame 027314/0346 →