Microsoft.Windows.HyperV.DiskFreeSpaceMonitorType (UnitMonitorType)

Element properties:

RunAsDefault
AccessibilityPublic
Support Monitor RecalculateFalse

Member Modules:

ID Module Type TypeId RunAs 
SpaceProvider DataSource Microsoft.Windows.HyperV.DiskPartitionSpaceProvider.Subscriber Default
EnoughSpaceCheck ConditionDetection System.ExpressionFilter Default
NoSpaceCheck ConditionDetection System.ExpressionFilter Default
PartialSpaceCheck ConditionDetection System.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelector
WarningSizeint$Config/WarningSize$
ErrorSizeint$Config/ErrorSize$

Source Code:

<UnitMonitorType ID="Microsoft.Windows.HyperV.DiskFreeSpaceMonitorType" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="FreeSpaceAvailable" NoDetection="false"/>
<MonitorTypeState ID="PartialSpaceAvailable" NoDetection="false"/>
<MonitorTypeState ID="NoSpaceAvailable" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="VirtualDriveId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="WarningSize" type="xsd:int"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="ErrorSize" type="xsd:int"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="WarningSize" Selector="$Config/WarningSize$" ParameterType="int"/>
<OverrideableParameter ID="ErrorSize" Selector="$Config/ErrorSize$" ParameterType="int"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="SpaceProvider" TypeID="Microsoft.Windows.HyperV.DiskPartitionSpaceProvider.Subscriber"/>
<ConditionDetection ID="EnoughSpaceCheck" TypeID="System!System.ExpressionFilter">
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name='$Config/VirtualDriveId$.FreeSpace']</XPathQuery>
</ValueExpression>
<Operator>Greater</Operator>
<ValueExpression>
<Value Type="Integer">$Config/WarningSize$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='$Config/VirtualDriveId$.Monitor']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">false</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</ConditionDetection>
<ConditionDetection ID="PartialSpaceCheck" TypeID="System!System.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name='$Config/VirtualDriveId$.FreeSpace']</XPathQuery>
</ValueExpression>
<Operator>LessEqual</Operator>
<ValueExpression>
<Value Type="Integer">$Config/WarningSize$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name='$Config/VirtualDriveId$.FreeSpace']</XPathQuery>
</ValueExpression>
<Operator>Greater</Operator>
<ValueExpression>
<Value Type="Integer">$Config/ErrorSize$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='$Config/VirtualDriveId$.Monitor']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">true</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<ConditionDetection ID="NoSpaceCheck" TypeID="System!System.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name='$Config/VirtualDriveId$.FreeSpace']</XPathQuery>
</ValueExpression>
<Operator>LessEqual</Operator>
<ValueExpression>
<Value Type="Integer">$Config/ErrorSize$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='$Config/VirtualDriveId$.Monitor']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">true</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="FreeSpaceAvailable">
<Node ID="EnoughSpaceCheck">
<Node ID="SpaceProvider"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="PartialSpaceAvailable">
<Node ID="PartialSpaceCheck">
<Node ID="SpaceProvider"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="NoSpaceAvailable">
<Node ID="NoSpaceCheck">
<Node ID="SpaceProvider"/>
</Node>
</RegularDetection>
</RegularDetections>
</MonitorImplementation>
</UnitMonitorType>