Patent ID: 8364817

Claim:
A method for managing a data item, comprising: receiving, by a hub, a first access request from a first engine executing on a computing device operated by a first host; sending, by the hub, the first access request to a second engine executing on a first computing device of a second host, wherein the second host owns the data item; receiving, by the hub and from the second engine, the data item and an access rule set by the second host for the first host; sending, by the hub, the first access rule and the data item to the first engine for storage, wherein the first engine grants the first host access to the data item according to the first access rule; receiving, by the hub, a state of the first engine; establishing, within the hub, a proxy engine for the first engine based on the state of the first engine; receiving, by the hub, a recall request from the second engine for the data item, wherein the computing device operated by the first host is disconnected from the hub before the recall request is received; storing, by the hub, the recall request in the proxy engine, wherein the computing device operated by the first host is reconnected to the hub after the recall request is stored; and sending, by the hub, the recall request to the first engine during a data synchronization operation between the proxy engine and the first engine, wherein the first engine deletes the data item stored on the computing device operated by the first host in response to the recall request.