IP Library Granted Patent US 7,185,105
Granted Patent B2
US 7,185,105 · App. 09/918,350 · Granted Feb 27, 2007

Application messaging system with flexible message header structure

Assignee: BEA Systems, 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 7,185,105
App. No.
09/918,350
Granted
Feb 27, 2007
Kind
B2
Abstract

The Flexible Message Header (FMH) is a typed modular message structure comprising one or more Typed Container Modules (TCM)—stateful message modules with a compact header (Typed Container Header, TCH), a user definable payload (Typed Container Body, TCB), and a set of payload-specific callback to handle the lifecycle of the module at the different state such as creation, preparation, manipulation, resizing, transferring, and deletion. A single message comprises a small header with various numbers of TCMs. The integrity of the entire message is not affected by dynamically modifying, adding or removing TCM from the message. Major message content change can be achieved by either adding a TCM or swapping the TCM with different TCM. Minor message content change can be achieved by either modifying or expanding the TCM directly within the message. New features can be supported by adding new TCM and new code to process the new TCM.

Claims (25)

1. A system for passing messages from a first application to a second application in a distributed application server comprising:

a message modulator at a first entity for modulating a message, each modulated message having a flexible message header and a plurality of typed container modules, wherein the modulating a message includes creating the flexible message header and the plurality of typed container modules;

a message receiver at a second entity for demodulating said typed container modules to regenerate said message; and

wherein said flexible message header operates in an edit mode for editing and modulating a message, and in a storage mode for storing a message, wherein in said edit mode, each typed container module, except those containing user data, is prefixed with an attachment unit which comprises pointers to point to the next typed container module and the previous typed container module, and wherein in said storage mode the attachment unit is removed from the typed container modules.

2. The system of claim 1 wherein said typed container modules include a typed container header portion defining the type and length of the typed container module header, and,

a typed container body portion containing a portion of information.

3. The system of claim 1 wherein one of said typed container modules includes a user data portion.

4. The system of claim 1 wherein said message receiver demodulates only a subset of said typed container modules to create said message.

5. The system of claim 1 wherein said typed container modules are linked to each other by pointers.

6. The system of claim 1 wherein said typed container modules are linked to said flexible message header by pointers.

7. The system of claim 1 wherein the message header part of the flexible message header comprises an attachment unit for linking to said typed container modules.

8. The system of claim 1 , wherein in said storage mode, the message is stored in one contiguous memory space and all of the typed container modules stored without their pointer set.

9. A method of messaging between applications in a distributed application system, comprising the steps of:

modulating a message, each modulated message having a flexible message header and a plurality of typed container modules, wherein the modulating a message includes creating the flexible message header and the plurality of typed container modules;

demodulating said typed container modules to create a message; and

wherein said flexible message header operates in an edit mode for editing and modulating a message, and in a storage mode for storing a message, wherein in said edit mode, each typed container module, except those containing user data, is prefixed with an attachment unit which comprises pointers to point to the next typed container module and the previous typed container module, and wherein in said storage mode the attachment unit is removed from the typed container modules.

10. The method of claim 9 wherein said typed container modules include:

a typed container header portion defining the type and length of the typed container module header; and,

a typed container body portion containing a portion of information.

11. The method of claim 9 wherein one of said typed container modules includes a user data portion.

12. The method of claim 9 wherein said message receiver demodulates only a subset of said typed container modules to create said message.

13. The method of claim 9 wherein said typed container modules are linked to each other by pointers.

14. The method of claim 9 wherein said typed container modules are linked to said flexible message header by pointers.

15. The method of claim 9 wherein the message header part of the flexible message header comprises an attachment unit for linking to said typed container modules.

16. The method of claim 9 , wherein in said storage mode, the message is stored in one contiguous memory space and all of the typed container modules stored without their pointer set.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2010
From: BEA SYSTEMS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025192/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2002
From: CHANG, SHEAN-GUANG; WELLS, JOHN R.; FELTS, STEPHEN
To: BEA SYSTEMS, INC.
Reel/Frame 012423/0639 →
Continuity (2)
Provisional Application 6029019700 · May 11, 2001
Related Publication 20020186692A1 · Dec 12, 2002