Redirecting local storage to cloud storage
First Claim
1. A method of providing access to cloud storage performed by a mobile computing device, the method comprising:
- receiving a file-level access command to perform a file-level operation on a file of filesystem storage of the mobile computing device, the filesystem storage including remote storage provided by a remote storage platform and locally-cached storage provided by local storage of the mobile computing device, the file-level access command originating at a user application running on the mobile computing device, wherein receiving the file-level access command includes intercepting the file-level access command from the user application by a user application wrapper linked into the user application, the user application wrapper logically interposing between the user application and an operating system of the mobile computing device, the user application wrapper being built around the user application;
evaluating, by the user application wrapper, whether the file-level access command is directed to a pre-determined portion of the filesystem, the pre-determined portion being provided by the remote storage platform;
in response to evaluating, if the file-level access command is directed to the pre-determined portion, then performing a synchronization operation to ensure that the file is stored on local storage in synchronization with the remote storage platform, wherein performing the synchronization operation includes;
forwarding the file-level access command from the user application wrapper to a cloud storage driver executing on the mobile storage device, the cloud storage driver executing outside of the user application wrapper;
determining, by the cloud storage driver, whether the file is stored on local storage;
if the file is stored on local storage, then synchronizing the file stored on local storage with the remote storage platform, by the cloud storage driver; and
if the file is not stored on local storage, then retrieving the file from the remote storage platform via a network connection and storing the retrieved file within local storage, by the cloud storage driver; and
fulfilling the file-level access command by accessing the filesystem storage of the mobile computing device once the file is stored on local storage in synchronization with the remote storage platform, including;
forwarding the file-level access command from the user application wrapper to a local storage system driver executing on the mobile storage device, the cloud storage driver being distinct from the local storage system driver and the local storage system driver executing outside of the user application wrapper; and
providing access to the filesystem storage by the local storage system driver in accordance with the file-level access command.
7 Assignments
0 Petitions
Accused Products
Abstract
One embodiment is directed to a method of providing access to cloud storage performed by a mobile computing device. The method includes (a) receiving a file-level access command to perform a file-level operation on a file of filesystem storage of the mobile computing device, the filesystem storage including remote storage provided by a remote storage platform and locally-cached storage provided by local storage, (b) evaluating whether the file-level access command is directed to a pre-determined portion of the filesystem provided by the remote storage platform, (c) in response to evaluating, if the file-level access command is directed to the pre-determined portion, then performing a synchronization operation to ensure that the file is stored on local storage in synchronization with the remote storage platform, and (d) fulfilling the file-level access command by accessing the local storage once the file is stored on local storage in synchronization with the remote storage platform.
130 Citations
10 Claims
-
1. A method of providing access to cloud storage performed by a mobile computing device, the method comprising:
-
receiving a file-level access command to perform a file-level operation on a file of filesystem storage of the mobile computing device, the filesystem storage including remote storage provided by a remote storage platform and locally-cached storage provided by local storage of the mobile computing device, the file-level access command originating at a user application running on the mobile computing device, wherein receiving the file-level access command includes intercepting the file-level access command from the user application by a user application wrapper linked into the user application, the user application wrapper logically interposing between the user application and an operating system of the mobile computing device, the user application wrapper being built around the user application; evaluating, by the user application wrapper, whether the file-level access command is directed to a pre-determined portion of the filesystem, the pre-determined portion being provided by the remote storage platform; in response to evaluating, if the file-level access command is directed to the pre-determined portion, then performing a synchronization operation to ensure that the file is stored on local storage in synchronization with the remote storage platform, wherein performing the synchronization operation includes; forwarding the file-level access command from the user application wrapper to a cloud storage driver executing on the mobile storage device, the cloud storage driver executing outside of the user application wrapper; determining, by the cloud storage driver, whether the file is stored on local storage; if the file is stored on local storage, then synchronizing the file stored on local storage with the remote storage platform, by the cloud storage driver; and if the file is not stored on local storage, then retrieving the file from the remote storage platform via a network connection and storing the retrieved file within local storage, by the cloud storage driver; and
fulfilling the file-level access command by accessing the filesystem storage of the mobile computing device once the file is stored on local storage in synchronization with the remote storage platform, including;forwarding the file-level access command from the user application wrapper to a local storage system driver executing on the mobile storage device, the cloud storage driver being distinct from the local storage system driver and the local storage system driver executing outside of the user application wrapper; and providing access to the filesystem storage by the local storage system driver in accordance with the file-level access command. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when executed by a mobile computing device, cause the mobile computing device to perform the following operations:
-
intercepting a file-level access command to perform a file-level operation on a file of filesystem storage of the mobile computing device originating from a user application running on the mobile computing device by a user application wrapper linked into the user application, the user application wrapper logically interposing between the user application and an operating system of the mobile computing device, the user application wrapper being built around the user application, the filesystem storage including remote storage provided by a remote storage platform and locally-cached storage provided by local storage of the mobile computing device; evaluating, by the user application wrapper, whether the file-level access command is directed to a pre-determined portion of the filesystem, the pre-determined portion being provided by the remote storage platform; in response to evaluating, if the file-level access command is directed to the pre-determined portion, then causing a synchronization operation to be performed to ensure that the file is stored on local storage in synchronization with the remote storage platform by; forwarding the file-level access command from the application wrapper to a cloud storage driver executing on the mobile storage device, the cloud storage driver executing outside of the user application wrapper; determining, by the cloud storage driver, whether the file is stored on local storage; if the file is stored on local storage, then synchronizing the file stored on local storage with the remote storage platform, by the cloud storage driver; and if the file is not stored on local storage, then, by the cloud storage driver, retrieving the file from the remote storage platform via a network connection and storing the retrieved file within local storage; and fulfilling the file-level access command by accessing the filesystem storage of the mobile computing device once the file is stored on local storage in synchronization with the remote storage platform by; forwarding the file-level access command from the user application wrapper to a local storage system driver executing on the mobile storage device, the cloud storage driver being distinct from the local storage system driver and the local storage system driver executing outside of the user application wrapper; and providing access to the filesystem storage by the local storage system driver in accordance with the file-level access command. - View Dependent Claims (7, 8, 9, 10)
-
Specification