IP Library Granted Patent US 7,711,919
Granted Patent B2
US 7,711,919 · App. 11/203,513 · Granted May 4, 2010

Methods and apparatus for digital data processing with mutable inheritance

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,711,919
App. No.
11/203,513
Granted
May 4, 2010
Kind
B2
Abstract

A method of automated workflow processing includes transforming an object, A1, which is of class X, into an object which is of class Y. The method includes the steps of separating existing data elements of A1 from the object itself, generating new data elements corresponding to class Y, inserting the new data elements into object A1, and computing values for the new data elements, possibly based on values of the old data elements. Other objects that referred to A1 before the transformation continue to do so afterwards. Values of data elements prior to transformation can be preserved, e.g., to facilitate review, to facilitate further transformation, and/or to facilitate back transformation.

Claims (37)

1. In an execution environment for an object-oriented program, a method of manipulating objects, comprising

instantiating an object A of class X, said instantiating step comprising

allocating memory for a header of object A

allocating memory for at least one of

one or more data elements inherited from class X and associated with object A, and

one or more method members inherited from class X and associated with object A,

allocating memory for one or more data elements inherited from of class Y which are absent from class X, and

associating those data elements with said header of object A.

2. In the execution environment of claim 1 , the further improvement comprising

defining values for said data elements inherited from class Y as a function of any of (a) one more values of data elements of object A inherited from class X, and (b) one or more default values.

3. The method of claim 2 , further comprising disassociating from said header any of said data elements inherited class X which are absent from class Y.

4. The method of claim 3 , further comprising associating the header of object A with one or more method members inherited from class Y that are absent from class X.

5. The method of claim 3 , further comprising dissociating from object A one or more method members inherited from X that are absent from class Y.

6. The method of claim 4 , wherein said object transformation request comprises a request for invocation of a method member of object A.

7. The method of claim 5 , wherein said object transformation method is a method member of object A inherited from class Y.

8. The method of claim 3 , further comprising the step of generating a copy of the data elements of object A inherited from class X and utilizing said copied data elements in the step of defining values of said data elements inherited from Y.

9. The method of claim 2 , comprising reclaiming memory for said dissociated data elements inherited from X.

10. The method of claim 5 , wherein said object transformation method is a constructor method of object A inherited from class Y.

11. The method of claim 6 , comprising identifying class Y upon invocation of a method member of object A.

12. The method of claim 3 , comprising identifying class X upon invocation of a method member of object A.

13. A method for transforming an object A of class X, which inherits data elements and method members from class X, into an object of class Y, comprising

allocating memory for one or more data elements and method members inherited from Y,

associating object A with said allocated data elements inherited from Y and with one or more method members inherited from Y, and

defining values for said allocated data elements inherited from Y as a function of any of (a) one or more values of data elements of object A inherited from class X, or (b) one or more default values, and

dissociating object A from said data elements and method members inherited from class X.

14. The method of claim 13 , comprising copying values of data elements of object A inherited from class X and utilizing said copied values in the step of defining values of the data elements inherited from Y.

15. The method of claim 14 , wherein the step of defining values comprises assigning to any data element of class Y present in class X a value associated with that data element in object A inherited from class X.

16. The method of claim 15 , wherein the step of defining values comprises assigning to any data element of class Y absent from class X, any of (a) default values or (b) values based on a function of one or more values of data elements of object A inherited from class X.

17. A method of transforming an object A of class X, which inherits one or more data elements and one or more method members from class X, into an object that is of class Y, comprising the steps of:

generating one or more data elements inherited from class Y absent from class X,

associating object A with said generated data elements inherited from class Y, and

associating object A with one or more method members inherited from Y absent from class X.

18. The method of claim 17 , further comprising defining values for said generated data elements inherited from Y as a function of any of (a) one or more values of the data elements of object A inherited from class X, or (b) one or more default values.

19. The method of claim 17 , wherein the step of associating object A with said generated data elements comprises associating a header of object A with said generated data elements inherited from Y.

20. A method of transforming an object A of class X, which inherits from class X one or more data elements and one or more method members, into an object that is of a class Y, comprising the steps of

disassociating from object A one or more data elements inherited from class X that are absent from class Y, and

disassociating from object A one or more method members inherited from class X that are absent from class Y.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2019
From: TREFLER, ALAN; HOFMANN, ANDREAS G.
To: PEGASYSTEMS INC,
Reel/Frame 051340/0756 →
SECURITY INTEREST Recorded Nov 14, 2019
From: PEGASYSTEMS INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 051016/0631 →