Patent ID: 8087031

Claim:
A non-transitory machine readable medium comprising a set of instructions which, when executed by one or more processors, causes the one or more processors to perform the following operations: instantiate an object in a first isolated execution context to obtain a first instantiated object, wherein the first instantiated object is owned by a first application that executes in the first isolated execution context; associate the first instantiated object with the first isolated execution context by assigning a first identifier for the first isolated execution context to the first instantiated object; receive, from the first application, a request to transfer ownership of the first instantiated object from the first application to a second application that executes in a second isolated execution context; make a first determination that the first instantiated object is defined as a member of a transferrable class; based on the first determination: make a second determination that the first instantiated object is a mutable object that may be changed after instantiation; based on the second determination and the request from the first application to transfer ownership: transfer ownership of the first instantiated object from the first application to the second application by assigning a second identifier for the second isolated execution context to the first instantiated object, thereby rendering the first instantiated object accessible to the second application, wherein the first instantiated object is a single instance, wherein the single instance is accessible to the first isolated execution context when the first instantiated object is owned by the first application, wherein the single instance is accessible to the second isolated execution context when the first instantiated object is owned by the second application, and wherein the second application is isolated from the first application by a firewall, wherein the firewall enforces a requirement that only an application having a same isolated execution context identifier as the first instantiated object is able to access the first instantiated object.