IP Library Granted Patent US 11,068,323
Granted Patent B2
US 11,068,323 · App. 16/389,650 · Granted Jul 20, 2021

Automatic registration of empty pointers

Inventor: Itay A. Neeman (Seattle, WA)
Assignee: SPLUNK Inc.
G06F9/542G06F8/65G06F8/71G06F9/44521G06F9/54G06F16/2455G06F2209/545
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 11,068,323
App. No.
16/389,650
Granted
Jul 20, 2021
Kind
B2
Abstract

A first feature (e.g., chart or table) includes a reference to a dynamic pointer. Independently, the pointer is defined to point to a second feature (e.g., a query). The first feature is automatically updated to reflect a current value of the second feature. The reference to the pointer and pointer definition are recorded in a central registry, and changes to the pointer or second feature automatically cause the first feature to be updated to reflect the change. A mapping between features can be generated using the registry and can identify interrelationships to a developer. Further, changes in the registry can be tracked, such that a developer can view changes pertaining to a particular time period and/or feature of interest (e.g., corresponding to an operation problem).

Claims (67)

1. A method for using a registry to facilitate app development, comprising sending one or more libraries of code to a client device, wherein the one or more libraries cause the client device to perform, during execution of application code that references the one or more libraries of code, operations comprising:

detecting an attempted utilization, by a first app feature, of a pointer that has not been registered in the registry;

responsive to detecting the attempted utilization, automatically registering the pointer in the registry without a pointer definition for the pointer;

detecting, subsequent to registering the pointer in the registry, the pointer definition for the pointer, wherein the pointer definition associates the pointer with a second app feature; and

responsive to detecting the pointer definition, automatically registering the first app feature in the registry to receive notifications about events pertaining to the second app feature.

2. The method of claim 1 ,

wherein automatically registering the first app feature in the registry includes an indication that the first app feature is empty, and

wherein the method further comprises, responsive to subsequently detecting a feature definition for the first app feature, automatically registering the feature definition in the registry in association with the first app feature.

3. The method of claim 1 , wherein detecting the pointer definition for the pointer comprises monitoring for code of a feature that calls the pointer.

4. The method of claim 1 , wherein detecting the pointer definition for the pointer comprises monitoring input received from a developer via a graphical user interface for the pointer definition.

5. The method of claim 1 , wherein the operations further comprise, responsive to detecting one of the events pertaining to the second app feature, identifying relevant app features that are registered in the registry to receive the notifications about the events pertaining to the second app feature, wherein the relevant app features include the first app feature.

6. The method of claim 1 , wherein the events pertaining to the second app feature include at least one of:

a new registration of the second app feature;

a change to the second app feature's definition;

a change to the second app feature; or

a removal of the second app feature.

7. The method of claim 1 , wherein the first app feature is configured to respond to the notifications by updating data presented by the first app feature to reflect data in the second app feature.

8. The method of claim 1 , wherein the one or more libraries of code further cause the client device to track a history of modifications to the registry.

9. The method of claim 1 , wherein the one or more libraries of code further cause the client device to:

track a history of events that modify the registry; and

present a visual timeline of the events in the history.

10. The method of claim 1 , wherein the one or more libraries of code further cause the client device to generate, based on the registry, a map of interrelationships between at least some app features.

11. One or more non-transitory computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform operations comprising:

detecting an attempted utilization, by a first app feature, of a pointer that has not been registered in a registry;

responsive to detecting the attempted utilization, automatically registering the pointer in the registry without a pointer definition for the pointer;

detecting, subsequent to registering the pointer in the registry, the pointer definition for the pointer, wherein the pointer definition associates the pointer with a second app feature; and

responsive to detecting the pointer definition, automatically registering the first app feature in the registry to receive notifications about events pertaining to the second app feature.

12. The one or more non-transitory computer storage media of claim 11 ,

wherein automatically registering the first app feature in the registry includes an indication that the first app feature is empty, and

wherein the operations further comprise, responsive to subsequently detecting a feature definition for the first app feature, automatically registering the feature definition in the registry in association with the first app feature.

13. The one or more non-transitory computer storage media of claim 11 , wherein detecting the pointer definition for the pointer comprises monitoring for code of a feature that calls the pointer.

14. The one or more non-transitory computer storage media of claim 11 , wherein detecting the pointer definition for the pointer comprises monitoring input received from a developer via a graphical user interface for the pointer definition.

15. The one or more non-transitory computer storage media of claim 11 , wherein the operations further comprise, responsive to detecting one of the events pertaining to the second app feature, identifying relevant app features that are registered in the registry to receive the notifications about the events pertaining to the second app feature, wherein the relevant app features include the first app feature.

16. The one or more non-transitory computer storage media of claim 11 , wherein the events pertaining to the second app feature include at least one of:

a new registration of the second app feature;

a change to the second app feature's definition;

a change to the second app feature; or

a removal of the second app feature.

17. The one or more non-transitory computer storage media of claim 11 , wherein the first app feature is configured to respond to the notifications by updating data presented by the first app feature to reflect data in the second app feature.

18. The one or more non-transitory computer storage media of claim 11 , wherein the operations further comprise tracking a history of modifications to the registry.

19. The one or more non-transitory computer storage media of claim 11 , wherein the operations further comprise:

tracking a history of events that modify the registry; and

presenting a visual timeline of the events in the history.

20. The one or more non-transitory computer storage media of claim 11 , wherein the operations further comprise generating, based on the registry, a map of interrelationships between at least some app features.

21. A computer system comprising:

a server comprising one or more hardware processors and memory configured to provide computer program instructions to the one or more hardware processors, wherein the server is configured to utilize the one or more hardware processors to send one or more libraries of code to a client device, wherein the one or more libraries cause the client device to perform, during execution of application code that references the one or more libraries of code, operations comprising:

detecting an attempted utilization, by a first app feature, of a pointer that has not been registered in a registry;

responsive to detecting the attempted utilization, automatically registering the pointer in the registry without a pointer definition for the pointer;

detecting, subsequent to registering the pointer in the registry, the pointer definition for the pointer, wherein the pointer definition associates the pointer with a second app feature; and

responsive to detecting the pointer definition, automatically registering the first app feature in the registry to receive notifications about events pertaining to the second app feature.

22. The computer system of claim 21 ,

wherein automatically registering the first app feature in the registry includes an indication that the first app feature is empty, and

wherein the operations further comprise, responsive to subsequently detecting a feature definition for the first app feature, automatically registering the feature definition in the registry in association with the first app feature.

23. The computer system of claim 21 , wherein detecting the pointer definition for the pointer comprises monitoring for code of a feature that calls the pointer.

24. The computer system of claim 21 , wherein detecting the pointer definition for the pointer comprises monitoring input received from a developer via a graphical user interface for the pointer definition.

25. The computer system of claim 21 , wherein the operations further comprise, responsive to detecting one of the events pertaining to the second app feature, identifying relevant app features that are registered in the registry to receive the notifications about the events pertaining to the second app feature, wherein the relevant app features include the first app feature.

26. The computer system of claim 21 , wherein the events pertaining to the second app feature include at least one of:

a new registration of the second app feature;

a change to the second app feature's definition;

a change to the second app feature; or

a removal of the second app feature.

27. The computer system of claim 21 , wherein the first app feature is configured to respond to the notifications by updating data presented by the first app feature to reflect data in the second app feature.

28. The computer system of claim 21 , wherein the one or more libraries of code further cause the client device to track a history of modifications to the registry.

29. The computer system of claim 21 , wherein the one or more libraries of code further cause the client device to:

track a history of events that modify the registry; and

present a visual timeline of the events in the history.

30. The computer system of claim 21 , wherein the one or more libraries of code further cause the client device to generate, based on the registry, a map of interrelationships between at least some app features.

Assignments (4)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069825/0782 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2019
From: NEEMAN, ITAY A.
To: SPLUNK INC.
Reel/Frame 049112/0539 →
Continuity (6)
Continuation 15799618 · Oct 31, 2017
Continuation 14962970 · Dec 8, 2015
Continuation 14266840 · May 1, 2014
Continuation 13910811 · Jun 5, 2013
Related Publication 20190250965A1 · Aug 15, 2019
Related Publication 20210042170A9 · Feb 11, 2021