<PropertyDef> element
The <PropertyDef> element defines a property that can be used in a <Property> element.
Syntax
Parent element: <Catalog>
Attribute | Required | Type | Description |
---|---|---|---|
name | yes | string | Specifies the name of the property. |
Child element | Required | Description |
---|---|---|
<Command> | no | Command |
<Argument> | no | Command-line arguments |
<Stdin> | no | Arguments supported by the <Stdin> elements |
<Filter> | no | Filter |
<Mask> | no | Output capturing mask |
Usage
Properties are key-value pairs associated with a parameter. The value of the key-value pairs are retrieved by the artexget –r and artexget –n commands and saved in the output profile. Property values saved in a profile can be inserted into a command line by using the %p[property_name] sequence.
The <PropertyDef> element defines a property. This property can later be associated to a parameter or configuration method by using a <Property> element that has the same name attribute.
Example
The following example assigns a nodeId property to the netaddr and netaddr6 parameters:
<PropertyDef name="nodeId">
<Command>/usr/bin/uname -f</Command>
<Mask>.*</Mask>
</PropertyDef>
<ParameterDef name="netaddr" type="string" targetClass="device" cfgmethod="attr">
<Property name="nodeId"/>
</ParameterDef>
<ParameterDef name="netaddr6" type="string" targetClass="device" cfgmethod="attr">
<Property name="nodeId"/>
</ParameterDef>
In this example, the uname command is run only once, because the two parameters use the same <Command> element for their property, and the generated command line is the same for the two parameters.