IP Library Granted Patent US 10,404,710
Granted Patent B2
US 10,404,710 · App. 15/085,259 · Granted Sep 3, 2019

Methods and apparatuses for providing improved directory services

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 10,404,710
App. No.
15/085,259
Granted
Sep 3, 2019
Kind
B2
Abstract

A method, apparatus and computer program product are provided for implementing an improved directory services system. An example of the method includes transmitting an access request to a directory services server, the access request comprising user credentials, receiving, in response to validation of the user credentials by the directory services server, a directory services response from the directory services server, the directory services response comprising one or more fields of directory services data generated by the directory services server, translating the directory services response to generate a generic data object, wherein the generic data object comprises one or more values derived from the one or more fields of directory service data included in the directory services response, and providing the generic data object to an application.

Claims (43)

1. A method for implementing directory services in a computer network, the method comprising:

transmitting an access request to a directory services server, the access request comprising user credentials;

receiving, in response to validation of the user credentials by the directory services server, a directory services response from the directory services server, the directory services response comprising one or more fields of directory services data generated by the directory services server;

identifying one or more values derived from the one or more fields of the directory service data included in the directory services response based on the identifiers for one or more fields of directory service data;

translating the directory services response on client side;

receiving one or more configuration files, the one or more configuration files comprising a class definition of a Plain Old Java Object, the identifiers for one or more fields of directory service data, and one or more rules for formatting the one or more fields of the directory service data for storage in the Plain Old Java Object;

wherein said translating the directory services response comprises formatting the identified one or more values for storage in the Plain Old Java Object based on the one or more rules;

generating, based at least on the class definition of the Plain Old Java Object, wherein the Plain Old Java Object comprises the one or more values derived from the one or more fields of directory service data included in the directory services response; and

providing the Plain Old Java Object to an application.

2. The method of claim 1 , wherein the application also generates the access request.

3. The method of claim 1 , wherein the directory services server is implemented according to the Lightweight Directory Access Protocol (LDAP) standard and wherein the directory services response is an LDAP response.

4. The method of claim 1 , wherein the configuration file comprises values encoded in a Yet Another Markup Language (YAML) format.

5. The method of claim 1 , further comprising storing the Plain Old Java Object in a database.

6. The method of claim 1 , wherein at least one field of the directory services response is not included in the Plain Old Java Object.

7. An apparatus for implementing directory services in a computer network, the apparatus comprising a processor coupled to a memory, wherein instructions stored within the memory configure the processor to at least:

transmit an access request to a directory services server, the access request comprising user credentials;

receive, in response to validation of the user credentials by the directory services server, a directory services response from the directory services server, the directory services response comprising one or more fields of directory services data generated by the directory services server;

identify one or more values derived from the one or more fields of the directory service data included in the directory services response based on the identifiers for the one or more fields of directory service data;

translate the directory services response on client side;

receive one or more configuration files, the one or more configuration files comprising a class definition of a Plain Old Java Object, the identifiers for one or more fields of directory service data, and one or more rules for formatting the one or more fields of the directory service data for storage in the Plain Old Java Object;

wherein said translating the directory services response comprises formatting the identified one or more values for storage in the Plain Old Java Object based on the one or more rules;

generate, based at least on the class definition of the Plain Old Java Object, wherein the Plain Old Java Object comprises the one or more values derived from the one or more fields of directory service data included in the directory services response; and

provide the Plain Old Java Object to an application.

8. The apparatus of claim 7 , wherein the application also generates the access request.

9. The apparatus of claim 7 , wherein the directory services server is implemented according to the Lightweight Directory Access Protocol (LDAP) standard and wherein the directory services response is an LDAP response.

10. The apparatus of claim 7 , wherein the configuration file comprises values encoded in a Yet Another Markup Language (YAML) format.

11. The apparatus of claim 7 , wherein the processor is further configured to store the Plain Old Java Object in a database.

12. The apparatus of claim 7 , wherein at least one field of the directory services response is not included in the Plain Old Java Object.

13. A non-transitory computer readable storage medium comprising instructions that, when executed by a processor, cause the processor to implement directory services in a computer network by at least:

transmitting an access request to a directory services server, the access request comprising user credentials;

receiving, in response to validation of the user credentials by the directory services server, a directory services response from the directory services server, the directory services response comprising one or more fields of directory services data generated by the directory services server;

identifying one or more values derived from the one or more fields of the directory service data included in the directory services response based on the identifiers for one or more fields of directory service data;

translating the directory services response on client side;

receiving one or more configuration files, the one or more configuration files comprising a class definition of a Plain Old Java Object, the identifiers for one or more fields of directory service data, and one or more rules for formatting the one or more fields of the directory service data for storage in the Plain Old Java Object;

wherein said translating the directory services response comprises formatting the identified one or more values for storage in the Plain Old Java Object based on the one or more rules;

generating, based at least on the class definition of the Plain Old Java Object, wherein the Plain Old Java Object comprises the one or more values derived from the one or more fields of directory service data included in the directory services response; and

providing the Plain Old Java Object to an application.

14. The non-transitory computer readable storage medium of claim 13 , wherein the application also generates the access request.

15. The non-transitory computer readable storage medium of claim 13 , wherein the directory services server is implemented according to the Lightweight Directory Access Protocol (LDAP) standard and wherein the directory services response is an LDAP response.

16. The method of claim 1 , wherein the Plain Old Java Object is generated and initialized with default values prior to translating the directory services response.

17. The method of claim 1 , wherein said identifying the one or more values derived from the one or more fields of the directory services data included in the directory services response based on the identifiers for one or more fields of directory service data comprises iterating through the one or more fields of directory services data included in the directory services response to determine fields identified within the one or more configuration files.

18. The method of claim 1 , wherein the one or more configuration files further comprise rules for parsing, merging, and separating one or more fields of directory service data.

19. The method of claim 1 , wherein generating the Plain Old Java Object comprises populating the Plain Old Java Object with the one or more values derived from the one or more fields of directory service data included in the directory services response at runtime.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2021
From: CHC MAX HOLDINGS, LLC
To: HEALTHSTREAM, INC.
Reel/Frame 055561/0198 →
RELEASE OF SECURITY INTEREST Recorded Feb 26, 2021
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: CHANGE HEALTHCARE HOLDINGS LLC
Reel/Frame 055431/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: CHANGE HEALTHCARE HOLDINGS LLC
To: CHC MAX HOLDINGS LLC
Reel/Frame 055432/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 046449/0899 →
CHANGE OF ADDRESS Recorded Mar 23, 2017
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 042082/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2017
From: PF2 IP LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 041966/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2017
From: MCKESSON CORPORATION
To: PF2 IP LLC
Reel/Frame 041938/0501 →
SECURITY AGREEMENT Recorded Mar 2, 2017
From: CHANGE HEALTHCARE HOLDINGS, LLC; CHANGE HEALTHCARE, INC.; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE SOLUTIONS, LLC; ALTEGRA HEALTH OPERATING COMPANY LLC; MCKESSON TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 041858/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2017
From: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
To: MCKESSON CORPORATION
Reel/Frame 041355/0408 →
CHANGE OF NAME Recorded Jan 11, 2017
From: MCKESSON FINANCIAL HOLDINGS
To: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
Reel/Frame 041329/0879 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2016
From: MCKESSON CORPORATION
To: MCKESSON FINANCIAL HOLDINGS
Reel/Frame 039887/0935 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2016
From: SELF, BRYAN; PATTERSON, MICHAEL; LEE, VINCENT
To: MCKESSON CORPORATION
Reel/Frame 038304/0118 →