Patent attributes
A device determines that a policy is to be executed. The device retrieves rules, resource identifiers, and data provider identifiers associated with the policy, generates a pending rules data structure and populates the pending rules data structure with identifiers of the retrieved rules and their respective necessary resources as indicated by the resource identifiers. The device generates a pending resources data structure with the resource identifiers and their respective data providers, collects, asynchronously, each resource, and, as each respective resource is collected, deletes the respective resource from the pending resources data structure and populates a collected resources data structure with an identifier of the respective resource. The device determines whether the collected resources data structure includes identifiers of all resources needed to execute a rule, and executes individual ones of the retrieved rules as it is determined that their corresponding resources have identifiers populated in the collected resources data structure.