IP Library Granted Patent US 10,324,742
Granted Patent B2
US 10,324,742 · App. 15/825,865 · Granted Jun 18, 2019

Instantiation of JavaScript object

Inventors: Issac Jacob Roth (San Francisco, CA); Albert K. Tsang (San Carlos, CA); Zhaohui Feng (Fremont, CA); Ritchie Tyler Martori (Fremont, CA); Miroslav Bajtos (Hradec Kralove, CZ)
Assignee: International Business Machines Corporation
G06F9/45529G06F8/315G06F9/466G06F9/54G06F9/541G06F9/547G06F21/6236H04L63/083H04L67/02H04L67/1097H04L67/42G06F21/335G06F21/6218G06F2221/2141
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,324,742
App. No.
15/825,865
Granted
Jun 18, 2019
Kind
B2
Abstract

A method. A JavaScript (JS) object is instantiated. The instantiated JS object processes application programming interface (API) requests received from mobile devices. The instantiation of the JS object is based on a JS model including (1) a JS file that stores a description of a behavior of the JS object and (2) a JS object notation (JSON) file that stores a description of properties of the JS object. The JSON file includes at least one validation rule to reject a data tuple unless the data tuple meets a required constraint specified in the validation rule. A data abstracter is an interface between the JS object and a set of data storages from which the JS object retrieves data while processing at least two of the API requests. The data abstractor is connected with the set of data storages by implementing a data exchange logic for the set of data storages.

Claims (14)

1. A method, said method comprising:

instantiating a JavaScript (JS) object, wherein the instantiated JS object processes application programming interface (API) requests received from mobile devices, wherein said instantiating the JS object is based on a JS model comprising (1) a JS file that stores a description of a behavior of the JS object and (2) a JS object notation (JSON) file that stores a description of properties of the JS object, wherein the JSON file includes at least one validation rule to reject a data tuple unless the data tuple meets a required constraint specified in the validation rule, and wherein a data abstractor is an interface between the JS object and a set of data storages from which the JS object retrieves data while processing a plurality of the API requests; and

connecting the data abstractor with the set of data storages by implementing a data exchange logic for the set of data storages,

wherein the description of the properties of the JS object comprises a description of a control logic for restricting access to at least one or more data tuples in a data storage that are available to the JS object upon processing the API request, and

wherein the control logic comprises at least one access control list (ACL) rule to ensure that a data tuple that is exchanged as part of the API request with the JS object satisfies a set of access control criteria.

2. The method of claim 1 , said method comprising:

connecting the interface with the set of data storages.

3. The method of claim 1 , wherein the data tuple that is exchanged as part of the API request with the JS object is a first data tuple, wherein the validation rule allows a second data tuple to be exchanged with the JS object when the second data tuple meets at least one data-type constraint.

4. The method of claim 3 , wherein the ACL and validation rules are implemented as function call hooks so that at runtime, the JS object calls a set of one or more rule processing engines that process the ACL and validation rules before or after processing an API request.

5. The method of claim 1 , wherein the set of data storages includes a relational database and a data storage that is not a relational database.

6. The method of claim 1 , wherein the data abstractor provides a set of functions that allows the JS objects to exchange data with the set of data storages.

7. The method of claim 1 , wherein the data abstractor performs create, retrieve, update, and delete (CRUD) functions that connect the JS objects to the data storages.

8. The method of claim 7 , wherein through the CRUD functions, the data abstractor allows the JS object to create a new data record in a data storage, to read a data record in the data storage, to write to a data record in the data storage, and to delete a data record in the data storage.

9. The method of claim 1 , wherein a set of property descriptions of the JSON file, based on the JS object that is instantiated, comprises a type of a data storage from which the JS object retrieves data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2018
From: ROTH, ISSAC JACOB; TSANG, ALBERT K.; FENG, ZHAOHUI; MARTORI, RITCHIE TYLER; BAJTOS, MIROSLAV
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044573/0046 →
Continuity (3)
Continuation 14490644 · Sep 18, 2014
Provisional Application 62051924 · Sep 17, 2014
Related Publication 20180107501A1 · Apr 19, 2018