IP Library Granted Patent US 9,594,545
Granted Patent B2
US 9,594,545 · App. 14/305,977 · Granted Mar 14, 2017

System for displaying notification dependencies between component instances

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 9,594,545
App. No.
14/305,977
Granted
Mar 14, 2017
Kind
B2
Abstract

The disclosed embodiments relate to a system that facilitates developing applications in a component-based software development environment. This system provides an execution environment comprising instances of application components and a registry that maps names to instances of application components. Within the registry, each entry is associated with a list of notification dependencies that specifies component instances to be notified when the registry entry changes. Upon receiving a command to display notification dependencies for the registry, the system generates and displays a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances. Upon receiving a command to display a timeline for with the registry, the system generates and displays a timeline representing events associated with the registry in chronological order.

Claims (82)

1. A computer-implemented method, comprising:

operating an execution environment comprising instances of application components and a registry containing entries that indicate names and corresponding instances of application components;

wherein each registry entry is associated with a list of notification dependencies, the list of notification dependencies indicating component instances to be notified when the registry entry changes; and

upon receiving a command to display notification dependencies for the registry, generating a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances; and

outputting the dependency graph to a user.

2. The computer-implemented method of claim 1 , wherein an arrow between a first node representing a first component instance and a second node representing a second component instance indicates that when a registry entry associated with the second component instance changes, the first component instance will be notified.

3. The computer-implemented method of claim 1 , wherein the registry additionally includes token entries that map token names to associated variables containing token values that are generated as outputs by component instances, and wherein the generated dependency graph includes notification dependencies involving changes in token values in the token entries.

4. The computer-implemented method of claim 1 , wherein upon receiving a call to register a mapping between a name and an instance of an application component, the method further comprises updating the registry to include an entry for the mapping.

5. The computer-implemented method of claim 1 , wherein upon receiving a call to be notified about registry changes for a name, the method further comprises updating the registry to indicate that a notification should be sent to a caller when a change occurs in a registry entry for the name.

6. The computer-implemented method of claim 1 , wherein upon receiving a command to display a timeline for the registry, the method further comprises:

generating a timeline representing events associated with the registry in chronological order; and

outputting the timeline to a user.

7. The computer-implemented method of claim 1 , wherein upon receiving a command to display a timeline for the registry, the method further comprises:

generating a timeline representing events associated with the registry in chronological order;

wherein the events include one or more of

a call to create a registry entry,

a call to be notified about changes to a registry entry,

a change to a registry entry, and

other events associated with registry entries; and

outputting the timeline to a user.

8. The computer-implemented method of claim 1 , wherein an instance of an application component includes one of:

a visual element in a user interface (UI);

an input element in a UI;

a function that produces a data value;

a token containing a variable that holds a data value; and

another data source.

9. The computer-implemented method of claim 1 , wherein the execution environment supports a user interface (UI) system.

10. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method, the comprising:

operating an execution environment comprising instances of application components and a registry containing entries that indicate names and corresponding instances of application components;

wherein each registry entry is associated with a list of notification dependencies, the list of notification dependencies indicating component instances to be notified when the registry entry changes; and

upon receiving a command to display notification dependencies for the registry, generating a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances; and

outputting the dependency graph to a user.

11. The non-transitory computer-readable storage medium of claim 10 , wherein an arrow between a first node representing a first component instance and a second node representing a second component instance indicates that when a registry entry associated with the second component instance changes, the first component instance will be notified.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the registry additionally includes token entries that map token names to associated variables containing token values that are generated as outputs by component instances, and wherein the generated dependency graph includes notification dependencies involving changes in token values in the token entries.

13. The non-transitory computer-readable storage medium of claim 10 , wherein upon receiving a call to register a mapping between a name and an instance of an application component, the method further comprises updating the registry to include an entry for the mapping.

14. The non-transitory computer-readable storage medium of claim 10 , wherein upon receiving a call to be notified about registry changes for a name, the method further comprises updating the registry to indicate that a notification should be sent to a caller when a change occurs in a registry entry for the name.

15. The non-transitory computer-readable storage medium of claim 10 , wherein upon receiving a command to display a timeline for the registry, the method further comprises:

generating a timeline representing events associated with the registry in chronological order; and

outputting the timeline to a user.

16. The non-transitory computer-readable storage medium of claim 10 , wherein upon receiving a command to display a timeline for the registry, the method further comprises:

generating a timeline representing events associated with the registry in chronological order;

wherein the events include one or more of

a call to create a registry entry,

a call to be notified about changes to a registry entry,

a change to a registry entry, and

other events associated with registry entries; and

outputting the timeline to a user.

17. The non-transitory computer-readable storage medium of claim 10 , wherein an instance of an application component includes one of:

a visual element in a user interface (UI);

an input element in a UI;

a function that produces a data value;

a token containing a variable that holds a data value; and

another data source.

18. The non-transitory computer-readable storage medium of claim 10 , wherein the execution environment supports a user interface (UI) system.

19. A system, comprising:

at least one processor and at least one associated memory; and

an execution environment that executes on the at least one processor and comprises instances of application components and a registry that indicate names and corresponding instances of application components;

wherein each registry entry is associated with a list of notification dependencies, the list of notification dependencies indicating component instances to be notified when the registry entry changes;

wherein upon receiving a command to display notification dependencies for the registry, the execution environment is configured to, generate a dependency graph containing nodes representing component instances and arrows between the nodes representing notification dependencies between the component instances; and

output the dependency graph to a user.

20. The system of claim 19 , wherein an arrow between a first node representing a first component instance and a second node representing a second component instance indicates that when a registry entry associated with the second component instance changes, the first component instance will be notified.

21. The system of claim 19 , wherein the registry additionally includes token entries that map token names to associated variables containing token values that are generated as outputs by component instances, and wherein the generated dependency graph includes notification dependencies involving changes in token values in the token entries.

22. The system of claim 19 , wherein upon receiving a call to register a mapping between a name and an instance of an application component, the execution environment is configured to update the registry to include an entry for the mapping.

23. The system of claim 19 , wherein upon receiving a call to be notified about registry changes for a name, the execution environment is configured to update the registry to indicate that a notification should be sent to a caller when a change occurs in a registry entry for the name.

24. The system of claim 19 , wherein upon receiving a command to display a timeline for the registry, the execution environment is configured to:

generate a timeline representing events associated with the registry in chronological order; and

output the timeline to a user.

25. The system of claim 19 , wherein upon receiving a command to display a timeline for the registry, the execution environment is configured to:

generate a timeline representing events associated with the registry in chronological order;

wherein the events include one or more of

a call to create a registry entry,

a call to be notified about changes to a registry entry,

a change to a registry entry, and

other events associated with registry entries; and

output the timeline to a user.

26. The system of claim 19 , wherein an instance of an application component includes one of:

a visual element in a user interface (UI);

an input element in a UI;

a function that produces a data value;

a token containing a variable that holds a data value; and

another data source.

27. The system of claim 19 , wherein the execution environment supports a user interface (UI) system.

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 Jul 24, 2014
From: NEEMAN, ITAY A.
To: SPLUNK INC.
Reel/Frame 033385/0566 →