Controlled activation of interdependent bindings
AssigneeInductive Automation, LLC
InventorCarl Reuben Gould
Life of this patent
Estimating the term…
Abstract
A system for efficiently configuring bindings based on a dependency graph is described. The system may generate or access a graph comprising a set of nodes. Each node may represent a binding and is associated with a component property of a component hierarchy corresponding to a hierarchical structure of a data model. Each node of the graph may be connected to at least one other node with an edge representing a dependency in the hierarchical structure of the data model. The system may receive a request to generate a view associated with the set of bindings. The system may determine an order to load the set of bindings based on the graph, and may load the set of bindings based on the determined order.
Claims18
A computer-implemented method comprising:
- receiving a request to populate a graphic user interface with a view associated with a set of bindings each associated with a component property of a real-world physical component;
- determining an order to load the set of bindings to account for a startup lag caused by loading bindings and dependencies associated with the bindings by first loading bindings without dependencies and afterwards loading each dependent binding only after each binding on which the dependent binding depends has produced valid data, wherein the order further accounts for a detected binding dependency loop by randomly selecting an order in which bindings within the binding dependency loop are loaded;
- loading the set of bindings within the view based on the determined order;
- and
- while loading the set of bindings, monitoring configuration results from loaded bindings using a programmable logic controller physically coupled to the real-world physical component and configured to monitor and control one or more physical states associated with the real-world physical component, and delaying loading of a set of subsequent bindings until the monitored configuration results include successfully returned outputs detected by the programmable logic controller from all bindings on which the set of subsequent bindings depend.
A non-transitory computer-readable storage medium comprising memory with executable computer instructions encoded thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
- receiving a request to populate a graphic user interface with a view associated with a set of bindings each associated with a component property of a real-world physical component;
- determining an order to load the set of bindings to account for a startup lag caused by loading bindings and dependencies associated with the bindings by first loading bindings without dependencies and afterwards loading each dependent binding only after each binding on which the dependent binding depends has produced valid data, wherein the order further accounts for a detected binding dependency loop by randomly selecting an order in which bindings within the binding dependency loop are loaded;
- loading the set of bindings within the view based on the determined order;
- and
- while loading the set of bindings, monitoring configuration results from loaded bindings using a programmable logic controller physically coupled to the real-world physical component and configured to monitor and control one or more physical states associated with the real-world physical component, and delaying loading of a set of subsequent bindings until the monitored configuration results include successfully returned outputs detected by the programmable logic controller from all bindings on which the set of subsequent bindings depend.
A computing system comprising:
- a processor;
- and
- a non-transitory computer-readable storage medium storing instructions for detecting and blocking a pop-up loop, the instructions when executed by the processor cause the processor to perform steps including:
- receiving a request to populate a graphic user interface with a view associated with a set of bindings each associated with a component property of a real-world physical component;
- determining an order to load the set of bindings to account for a startup lag caused by loading bindings and dependencies associated with the bindings by first loading bindings without dependencies and afterwards loading each dependent binding only after each binding on which the dependent binding depends has produced valid data, wherein the order further accounts for a detected binding dependency loop by randomly selecting an order in which bindings within the binding dependency loop are loaded;
- loading the set of bindings within the view based on the determined order;
- and
- while loading the set of bindings, monitoring configuration results from loaded bindings using a programmable logic controller physically coupled to the real-world physical component and configured to monitor and control one or more physical states associated with the real-world physical component, and delaying loading of a set of subsequent bindings until the monitored configuration results include successfully returned outputs detected by the programmable logic controller from all bindings on which the set of subsequent bindings depend.
Dependencies are inferred from the claim text.