Globally unique identification of directory server changelog records
First Claim
1. A method comprising:
- receiving, by a computer system from a client, a first query for one or more changelog records that identify a change made to a base directory entry maintained by a directory server of a plurality of directory servers from which the changelog record is received, wherein the one or more changelog records are maintained by the plurality of directory servers, wherein each directory server is associated with a different proprietary changelog format, and wherein each directory server is associated with a changelog adapter in a plurality of changelog adapters, the changelog adapter virtualizing changelog records received from the directory server such that the virtualized changelog records are formatted according to a standard changelog format, wherein each virtualized changelog record includes a change type attribute identifying a type of the change made to the base directory entry, and an entry identification attribute identifying the base directory entry;
for each changelog adapter in the plurality of changelog adapters;
generating, by the computer system based on the first query, a second query specific to the directory server associated with the changelog adapter;
sending, by the computer system, the second query to the changelog adapter;
enabling generation of a virtualized changelog record by the changelog adapter;
receiving, by the computer system, the virtualized changelog record from the changelog adapter in response to the second query;
generating, by the computer system, a changelog cookie for the virtualized changelog record, the changelog cookie uniquely identifying the virtualized changelog record across the plurality of directory servers; and
providing the virtualized changelog record to the client;
receiving, from the client, a third query for a changelog state of the plurality of directory servers;
for each changelog adapter in the plurality of changelog adapters;
generating, based on the third query, a fourth query requesting a latest changelog number of the directory server associated with the changelog adapter;
sending the fourth query to the changelog adapter; and
receiving, in response to the fourth query, the latest changelog number;
generating a latest changelog cookie based on the latest changelog numbers received from the plurality of changelog adapters and names of the changelog adapters; and
sending the latest changelog cookie to the client.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for providing a consolidated view of directory changes across different directory servers. In one set of embodiments, a changelog record can be received from a directory server, where the directory server is associated with a proprietary changelog format, and where the changelog record is formatted according to the proprietary changelog format. The received changelog record can then be translated into a virtualized changelog record that is formatted according to a standard changelog format, and the virtualized changelog record can be sent to a consuming client. In a further set of embodiments, a “changelog cookie” can be generated for a virtualized changelog record prior to sending the record to a client. In various embodiments, the changelog cookie can act as a globally unique identifier—i.e., an identifier that distinguishes the virtualized changelog record from other virtualized changelog records.
11 Citations
16 Claims
-
1. A method comprising:
-
receiving, by a computer system from a client, a first query for one or more changelog records that identify a change made to a base directory entry maintained by a directory server of a plurality of directory servers from which the changelog record is received, wherein the one or more changelog records are maintained by the plurality of directory servers, wherein each directory server is associated with a different proprietary changelog format, and wherein each directory server is associated with a changelog adapter in a plurality of changelog adapters, the changelog adapter virtualizing changelog records received from the directory server such that the virtualized changelog records are formatted according to a standard changelog format, wherein each virtualized changelog record includes a change type attribute identifying a type of the change made to the base directory entry, and an entry identification attribute identifying the base directory entry; for each changelog adapter in the plurality of changelog adapters; generating, by the computer system based on the first query, a second query specific to the directory server associated with the changelog adapter; sending, by the computer system, the second query to the changelog adapter; enabling generation of a virtualized changelog record by the changelog adapter; receiving, by the computer system, the virtualized changelog record from the changelog adapter in response to the second query; generating, by the computer system, a changelog cookie for the virtualized changelog record, the changelog cookie uniquely identifying the virtualized changelog record across the plurality of directory servers; and providing the virtualized changelog record to the client; receiving, from the client, a third query for a changelog state of the plurality of directory servers; for each changelog adapter in the plurality of changelog adapters; generating, based on the third query, a fourth query requesting a latest changelog number of the directory server associated with the changelog adapter; sending the fourth query to the changelog adapter; and receiving, in response to the fourth query, the latest changelog number; generating a latest changelog cookie based on the latest changelog numbers received from the plurality of changelog adapters and names of the changelog adapters; and sending the latest changelog cookie to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer readable medium having stored thereon program code executable by a processor, the program code comprising:
-
code that causes the processor to receive, from a client, a first query for one or more changelog records that identify a change made to a base directory entry maintained by a directory server of a plurality of directory servers from which the changelog record is received, wherein the one or more changelog records are maintained by the plurality of directory servers, wherein each directory server is associated with a different proprietary changelog format, and wherein each directory server is associated with a changelog adapter in a plurality of changelog adapters, the changelog adapter virtualizing changelog records received from the directory server such that the virtualized changelog records are formatted according to a standard changelog format, wherein each virtualized changelog record includes a change type attribute identifying a type of the change made to the base directory entry, and an entry identification attribute identifying the base directory entry; for each changelog adapter in the plurality of changelog adapters; code that causes the processor to generate, based on the first query, a second query specific to the directory server associated with the changelog adapter; code that causes the processor to send the second query to the changelog adapter; code that causes the processor to enable generation of a virtualized changelog record by the changelog adapter; code that causes the processor to receive the virtualized changelog record from the changelog adapter in response to the second query; code that causes the processor to generate a changelog cookie for the virtualized changelog record, the changelog cookie uniquely identifying the virtualized changelog record across the plurality of directory servers; and code that causes the processor to provide the virtualized changelog record to the client; code that causes the processor to receive, from the client, a third query for a changelog state of the plurality of directory servers; for each changelog adapter in the plurality of changelog adapters; code that causes the processor to generate, based on the third query, a fourth query requesting a latest changelog number of the directory server associated with the changelog adapter; code that causes the processor to send the fourth query to the changelog adapter; and code that causes the processor to receive, in response to the fourth query, the latest changelog number; code that causes the processor to generate a latest changelog cookie based on the latest changelog numbers received from the plurality of changelog adapters and names of the changelog adapters; and code that causes the processor to send the latest changelog cookie to the client. - View Dependent Claims (12, 13)
-
-
14. A system comprising:
a central processing unit that; receives, from a client, a first query for one or more changelog records that identify a change made to a base directory entry maintained by a directory server of a plurality of directory servers from which the changelog record is received, wherein the one or more changelog records are maintained by the plurality of directory servers, wherein each directory server is associated with a different proprietary changelog format, and wherein each directory server is associated with a changelog adapter in a plurality of changelog adapters, the changelog adapter virtualizing changelog records received from the directory server such that the virtualized changelog records are formatted according to a standard changelog format, wherein each virtualized changelog record includes a change type attribute identifying a type of the change made to the base directory entry, and an entry identification attribute identifying the base directory entry; for each changelog adapter in the plurality of changelog adapters; generates, based on the first query, a second query specific to the directory server associated with the changelog adapter; sends the second query to the changelog adapter; enables generation of a virtualized changelog record by the changelog adapter; receives the virtualized changelog record from the changelog adapter in response to the second query; generates a changelog cookie for the virtualized changelog record, the changelog cookie uniquely identifying the virtualized changelog record across the plurality of directory servers; and provides the virtualized changelog record to the client; receives, from the client, a third query for a changelog state of the plurality of directory servers; for each changelog adapter in the plurality of changelog adapters; generates, based on the third query, a fourth query requesting a latest changelog number of the directory server associated with the changelog adapter; sends the fourth query to the changelog adapter; and receives, in response to the fourth query, the latest changelog number; generates a latest changelog cookie based on the latest changelog numbers received from the plurality of changelog adapters and names of the changelog adapters; and sends the latest changelog cookie to the client. - View Dependent Claims (15, 16)
Specification