Automated discovery of resource definitions and relationships in a scripting environment
First Claim
1. A method, comprising:
- performing, by one or more computer systems;
identifying commands within a scripting environment that enumerate resources;
executing the commands using default parameters to determine return types;
determining properties for each return type;
identifying key fields among the return type properties;
indexing the return type properties using the key fields to identify related return types;
searching for a matching update command; and
upon locating the matching update command, checking for parameters that match properties of the update command'"'"'s return type, marking a matching property of the update command'"'"'s return type as writable, and marking a non-matching property of the update command'"'"'s return type as read-only.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the invention use incomplete metadata, automated heuristics, and user input to construct a data model implemented by a set of commands used in a scripting environment. A combination of a static analysis and a runtime analysis of the scripting environment may be used to determine the data model. Commands that enumerate resources are identified. Return types for the commands are discovered either from a definition of the command or by running the command with default parameters. Properties for the return types are identified and key fields are identified for indexing. Relationships between the return types are identified, and additional commands associated with the return types are identified. The return type properties are analyzed to identify updatable return types. A data model of the scripting environment is created from the collected information.
12 Citations
16 Claims
-
1. A method, comprising:
performing, by one or more computer systems; identifying commands within a scripting environment that enumerate resources; executing the commands using default parameters to determine return types; determining properties for each return type; identifying key fields among the return type properties; indexing the return type properties using the key fields to identify related return types; searching for a matching update command; and upon locating the matching update command, checking for parameters that match properties of the update command'"'"'s return type, marking a matching property of the update command'"'"'s return type as writable, and marking a non-matching property of the update command'"'"'s return type as read-only. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A computer system, comprising:
-
one or more processors; and a memory coupled to the one or more processors, the memory having stored thereon computer-executable instructions that, upon execution by the one or more processors, causes the computer system to; identify a set of commands from a scripting environment module that enumerate resources; execute the commands using default parameters to determine return types; identify properties of one or more return types; identify key fields among the return type properties; index the return type properties using the key fields to identify related return types; search for a matching update command; and upon locating the matching update command, check for parameters that match properties of the update command'"'"'s return type, mark a matching property of the update command'"'"'s return type as writable, and mark a non-matching property of the update command'"'"'s return type as read-only. - View Dependent Claims (10, 11)
-
-
12. A computer-readable storage memory comprising instructions that, when executed by a computer system, cause the computer system to:
-
identify commands within a scripting environment that enumerate resources; execute the commands using default parameters to determine return types; determine properties for each return type; identify key fields among the return type properties; index the return type properties using the key fields to identify related return types; search for a matching update command; and upon locating the matching update command, check for parameters that match properties of the update command'"'"'s return type, mark a matching property of the update command'"'"'s return type as writable, and mark a non-matching property of the update command'"'"'s return type as read-only. - View Dependent Claims (13, 14, 15, 16)
-
Specification