Maintaining multiple valid concurrent serialized object versions
First Claim
1. A method of enabling multiple valid versions of serialized objects to be maintained concurrently, comprising steps of:
- determining a serialized object to be deserialized;
determining a version of the serialized object; and
programmatically consulting a mapping to determine whether the serialized object'"'"'s version is identical to a particular version of code to be used for the deserialization, and if not, whether the serialized object'"'"'s version is compatible with the particular version.
3 Assignments
0 Petitions
Accused Products
Abstract
Techniques are disclosed for concurrently maintaining serialized objects that were created from more than one version of a class definition. According to preferred embodiments, a component maps and enforces multiple valid stream-unique version identifiers (“SUIDs”) for a collection of class definitions (such as the classes of a software product that is undergoing change from one version to another). This component programmatically detects when an object'"'"'s SUID value does not match the code attempting to deserialize the object, and then programmatically determines whether the object is compatible with the code even though the SUID values do not match. Preferably, this determination is made by consulting a stored mapping, in which the SUIDs of compatible versions have been recorded.
50 Citations
19 Claims
-
1. A method of enabling multiple valid versions of serialized objects to be maintained concurrently, comprising steps of:
-
determining a serialized object to be deserialized;
determining a version of the serialized object; and
programmatically consulting a mapping to determine whether the serialized object'"'"'s version is identical to a particular version of code to be used for the deserialization, and if not, whether the serialized object'"'"'s version is compatible with the particular version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for enabling multiple valid versions of serialized objects to be maintained concurrently, comprising:
-
a serialized object to be deserialized;
means for determining a version of the serialized object; and
means for programmatically consulting a mapping to determine whether the serialized object'"'"'s version is identical to a particular version of code to be used for the deserialization, and if not, whether the serialized object'"'"'s version is compatible with the particular version. - View Dependent Claims (10, 11, 12)
-
-
13. A computer program product for enabling multiple valid versions of serialized objects to be maintained concurrently, the computer program product embodied on one or more computer-readable media and comprising:
-
computer-readable program code means for determining a serialized object to be deserialized;
computer-readable program code means for determining a version of the serialized object; and
computer-readable program code means for programmatically consulting a mapping to determine whether the serialized object'"'"'s version is identical to a particular version of code to be used for the deserialization, and if not, whether the serialized object'"'"'s version is compatible with the particular version. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification