IP Library Granted Patent US 8,606,859
Granted Patent B2
US 8,606,859 · App. 10/687,951 · Granted Dec 10, 2013

Method and system to communicate messages in a computer network

Inventor: Derek Collison (Foster City, CA)
Assignee: Tibco Software Inc.
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 8,606,859
App. No.
10/687,951
Granted
Dec 10, 2013
Kind
B2
Abstract

A method includes communicating in a computer network a first message in a publish-subscribe arrangement or a queuing arrangement, and communicating a second message in a publish-subscribe arrangement or a queuing arrangement. The second message may be derived from the first message. The publish-subscribe arrangement may include a topic to which at least one of the first and second messages is sent, and the queuing arrangement may include a queue to which at least one of the first and second messages is sent. The second message may be derived from the first message by bridging a source and a target destination. The invention extends to a machine-readable medium embodying a sequence of instructions that, when executed by a machine, cause the machine to execute the method.

Claims (34)

1. A method of communicating a message in a computer network, the method comprising:

delivering, in parallel, the message from a sender application via both a first messaging paradigm and a second messaging paradigm, wherein the message is bridged prior to being processed via either first messaging paradigm or the second messaging paradigm, and wherein the message reaches both at least one original destination and at least one bridged destination;

processing the message according to the first messaging paradigm, wherein the processing the message according to the first messaging paradigm comprises routing the message to the at least one original destination; and

processing, on a parallel path, the message according to the second messaging paradigm, wherein the processing the message according to the second messaging paradigm comprises routing the message to the at least one bridged destination associated with the at least one original destination, and wherein a bridge associates a first of the at least one original destinations with a first of the at least one bridged destination.

2. The method of claim 1 , wherein the bridge is a software bridge.

3. The method of claim 1 , wherein the at least one original destination comprises a plurality of original destinations, and the software bridge associates the plurality of original destinations with the first bridged destination.

4. The method of claim 1 , wherein the at least one bridged destination comprises a plurality of bridged destinations, and wherein the software bridge associates the first original destination with the plurality of bridged destinations.

5. The method of claim 1 , wherein a plurality of messages are routed to the first original destination, and the software bridge selects the message from the plurality of messages.

6. The method of claim 5 , wherein the processing the message according to the second messaging paradigm further comprises determining that the first bridged destination is permitted to receive the message.

7. The method of claim 1 , wherein a configuration file comprises the software bridge.

8. The method of claim 1 , wherein an administrator console comprises the software bridge.

9. The method of claim 1 , wherein the first messaging paradigm and the second messaging paradigm utilize Java messaging.

10. A non-transitory machine-readable medium embodying a sequence of instructions that, when executed by a computer, causes the computer to perform operations comprising:

delivering in parallel the message from a sender application via both a first messaging paradigm and a second messaging paradigm, wherein the message is bridged prior to being processed via either the first messaging paradigm or the second messaging paradigm, and wherein the message reaches both at least one original destination and at least one bridged destination;

processing the message according to the first messaging paradigm, wherein the processing the message according to the first messaging paradigm comprises routing the message to at least one original destination; and

processing, on a parallel path, the message according to the second messaging paradigm, wherein the processing the message according to the second messaging paradigm comprises routing the message to at least one bridged destination associated with the at least one original destination, and wherein a bridge associates a first of the at least one original destinations with a first of the at least one bridged destination.

11. The non-transitory machine-readable medium of claim 10 , wherein the first messaging paradigm comprises a topic-based publish-subscribe messaging paradigm, the sender application comprises a publishing application, the message is associated with a topic, and the processing the message according to the first messaging paradigm comprises routing the message to a publish module.

12. The non-transitory machine-readable medium of claim 11 , the operations further comprising:

aborting delivery of the message unless the at least one original destination and the at least one bridged destination are configured to receive the message.

13. The non-transitory machine-readable medium of claim 11 , wherein the processing the message according to the first messaging paradigm further comprises delivering the message to a number of subscriber applications that are registered to receive messages associated with the topic.

14. The non-transitory machine-readable medium of claim 11 , wherein the second messaging paradigm comprises a queuing messaging paradigm.

15. The non-transitory machine-readable medium of claim 10 , wherein the number of subscriber applications is zero.

16. The non-transitory machine-readable medium of claim 10 , wherein the first messaging paradigm comprises a queuing messaging paradigm and the processing the message according to the first messaging paradigm comprises routing the message to a queue module.

17. The non-transitory machine-readable medium of claim 16 , wherein the processing the message according to the first messaging paradigm further comprises delivering the message to a queue consumer.

18. The non-transitory machine-readable medium of claim 16 , wherein the second messaging paradigm is a topic-based publish-subscribe messaging paradigm.

19. A system to communicate a message in a computer network, the system comprising:

a processor;

a memory element; and

a server configured to perform operations, the operations comprising:

delivering in parallel with a bridge the message from a sender application via both a first messaging paradigm and a second messaging paradigm, wherein the message is bridged prior to being processed via either first messaging paradigm or the second messaging paradigm, and wherein the message reaches both at least one original destination and at least one bridged destination;

processing the message according to the first messaging paradigm, wherein the processing the message according to the first messaging paradigm comprises routing the message to at least one original destination; and

processing, on a parallel path, the message according to the second messaging paradigm, wherein the processing the message according to the second messaging paradigm comprises routing the message to at least one bridged destination associated with the at least one original destination, and wherein a bridge associates a first of the at least one original destinations with a first of the at least one bridged destination.

20. The system of claim 19 , wherein the bridge is a software bridge.

21. The system of claim 20 , wherein the first messaging paradigm comprises a topic-based publish-subscribe messaging paradigm, and the second messaging paradigm comprises a queuing messaging paradigm.

Assignments (15)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
CHANGE OF NAME Recorded Feb 7, 2023
From: TIBCO SOFTWARE INC.
To: CLOUD SOFTWARE GROUP, INC.
Reel/Frame 062714/0634 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
RELEASE REEL 052115 / FRAME 0318 Recorded Oct 3, 2022
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: TIBCO SOFTWARE INC.
Reel/Frame 061588/0511 →
RELEASE (REEL 034536 / FRAME 0438) Recorded Sep 30, 2022
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 061574/0963 →
RELEASE (REEL 054275 / FRAME 0975) Recorded May 7, 2021
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 056176/0398 →
SECURITY AGREEMENT Recorded Nov 2, 2020
From: TIBCO SOFTWARE INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 054275/0975 →
SECURITY AGREEMENT Recorded Mar 6, 2020
From: TIBCO SOFTWARE INC.
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 052115/0318 →
SECURITY INTEREST Recorded Dec 5, 2014
From: TIBCO SOFTWARE INC.; TIBCO KABIRA LLC; NETRICS.COM LLC
To: JPMORGAN CHASE BANK., N.A., AS COLLATERAL AGENT
Reel/Frame 034536/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2004
From: COLLISON, DEREK
To: TIBCO SOFTWARE INC.
Reel/Frame 015043/0899 →
Continuity (2)
Provisional Application 60419342 · Oct 17, 2002
Related Publication 20040139166A1 · Jul 15, 2004