IP Library › Granted Patent US 8,645,318
Granted Patent B2
US 8,645,318 · App. 13/875,913 · Granted Feb 4, 2014

System and method for the synchronization of a file in a cache

Inventors: David Thomas (Austin, TX); Scott Wells (Austin, TX)
Assignee: Open Text S.A.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,645,318
App. No.
13/875,913
Granted
Feb 4, 2014
Kind
B2
Abstract

The present invention provides a system and method for file synchronization. One embodiment of the system of this invention includes a software program stored on a computer readable medium. The software program can be executed by a computer processor to receive a file from a server; store the file as a cached file in a cache; determine if the cached file has been modified; and if the cached file has been modified, communicate the cached file directly to the database.

Claims (49)

1. A system comprising:

a computer processor;

a network interface operable to connect to a network;

a computer readable storage medium storing a software program executable to provide a cache manager on a client computer, the cache manager configured to:

store a file received over the network from a database server as a cached file in a local cache of the client computer;

determine that the cached file has been modified by a local application based on information indicating a change to the cached file received from an operating system of the client computer; and

communicate the modified cached file to the database server.

2. The system of claim 1 , wherein the cache manager is further configured to:

interface with the operating system to receive automatic change notifications; and

receive the information indicating the change to the cached file at the cache manager in an automatic change notification.

3. The system of claim 1 , wherein the cache manager is further configured to:

poll a file system of the operating system; and

receive the information indicating the change to the cached file in response to a poll.

4. The system of claim 3 , wherein polling the file system comprises polling the file system for file attributes of the cached file, including a timestamp.

5. The system of claim 4 , wherein the cache manager is further configured to poll the file system according to a schedule selected based on system resources of the client computer.

6. The system of claim 5 , wherein the cache manager comprises a user space application running in a background that is configured to store the modified cached file to the database without user interaction in the cache manager.

7. The system of claim 1 , wherein the cache manager is further configured to determine that a newer version of the file is available at the database server and notify a user of the client computer that the newer version of the file is available.

8. The system of claim 1 , wherein the cache manager is configured to cause the operating system to open the cached file in an application associated with a file type of the cached file.

9. A computer program product comprising a non-transitory computer readable storage medium providing computer executable program instructions executable to provide a cache manager on a client computer having an operating system, the cache manager configured to:

store a file received over a network from a database server as a cached file in a cache at the client computer;

determine that the cached file has been modified by a local application based on information indicating a change to the cached file received from the operating system; and

communicate the modified cached file to the database server.

10. The computer program product of claim 9 , wherein the cache manager is further configured to:

interface with the operating system to receive automatic change notifications; and

receive the information indicating the change to the cached file at the cache manager in an automatic change notification.

11. The computer program product of claim 9 , wherein the cache manager is further configured to:

poll a file system of the operating system by the cache manager; and

receive the information indicating the change to the cached file in response to a poll.

12. The computer program product of claim 11 , wherein polling the file system of the operating system comprises polling the file system for file attributes of the cached file, including a timestamp.

13. The computer program product of claim 12 , wherein the cache manager is further configured to poll the file system according to a schedule selected based on system resources of the client computer.

14. The computer program product of claim 9 , wherein the cache manager comprises a user space application running in a background that is configured to store the modified cached file to the database without user interaction in the cache manager.

15. The computer program product of claim 9 , wherein the cache manager is further configured to determine that a newer version of the file is available at the database server and notify a user of the client computer that the newer version of the file is available.

16. The computer program product of claim 9 , wherein the cache manager is configured to cause the operating system to open the cached file in an application associated with a file type of the cached file.

17. A method for file synchronization:

receiving a file from a database server over a network at a client computer, the client computer having an operating system with a file system;

storing, by a cache manager, the file as a cached file in a cache at the client computer;

determining, by the cache manager, that the cached file has been modified by a local application based on information indicating a change to the cached file received from the operating system; and

communicating, by the cache manager, the modified cached file to the database server.

18. The method of claim 17 , further comprising:

interfacing with the operating system to receive automatic change notifications; and

receiving the information indicating the change to the cached file at the cache manager in an automatic change notification.

19. The method of claim 17 , further comprising:

polling a file system of the operating system by the cache manager; and

receiving the information indicating the change to the cached file in response to a poll.

20. The method of claim 19 , wherein polling the file system of the operating system comprises polling the file system for file attributes of the cached file, including a timestamp.

21. The method of claim 19 , further comprising polling the file system of the operating system according to a schedule, wherein the schedule is selected based on system resources of the client computer.

22. The method of claim 17 , wherein the cache manager comprises a user space application running in a background that is configured to store the modified cached file to the database without user interaction in the cache manager.

23. The method of claim 17 , further comprising determining, by the cache manager that a newer version of the file is available at the database server and notifying a user of the client computer that the newer version of the file is available.

24. The method of claim 17 , further comprising prompting, by the cache manager, the operating system to open the cached file in an application associated with a file type of the cached file.

Assignments (11)
IP BUSINESS SALE AGREEMENT Recorded Aug 31, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 039886/0957 →
CERTIFICATE OF CONTINUANCE Recorded Aug 31, 2016
From: OT IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 039887/0059 →
CERTIFICATE OF AMALGAMATION Recorded Aug 31, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 039887/0062 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2013
From: VIGNETTE PARTNERSHIP, LP
To: OPEN TEXT S.A.
Reel/Frame 030744/0098 →
CONVERSION Recorded Jun 10, 2013
From: VIGNETTE OPERATING, LLC
To: VIGNETTE PARTNERSHIP, LP
Reel/Frame 030621/0407 →
CONVERSION Recorded Jun 8, 2013
From: VIGNETTE CORPORATION
To: VIGNETTE OPERATING, LLC
Reel/Frame 030620/0682 →
MERGER Recorded May 20, 2013
From: VIGNETTE SOFTWARE, LLC
To: VIGNETTE CORPORATION
Reel/Frame 030486/0934 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded May 13, 2013
From: VIGNETTE CORPORATION (4%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 030537/0607 →
INTELLECTUAL PROPERTY PURCHASSE AGREEMENT Recorded May 10, 2013
From: VIGNETTE LLC (96%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 030408/0151 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded May 9, 2013
From: VIGNETTE CORPORATION (96%)
To: VIGNETTE LLC
Reel/Frame 030398/0407 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2013
From: THOMAS, DAVID; WELLS, SCOTT
To: VIGNETTE CORPORATION
Reel/Frame 030344/0263 →
Continuity (5)
Continuation 13335782 · Dec 22, 2011
Continuation 12545423 · Aug 21, 2009
Continuation 11328526 · Jan 10, 2006
Division 10033242 · Dec 28, 2001
Related Publication 20130246350A1 · Sep 19, 2013