| US 7,610,316 B2 | ||
| Extensible architecture for versioning APIs | ||
| Bradley J. Bartz, Lynnwood, Wash. (US); Michael R. Santoro, Wallingford, Wash. (US); Christopher G. Kaler, Redmond, Wash. (US); Zachary L. Anderson, Redmond, Wash. (US); and Christopher D. Reeves, Redmond, Wash. (US) | ||
| Assigned to Microsoft Corporation, Redmond, Wash. (US) | ||
| Filed on Sep. 07, 2004, as Appl. No. 10/935,350. | ||
| Application 10/935350 is a continuation of application No. 09/717533, filed on Nov. 21, 2000, granted, now 6,842,904. | ||
| Prior Publication US 2005/0034137 A1, Feb. 10, 2005 | ||
| Int. Cl. G06F 12/00 (2006.01); G06F 17/00 (2006.01); G06F 9/44 (2006.01) | ||
| U.S. Cl. 707—203 [707/100; 717/122; 717/170; 719/328] | 10 Claims |

| 1. A client-side computer system architecture for a versioning application program interface, the system comprising:
a processor to execute computer instructions;
a computer memory storing the computer instructions, which, when executed, establish system elements comprising:
an OLE DB interface for communicating with a client application, said interface receiving a data request command from said
client application;
a first command parser operatively coupled to the OLE DB interface, said first command parser parsing said command to identify
a protocol provider;
a command dispatcher operatively coupled to the first command parser; and
a first protocol provider and a second protocol provider respectively including a first versioning application program interface
and a second versioning application program interface to receive at least one transaction request from the client application,
and at least one first data session object and at least one second data session object, respectively, the at least one first
data session object operatively coupled to the first versioning application program interface to receive at least one transaction
request from the first versioning application program interface and the at least one second data session object operatively
coupled to the second versioning application program interface to receive at least one transaction request from the second
versioning application program interface, the first protocol provider and the second protocol provider operatively coupled
to the command dispatcher, the first protocol provider and the second protocol provider including a second command parser
and a third command parser respectively, the second command parser and the third command parser parsing at least a portion
of said command, the first protocol provider and the second protocol provider communicatively coupled to a first version store
and a second version store respectively, the first version store and the second version store located in at least one server;
wherein the command dispatcher receives search results in response to the data request command, the search results provided
by the first and second protocol providers in the form of one or more rowsets, the command dispatcher aggregating the one
or more rowsets received from the first protocol provider and the second protocol provider into a dispatcher rowset, the dispatcher
rowset forwarded to the client application; and
a computer monitor which displays the dispatcher rowset via the client application.
|