← Back to Patent Explorer
US5524190A Expired / Lapsed US ⏱️ 0.0 years remaining

Command object logging system for restoring documents

Assignee: Apple Inc
•
Filing: 1993-06-04
•
Granted: 1996-06-04
•
Expires: 2013-06-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for automatically saving changes of a document as they occur is disclosed. An object oriented framework is used to facilitate the processing and assure document integrity throughout the processing.

Inventors

  • 👤 Arnold Schaeffer
  • 👤 Jack H. Palevich
  • 👤 David R. Anderson
  • 👤 Larry S. Rosenstein

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 14:33
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1446; G06F11/1471; G06F40/00; G06F40/10; G06F40/166; G06F40/194

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 193 words
An apparatus for modifying, in response to user open, modify and save commands, document data representing an original document, the document data being resident in a non-volatile storage, the apparatus comprising: (a) means responsive to a user open command for copying the original document data into a workspace of a volatile storage; (b) means responsive to each user modify command for creating a command object containing command data identifying a portion of the original document data in the workspace and command methods for modifying the original document data portion; (c) means responsive to each command object for executing command methods in each command object to modify the original document data portion in the workspace to create a modified document data portion in the workspace; (d) means responsive to each user modify command for storing the created command object in a log in the non-volatile storage; (e) means responsive to a user save command for overwriting the original document data in the non-volatile storage with modified document data in the workspace; and (f) means responsive to the overwriting of the original document data for erasing command objects in the log in the non-volatile storage.
Claim 2
Independent Claim 193 words
An apparatus for modifying, in response to user open, modify and save commands, document data representing an original document, the document data being resident in a non-volatile storage, the apparatus comprising: (a) means responsive to a user open command for copying the original document data into a workspace of a volatile storage; (b) means responsive to each user modify command for creating a command object containing command data identifying a portion of the original document data in the workspace and command methods for modifying the original document data portion; (c) means responsive to each command object for executing command methods in each command object to modify the original document data portion in the workspace to create a modified document data portion in the workspace; (d) means responsive to each user modify command for storing the created command object in a log in the non-volatile storage; (e) means responsive to a user save command for overwriting the original document data in the non-volatile storage with modified document data in the workspace; and (f) means responsive to the overwriting of the original document data for erasing command objects in the log in the non-volatile storage.
Claim 3
Dependent Claim 34 words
The apparatus as recited in claim 1 wherein the command object contains undo command methods for operating on the modified document data portion to restore the modified data portion to the original data portion.
Claim 4
Dependent Claim 29 words
The apparatus as recited in claim 1 wherein the command object contains redo command methods for operating on the original document data portion to regenerate the modified data portion.
Claim 5
Dependent Claim 24 words
The apparatus as recited in claim 1 further comprising means for containing the original document data and a log for storing the command objects.
Claim 6
Dependent Claim 35 words
The apparatus of claim 1 wherein the means for storing includes a queue in the volatile storage for temporarily retaining command objects before the command objects are written to the log by the storing means.
Claim 7
Dependent Claim 42 words
The apparatus of claim 5 wherein the storing means includes processing means for removing the command objects from the queue and storing the command objects to the log as a task with lower priority than a priority of a document processing task.
Claim 8
Dependent Claim 72 words
The apparatus of claim 1 further including means for restoring a document after a crash including: means for accessing the original document data in the non-volatile storage, which data was not completely overwritten by the overwriting means as a result of the crash; means for obtaining the command objects in the log; means for applying command objects obtained from the log to the means for executing command methods in each command object.
Claim 9
Dependent Claim 36 words
The apparatus of claim 7 wherein the restoring means further includes means for erasing the log after the document is restored by applying all of the command objects in the log to the original document data.
Claim 10
Independent Claim 194 words
A method for modifying, in response to user open, modify and save commands, document data representing an original document, the document data being resident in a non-volatile storage, the method comprising the steps of: (a) copying the original document data into a workspace of a volatile storage in response to a user open command; (b) creating a command object containing command data identifying a portion of the original document data in the workspace and command methods for modifying the original document data portion in the workspace in response to each user modify command; (c) executing command methods in each command object to modify the original document data portion in the workspace to create a modified document data portion in the workspace in response to each command object; and (d) storing the created command object in a leg in the non-volatile storage in response to each user modify command; (e) overwriting the original document data in the non-volatile storage with modified document data in the workspace in response to a user save command; and (f) erasing command objects in the log in the non-volatile storage in response to the overwriting of the original document data.
Claim 11
Independent Claim 194 words
A method for modifying, in response to user open, modify and save commands, document data representing an original document, the document data being resident in a non-volatile storage, the method comprising the steps of: (a) copying the original document data into a workspace of a volatile storage in response to a user open command; (b) creating a command object containing command data identifying a portion of the original document data in the workspace and command methods for modifying the original document data portion in the workspace in response to each user modify command; (c) executing command methods in each command object to modify the original document data portion in the workspace to create a modified document data portion in the workspace in response to each command object; and (d) storing the created command object in a leg in the non-volatile storage in response to each user modify command; (e) overwriting the original document data in the non-volatile storage with modified document data in the workspace in response to a user save command; and (f) erasing command objects in the log in the non-volatile storage in response to the overwriting of the original document data.
Claim 12
Dependent Claim 42 words
The method as recited in claim 9 wherein step (b) comprises the step of: (b1) creating a command object containing undo command methods for operating on the modified document data portion to restore the modified data portion to the original data portion.
Claim 13
Dependent Claim 37 words
The method as recited in claim 9 wherein step (b) comprises the step of: (b2) creating a command object containing redo command methods for operating on the original document data portion to regenerate the modified data portion.
Claim 14
Dependent Claim 30 words
The method as recited in claim 9 further comprising the step of: (g) creating a mechanism for containing the original document data and a log for storing the command objects.
Claim 15
Dependent Claim 32 words
The method of claim 9 wherein step (d) includes the step of (d.1) retaining a queue resident in the volatile storage for retaining command objects before they are written to the log.
Claim 16
Dependent Claim 34 words
The method of claim 13 wherein step (d) further includes the step of (d.2) moving the command objects from the queue to the log as a lower priority task than a document processing task.
Claim 17
Dependent Claim 66 words
The method of claim 9 further including the step of (g) restoring a document after a crash from the document data in the non-volatile storage, which data was not completely overwritten as a result of the crash by accessing the document data on the non-volatile storage, obtaining command objects from the log, and executing command methods in each obtained command object to modify the document data.
Claim 18
Dependent Claim 16 words
The method of claim 15 further including the step (h) after step (g), erasing the log.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-06-04 1999-12-04 2000-06-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-06-04 2003-12-04 2004-06-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-06-04 2007-12-04 2008-06-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag