System.Discovery.FilteredClassSnapshotDataMapper
Applies To: Operations Manager 2007 R2
The System.Discovery.FilteredClassSnapshotDataMapper module is a condition detection module type that filters any type of data and then maps that data to class type instance System.Discovery.Data data.
Usage
This module is used only in discovery workflows. Use this module when you want to map any type of data to class type instance System.Discovery.Data. This module maps only a single class type instance. Generally, this module is used as a member module in various existing discovery data source module type definitions.
Type Definition
<ConditionDetectionModuleType ID="System.Discovery.FilteredClassSnapshotDataMapper" Accessibility="Public" PassThrough="false" Batching="false" Stateful="false">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System.ExpressionEvaluatorSchema</SchemaType>
<SchemaType>System.Discovery.MapperSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element name="Expression" type="ExpressionType"/>
<xsd:element name="ClassId" type="xsd:string"/>
<xsd:element name="InstanceSettings" minOccurs="0" maxOccurs="1" type="SettingsType"/>
</Configuration>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<ConditionDetection ID="Filter" TypeID="System.ExpressionFilter">
<Expression>$Config/Expression$</Expression>
</ConditionDetection>
<ConditionDetection ID="Mapper" TypeID="System.Discovery.ClassSnapshotDataMapper">
<ClassId>$Config/ClassId$</ClassId>
<InstanceSettings>$Config/InstanceSettings$</InstanceSettings>
</ConditionDetection>
</MemberModules>
<Composition>
<Node ID="Mapper">
<Node ID="Filter"/>
</Node>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System.Discovery.Data</OutputType>
<InputTypes>
<InputType>System.BaseData</InputType>
</InputTypes>
</ConditionDetectionModuleType>
Parameters
System.Discovery.FilteredClassSnapshotDataMapper supports the configuration parameters described in the following table.
Parameter | Type | Overrideable | Description |
---|---|---|---|
Expression |
False |
Required parameter. Contains the filter expression to apply to the incoming data. |
|
ClassId |
String |
False |
Required parameter. The class that is being discovered. |
InstanceSettings |
False |
Optional parameter. The property settings for the instance or instances of the class that is being discovered. |
The ClassID parameter takes a string that must be in the $MPElement format. This element must refer to a defined class in the same management pack or a publicly available class in a referenced management pack. The following XML snippet shows the ClassID configuration element.
<ClassId>$MPElement[Name="Microsoft.Samples.ApplicationX"]$</ClassId>
The InstanceSettings parameter defines the mapping of configuration, data, target, and static values to the discovered instance or instances. The exact mapping depends on the discovery scenario and the hosting relationships that are related to the class that is being discovered. For more information about the InstanceSettings parameter, see SettingsType.
Composition
The System.Discovery.FilteredClassSnapshotDataMapper module is a composite module that contains the member module described in the following table.
Workflow Run Order | Module Type | Usage |
---|---|---|
1 |
Filters the incoming data based on the Expression parameter value. |
|
2 |
Maps the filtered data into System.Discovery.Data. |
Related Modules
Module Type | Usage |
---|---|
Maps relationship type instance data to System.Discovery.Data data. |
External Module References
The System.Discovery.FilteredClassSnapshotDataMapper module is a member of the public module described in the following table.
Module Type | Library | Usage |
---|---|---|
Microsoft.Windows.Library |
Queries the Windows registry at the specified frequency and returns the filtered results as System.Discovery.Data type data. |
Sample
The following XML sample shows how System.Discovery.FilteredClassSnapshotDataMapper is used as a member of the Microsoft.Windows.FilteredRegistryDiscoveryProvider discovery module. For an example of how to specify a filtering expression, see Microsoft.Windows.FilteredRegistryDiscoveryProvider.
<DataSourceModuleType ID="Microsoft.Windows.FilteredRegistryDiscoveryProvider" Accessibility="Public">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>Microsoft.Windows.RegistryAttributeDefinitionsSchema</SchemaType>
<SchemaType>System!System.Discovery.MapperSchema</SchemaType>
<SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element name="ComputerName" type="xsd:string" />
<xsd:element name="RegistryAttributeDefinitions" type="RegistryAttributeDefinitionsType" />
<xsd:element name="Frequency" type="xsd:unsignedInt" />
<xsd:element name="ClassId" type="xsd:string" />
<xsd:element name="InstanceSettings" minOccurs="0" maxOccurs="1" type="SettingsType" />
<xsd:element name="Expression" type="ExpressionType" />
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="Frequency" Selector="$Config/Frequency$" ParameterType="int" />
</OverrideableParameters>
<ModuleImplementation>
<Composite>
<MemberModules>
<DataSource ID="DS" TypeID="Microsoft.Windows.Discovery.RegistryProvider">
<ComputerName>$Config/ComputerName$</ComputerName>
<RegistryAttributeDefinitions>$Config/RegistryAttributeDefinitions$</RegistryAttributeDefinitions>
<Frequency>$Config/Frequency$</Frequency>
</DataSource>
<ConditionDetection ID="Mapping" TypeID="System!System.Discovery.FilteredClassSnapshotDataMapper">
<Expression>$Config/Expression$</Expression>
<ClassId>$Config/ClassId$</ClassId>
<InstanceSettings>$Config/InstanceSettings$</InstanceSettings>
</ConditionDetection>
</MemberModules>
<Composition>
<Node ID="Mapping">
<Node ID="DS" />
</Node>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System!System.Discovery.Data</OutputType>
</DataSourceModuleType>
Information
Module Type |
|
Input Type |
|
Output Type |
|
Implementation |
Composite |
Library |
System.Library |