DYNAMIC PROGRAM UPDATING IN A CONTINUATION BASED RUNTIME
First Claim
1. At a computer system including a processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for dynamically updating a continuation-based program in response to one or more program changes, the method comprising:
- an act of assigning a workflow version number to a first version of a continuation-based program, the continuation-based program comprising a workflow indicating when each of the program'"'"'s activities is to be executed in a continuation-based runtime;
an act of storing the workflow version number in corresponding workflow instance state, the state indicating which workflow version number the workflow should be associated with;
an act of receiving one or more updates that are to be applied to the continuation-based program, the updates including an indication of which portions of the program are to be updated and an updated workflow version number;
an act of determining that the stored workflow version number is different than the received updated workflow version number; and
based on the determination, an act of mapping the received updates from the workflow associated with the stored workflow version number to the updated workflow associated with the updated workflow version number in a revision map.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer system assigns a workflow version number to a first version of a continuation-based program. The program includes a workflow indicating when each of the program'"'"'s activities is to be executed in a continuation-based runtime. The computer system stores the workflow version number in corresponding workflow instance state. The state indicates which workflow version number the workflow should be associated with. The computer system receives updates that are to be applied to the continuation-based program. The updates include an indication of which portions of the program are to be updated and an updated workflow version number. The system determines that the stored workflow version number is different than the received updated workflow version number and, based on the determination, maps the received updates from the workflow associated with the stored workflow version number to the updated workflow associated with the updated workflow version number in a revision map.
76 Citations
20 Claims
-
1. At a computer system including a processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for dynamically updating a continuation-based program in response to one or more program changes, the method comprising:
-
an act of assigning a workflow version number to a first version of a continuation-based program, the continuation-based program comprising a workflow indicating when each of the program'"'"'s activities is to be executed in a continuation-based runtime; an act of storing the workflow version number in corresponding workflow instance state, the state indicating which workflow version number the workflow should be associated with; an act of receiving one or more updates that are to be applied to the continuation-based program, the updates including an indication of which portions of the program are to be updated and an updated workflow version number; an act of determining that the stored workflow version number is different than the received updated workflow version number; and based on the determination, an act of mapping the received updates from the workflow associated with the stored workflow version number to the updated workflow associated with the updated workflow version number in a revision map. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer program product for implementing a method for modifying the workflow instance state of a continuation-based program, the computer program product comprising one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by one or more processors of the computing system, cause the computing system to perform the method, the method comprising:
-
an act of receiving update information indicating that a portion of state information in a continuation-based program'"'"'s workflow instance state is to be updated; and an act of updating the portion of state information in the workflow instance state with the received update information without modifying the program, such that updated versions of the workflow instance state reflect the updated information. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A computer system comprising the following:
-
one or more processors; system memory; one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by the one or more processors, causes the computing system to perform a method for dynamically updating a continuation-based program in response to one or more program changes, the method comprising the following; an act of assigning a workflow version number to a first version of a continuation-based program, the continuation-based program comprising a workflow indicating when each of the program'"'"'s activities are to be executed in a continuation-based runtime; an act of storing the workflow version number in corresponding workflow instance state, the state indicating which workflow version number the workflow should be associated with; an act of receiving one or more updates that are to be applied to the continuation-based program, the updates including an indication of which portions of the program are to be updated and an updated workflow version number; an act of determining that the stored workflow version number is different than the received updated workflow version number; and based on the determination, an act of mapping the received updates from the workflow associated with the stored workflow version number to the updated workflow associated with the updated workflow version number in a revision map, wherein the mapping includes the following; an act of adding any received update information to the continuation-based program'"'"'s current program tree; an act of applying the added update information to the program tree; an act of generating a revision map by determining one or more differences between the current program tree and the updated program tree that includes the added update information; and an act of the runtime accessing the updated program tree to perform the following; an act of extracting the generated revision map from the updated program; and an act of modifying the program'"'"'s workflow instance state according to the extracted revision map.
-
Specification