QND.Network.Kemp.LoadMaster.IPVS.Mapped.Discovery.DS (DataSourceModuleType)

Element properties:

TypeDataSourceModuleType
IsolationAny
AccessibilityPublic
RunAsDefault
OutputTypeSystem.Discovery.Data

Member Modules:

ID Module Type TypeId RunAs 
Scheduler DataSource System.Discovery.Scheduler Default
Mapper ProbeAction Microsoft.Windows.PowerShellPropertyBagProbe Default
MapToDiscovery ConditionDetection System.Discovery.ClassSnapshotDataMapper Default

Overrideable Parameters:

IDParameterTypeSelector
IntervalSecondsint$Config/IntervalSeconds$
SyncTimestring$Config/SyncTime$

Source Code:

<DataSourceModuleType ID="QND.Network.Kemp.LoadMaster.IPVS.Mapped.Discovery.DS" Accessibility="Public" Batching="false">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System!System.Discovery.MapperSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="IntervalSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="0" name="SyncTime" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ClassId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="InstanceSettings" minOccurs="0" maxOccurs="1" type="SettingsType"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="IntervalSeconds" ParameterType="int" Selector="$Config/IntervalSeconds$"/>
<OverrideableParameter ID="SyncTime" ParameterType="string" Selector="$Config/SyncTime$"/>
</OverrideableParameters>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<DataSource ID="Scheduler" TypeID="System!System.Discovery.Scheduler">
<Scheduler>
<SimpleReccuringSchedule>
<Interval>$Config/IntervalSeconds$</Interval>
<SyncTime>$Config/SyncTime$</SyncTime>
</SimpleReccuringSchedule>
<ExcludeDates/>
</Scheduler>
</DataSource>
<ProbeAction ID="Mapper" TypeID="Windows!Microsoft.Windows.PowerShellPropertyBagProbe">
<ScriptName>Remap-IVS.ps1</ScriptName>
<ScriptBody><Script>#quick and dirty

param(

[Parameter(Mandatory=$true)] [int] $VSProtocol,
[Parameter(Mandatory=$true)] [string] $VSAddrType
)

[Threading.Thread]::CurrentThread.CurrentCulture = "en-US"
[Threading.Thread]::CurrentThread.CurrentUICulture = "en-US"
$api = New-Object -comObject 'MOM.ScriptAPI'

$bag = $api.CreatePropertyBag()
#Put the gathered statistics into the property bag.
#Includes a value for the folder name so that we can tell which folder the data is from.
switch ($VSProtocol)
{
6 {$port='tcp';break;}
17 {$port = 'udp'; break;}
default {$port = $VSProtocol ;}
}
$bag.AddValue('VSProtocol',$port)
switch ($VSAddrType)
{
0 {$AddrType='Unknown';break;}
1 {$AddrType='IPv4';break;}
2 {$AddrType= 'IPv6'; break;}
16 {$AddrType= 'DNS'; break;}
default {$AddrType = $VSAddrType;}
}
$bag.AddValue('VSAddrType',$AddrType)

$bag
</Script></ScriptBody>
<Parameters>
<Parameter>
<Name>VSProtocol</Name>
<Value>$Target/Property[Type="QND.Network.Kemp.LoadMaster.IPVS"]/ProtocolId$</Value>
</Parameter>
<Parameter>
<Name>VSAddrType</Name>
<Value>$Target/Property[Type="QND.Network.Kemp.LoadMaster.IPVS"]/VSAddrTypeId$</Value>
</Parameter>
</Parameters>
<TimeoutSeconds>60</TimeoutSeconds>
</ProbeAction>
<ConditionDetection ID="MapToDiscovery" TypeID="System!System.Discovery.ClassSnapshotDataMapper">
<ClassId>$Config/ClassId$</ClassId>
<InstanceSettings>$Config/InstanceSettings$</InstanceSettings>
</ConditionDetection>
</MemberModules>
<Composition>
<Node ID="MapToDiscovery">
<Node ID="Mapper">
<Node ID="Scheduler"/>
</Node>
</Node>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System!System.Discovery.Data</OutputType>
</DataSourceModuleType>