Shared persistent objects
First Claim
Patent Images
1. A computer-implemented method comprising:
- using a computer to create a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith;
storing the local instance into a memory location of the computer;
assigning an object version identifier to the local instance;
identifying, based on the object version identifier, one or more data slots from among the multiple data slots of the local instance for synchronization;
transmitting at least one of the identified one or more data slots to the main instance for initiating synchronization of a corresponding data slot of the main instance;
receiving, from the main instance in response to said transmitting, (i) a container version identifier of the main instance that is more recent than the object version identifier, and (ii) one or more main data slots, each of the received one or more main data slots having an associated main slot identifier that is more recent than the object version identifier;
updating corresponding one or more data slots of the object with the received one or more main data slots; and
revising the object version identifier to the received container version identifier.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method are disclosed for an interactive multimedia file (iMF), running on an interactive multimedia runtime (iMR), to store an object onto a computer, the method comprising creating a local instance of the object, storing the local instance into a memory location on the computer, monitoring changes to one or more data slots of the local instance, assigning a version identifier to the local instance, synchronizing the local instance with a main instance of the object, and interfacing the one or more data slots of the local instance with said iMF during execution.
80 Citations
28 Claims
-
1. A computer-implemented method comprising:
-
using a computer to create a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith; storing the local instance into a memory location of the computer; assigning an object version identifier to the local instance; identifying, based on the object version identifier, one or more data slots from among the multiple data slots of the local instance for synchronization; transmitting at least one of the identified one or more data slots to the main instance for initiating synchronization of a corresponding data slot of the main instance; receiving, from the main instance in response to said transmitting, (i) a container version identifier of the main instance that is more recent than the object version identifier, and (ii) one or more main data slots, each of the received one or more main data slots having an associated main slot identifier that is more recent than the object version identifier; updating corresponding one or more data slots of the object with the received one or more main data slots; and revising the object version identifier to the received container version identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system comprising:
-
a memory; one or more hardware processors; and a non-transitory computer-readable medium encoding instructions that, when executed by the one or more hardware processors, cause the system to perform operations comprising; creating a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith, the main instance being stored at another computer system; storing the local instance into the memory; assigning an object version identifier to the local instance, wherein the object version identifier is assigned based on a version identifier of at least one data slot from among the multiple data slots, such that the object version identifier is independent of a version identifier of at least another one data slot from among the multiple data slots; determining that the at least one data slot and the at least another one data slot have changed; updating the version identifier of the at least one data slot and the version identifier of the at least another one data slot; identifying, based on at least one of the updated object version identifiers, one or more data slots from among the multiple data slots of the local instance for synchronization; and transmitting at least one of the identified one or more data slots to the other computer system where the main instance is stored for initiating synchronization of a corresponding data slot of the main instance. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A non-transitory computer-readable medium encoding instructions that, when executed by a data processing apparatus, cause the data processing apparatus to perform operations comprising:
-
creating a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith; storing the local instance into a memory location of a computer; assigning an object version identifier to the local instance, wherein the object version identifier is assigned based on a version identifier of at least one data slot from among the multiple data slots, such that the object version identifier is independent of a version identifier of at least another one data slot from among the multiple data slots; determining that the at least one data slot and the at least another one data slot have changed; updating the version identifier of the at least one data slot and the version identifier of the at least another one data slot; identifying, based on at least one of the updated object version identifiers, one or more data slots from among the multiple data slots of the local instance for synchronization; and transmitting at least one of the identified one or more data slots to the main instance for initiating synchronization of a corresponding data slot of the main instance. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer system comprising:
-
a memory; one or more hardware processors; and a non-transitory computer-readable medium encoding instructions that, when executed by the one or more hardware processors, cause the system to perform operations comprising; creating a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith, the main instance being stored at another computer system; storing the local instance into the memory; assigning an object version identifier to the local instance; identifying, based on the object version identifier, one or more data slots from among the multiple data slots of the local instance for synchronization; transmitting at least one of the identified one or more data slots to the other computer system where the main instance is stored for initiating synchronization of a corresponding data slot of the main instance; receiving, from the other computer system where the main instance is stored, and in response to the transmitting operation, one or more main data slots, each having an associated main slot identifier that is more recent than the object version identifier; and updating corresponding one or more data slots of the object with the received one or more main data slots. - View Dependent Claims (21, 22)
-
-
23. A non-transitory computer-readable medium encoding instructions that, when executed by a data processing apparatus, cause the data processing apparatus to perform operations comprising:
-
creating a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith; storing the local instance into a memory location of a computer; assigning an object version identifier to the local instance; identifying, based on the object version identifier, one or more data slots from among the multiple data slots of the local instance for synchronization; transmitting at least one of the identified one or more data slots to the main instance for initiating synchronization of a corresponding data slot of the main instance; receiving, in response to transmission of the at least one of the identified one or more data slots to the main instance, one or more main data slots, each of the one or more main data slots having an associated main slot identifier that is more recent than the object version identifier; and updating corresponding one or more data slots of the object with the received one or more main data slots. - View Dependent Claims (24, 25)
-
-
26. A computer-implemented method comprising:
-
using a computer to create a local instance of an object including multiple data slots, the local instance having a corresponding main instance of the object associated therewith; storing the local instance into a memory location of the computer; assigning an object version identifier to the local instance, wherein the object version identifier is assigned based on a version identifier of at least one data slot from among the multiple data slots, such that the object version identifier is independent of a version identifier of at least another one data slot from among the multiple data slots; determining that the at least one data slot and the at least another one data slot have changed; updating the version identifier of the at least one data slot and the version identifier of the at least another one data slot; identifying, based on at least one of the updated object version identifiers, one or more data slots from among the multiple data slots of the local instance for synchronization; and transmitting at least one of the identified one or more data slots to the main instance for initiating synchronization of a corresponding data slot of the main instance. - View Dependent Claims (27, 28)
-
Specification