US 11,921,709 B2
Uniform access to diverse structured information for client applications
Siavash James Joorabchian Hawkins, Tonbridge (GB); Lorenzo Blasa, Staines-Upon-Thames (GB); Phillip Riscombe-Burton, Staines-Upon-Thames (GB); Simon Brooks, Palo Alto, CA (US); and Neil Broadbent, Staines-Upon-Thames (GB)
Assigned to VMware, Inc., Palo Alto, CA (US)
Filed by VMware LLC, Palo Alto, CA (US)
Filed on Jan. 9, 2020, as Appl. No. 16/738,260.
Prior Publication US 2021/0216539 A1, Jul. 15, 2021
Int. Cl. G06F 16/242 (2019.01)
CPC G06F 16/2423 (2019.01) 20 Claims
OG exemplary drawing
 
1. A system for providing a uniform access interface to access device data, comprising:
a client device; and
program instructions stored in memory and executable by the client device that, when executed, direct the client device to:
access a schema file comprising a definition of a plurality of keypaths, wherein the keypaths are defined in the schema file in association with a plurality of methods, a first portion of the keypaths correspond to one of a plurality of device settings, and a second portion of the keypaths correspond to remote data retrieved through a remote service application programming interface;
identify a first function invoked using a first one of the keypaths in the first portion to read or write a first one of the device settings;
in response to the first function being invoked from a first application of the client device, match a keypath as a parameter of the first function to a first one of the keypaths in the first portion based at least in part on the keypath and the first one of the keypaths having a longest common prefix of at least one whole segment;
determine an order of execution of a portion of the methods corresponding to the first one of the keypaths in the schema file that interacts with the first one of the device settings;
execute, based at least in part on the order of execution, a portion of the methods corresponding to the first one of the keypaths in the schema file that interacts with the first one of the device settings, and return a result to a requesting process;
identify a second function invoked from a second application of the client device using a second one of the keypaths in the second portion to read a second one of the device settings from a remote console service using the remote service application programming interface;
in response to the second function being invoked from the second application, execute a portion of the methods corresponding to the second one of the keypaths in the schema file that invokes a service call through the remote service application programming interface to receive a value of the second one of the device settings from the remote console service;
convert the value of the second one of the device settings to be compatible with a third application using a mapping adaptor; and
cause a converted value of the second one of the device settings to be available to a third application of the client device using a third one of the plurality of keypaths.