IP Library Granted Patent US 10,979,539
Granted Patent B1
US 10,979,539 · App. 16/001,643 · Granted Apr 13, 2021

Method and system of generating generic protocol handlers

Inventors: John M. VanAntwerp (Normal, IL); Dan Kalmes (Bloomington, IL)
Assignee: State Farm Mutual Automobile Insurance Company
H04L69/08H04L67/28
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,979,539
App. No.
16/001,643
Granted
Apr 13, 2021
Kind
B1
Abstract

A method of generating generic protocol handlers includes receiving a user request in a middleware, generating a request payload by analyzing the request in a protocol handler of the middleware, transforming the request payload into a set of canonical types, transmitting the set of canonical types to a path module, receiving a response payload, transforming the response payload in a second protocol handler of the middleware, and transmitting the response to the user.

Claims (59)

1. A computer-implemented method of processing user requests and responses by a middleware, the computer-implemented method comprising:

(a) receiving, by a first protocol handler included in the middleware of a first computing system, a request;

(b) analyzing the request using the first protocol handler to generate a request payload;

(c) transforming, by the first protocol handler, the request payload into a set of canonical types;

(d) transmitting the set of canonical types to a path module;

(e) receiving, from the path module, a response payload, wherein the response payload is associated with at least one of the set of canonical types;

(f) analyzing the response payload using a second protocol handler included in the middleware to generate a response, the second protocol handler being different from the first protocol handler; and

(g) transmitting, from the first computing system, the response to a second computing system.

2. The computer-implemented method of claim 1 , wherein the first computing system and the second computing system are identical.

3. The computer-implemented method of claim 1 , wherein the first computing system and the second computing system are different.

4. The computer-implemented method of claim 1 , wherein transmitting the set of canonical types to the path module includes determining, by the first computing system, a routing based on analyzing metadata of the request.

5. The computer-implemented method of claim 1 , wherein analyzing metadata of the request includes analyzing one or both of (i) a session identifier, and (ii) a user identifier.

6. The computer-implemented method of claim 1 , wherein transmitting the response to the second computing system includes storing an indication of the at least one of the set of canonical types in an electronic database, the computer-implemented method further comprising:

repeating (a) wherein the request is a second request;

repeating (b) wherein the request payload is a second payload;

repeating (c) wherein the set of canonical types is a second set of canonical types; and

determining, by comparing the set of canonical types to the second set of canonical types and by querying the electronic database, an ordering of the second payload with respect to the request payload.

7. The computer-implemented method of claim 1 , wherein the response payload includes user experience instructions, and wherein transforming, by the second protocol handler included in the middleware analyzing the response payload, the response, includes modifying the response according to the user experience instructions.

8. The computer-implemented method of claim 1 , further comprising:

identifying, by the first protocol handler included in the middleware analyzing the request payload, a sub-protocol, wherein transforming the request payload into the set of canonical types includes analyzing the sub-protocol.

9. The computer-implemented method of claim 1 , wherein generating, by the first protocol handler included in the middleware analyzing the request, the request payload includes identifying a sub-protocol of the first protocol handler.

10. A middleware computing system comprising:

one or more processors; and

one or more memories storing instructions that, when executed by the one or more processors, cause the middleware computing system to:

(a) receive, by a first protocol handler of the middleware computing system, a request;

(b) analyze the request using the first protocol handler to generate a request payload;

(c) transform, by the first protocol handler, the request payload into a set of canonical types;

(d) transmit the set of canonical types to a path module;

(e) receive, from the path module, a response payload, wherein the response payload is associated with at least one of the set of canonical types;

(f) transform the response payload using a second protocol handler to generate a response, the second protocol handler being different from the first protocol handler; and

(g) transmit the response to a second computing system.

11. The middleware computing system of claim 10 , wherein (i) the middleware computing system and the second computing system are identical or (ii) the middleware computing system and the second computing system are different.

12. The middleware computing system of claim 10 , wherein the instructions further cause the middleware computing system to:

determine a routing based on analyzing metadata of the request.

13. The middleware computing system of claim 10 , wherein the instructions further cause the middleware computing system to:

analyze one or both of (i) a session identifier, and (ii) a user identifier.

14. The middleware computing system of claim 10 , wherein the instructions further cause the middleware computing system to:

store an indication of the at least one of the set of canonical types in an electronic database;

repeat (a) wherein the request is a second request;

repeat (b) wherein the request payload is a second payload;

repeat (c) wherein the set of canonical types is a second set of canonical types; and

determine an ordering of the second payload with respect to the request payload, based on the set of canonical types, the second set of canonical types, and contents of the electronic database.

15. The middleware computing system of claim 10 , wherein the response payload includes user experience instructions, and wherein the instructions further cause the middleware computing system to:

modify the response according to the user experience instructions.

16. The middleware computing system of claim 10 , wherein the instructions further cause the middleware computing system to:

identify a sub-protocol using the first protocol handler to analyze the request payload,

wherein the instructions cause the middleware computing system to transform the response payload using the second protocol handler to generate the response based on the sub-protocol.

17. The middleware computing system of claim 10 , wherein the instructions further cause the middleware computing system to identify a sub-protocol of the first protocol handler.

18. The middleware computing system of claim 10 , wherein the response payload is received by the second protocol handler, and wherein the request payload comprises data associated with more than one dynamic user experience application.

19. A non-transitory computer readable medium containing program instructions that when executed, cause a computer to:

(a) receive, at a middleware computing system, a request;

(b) analyze the request using a first protocol handler to generate a request payload;

(c) transform, by the first protocol handler, the request payload into a set of canonical types;

(d) transmit the set of canonical types to a path module;

(e) receive, from the path module, a response payload, wherein the response payload is associated with at least one of the set of canonical types;

(f) transform the response payload using a second protocol handler to generate a response, the second protocol handler being different from the first protocol handler; and

(g) transmit the response to a second computing system.

20. The non-transitory computer readable medium of claim 19 , further comprising program instructions that, when executed, cause the computer to:

modify the response according to user experience instructions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2018
From: VANANTWERP, JOHN M.; KALMES, DAN
To: STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY
Reel/Frame 046798/0229 →
Continuity (1)
Provisional Application 62535613 · Jul 21, 2017
Cited By (2)
US 12,271,745 US 12,418,601