Defining states in XML

Explains how to define object states in the XML format and load them in a data source.

Explains the use of a data source to load objects with states defined in XML.

Describes the XML elements that you can use in the OSI state system.

Describes the XML elements that you can use in the Bellcore state system.

Describes the XML elements that you can use in the SNMP state system.

Describes the XML elements that you can use in the Miscellaneous state system.

Describes the XML elements that you can use to read and write Performance states.

Describes the XML elements that you can use in the SAN state system.

Describes the XML elements that you can use in the SONET state system.

Describes the XML elements that you can use in the BiSONET state system.

Describes the XML elements that you can use in the Alarm state system.

Describes the XML elements that you can use in the Trap state system.

Overview

To load objects with states defined in the XML format, all you have to do is create a data source using the data source default implementation defined by IltDefaultDataSource and pass the XML file containing the object description to the parse method of the data source, as shown below:

 

dataSource = new IltDefaultDataSource();

dataSource.parse("OSIXMLFile.xml");

To define states when you add predefined business objects to the data source, set the value of attribute objectState to one of the JViews TGO object states:

  • IltOSIObjectState

  • IltBellcoreObjectState

  • IltSNMPObjectState

  • IltSONETObjectState

  • IltBiSONETObjectState

  • IltAlarmObjectState

  • IltTrapObjectState

How to create a predefined business object with states and alarms using XML

The following example shows an XML extract that you can load in a data source to create a rectangular group. States and alarms can be set in this object by declaring the value of attribute objectState when adding the business object:

 

<addObject id="RectGroup">

  <class>ilog.tgo.model.IltRectGroup</class>

  <attribute name="name">RectGroup</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpRect">

     <x>489</x> <y>356</y> <width>80</width> <height>60</height>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>Locked</administrative>

      <operational>Enabled</operational>

      <usage>Idle</usage>

    </state>

    <availability>PowerOff</availability>

    <control>ReservedForTest</control>

    <alarms>

      <new severity="Raw.Critical">5</new>

      <ack severity="Raw.Warning">12</ack>

    </alarms>

  </attribute>

</addObject>

How to set states and alarms to an existing object using XML

The following example shows how to set the states and alarms of an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="RectGroup">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Busy</usage>

    </state>

    <availability>PowerOff</availability>

    <misc>HighTemperatureWarning</misc>

    <alarms>

      <new severity="Raw.Critical">2</new>

    </alarms>

  </attribute>

</updateObject>

The <attribute> tag is used to modify the value of an attribute in a business object. When you use it to modify the value of attribute objectState, the old object state definition is completely replaced by the new one.

JViews TGO also provides support to update the object state of a predefined business object to allow you to perform incremental changes. This support is made available through the tag <updateState> :

Within an <updateState> block, you can modify the states, alarms and traps present in the business object state, adding and removing states, adding, removing and setting alarms and traps.

How to update states and alarms incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <state>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <procedural operation="remove">Initializing</procedural>

    <misc operation="remove">DoorAjar</misc>

    <alarms>

      <new severity="Raw.Critical" operation="set">2</new>

      <new severity="Raw.Major" operation="add">1</new>

      <ack severity="Raw.Warning" operation="remove">5</ack>

    </alarms>

  </updateState>

</updateObject>

The tables in this section list, for each state system, the XML elements that you can use to describe states in the XML format.

OSI states

The class IltOSIObjectStateSAXInfo is the XML serialization class that allows you to read and write OSI object states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the OSI state system 

XML Element

Attributes

Possible Values

Description

<administrative>

 

Locked, Unlocked, ShuttingDown

OSI Administrative state

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<operational>

 

Enabled, Disabled

OSI Operational state

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<usage>

 

Idle, Active, Busy

OSI Usage state

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<procedural>

 

InitializationRequired, Initializing, Reporting, Terminating

OSI Procedural status

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<availability>

 

Degraded, Dependency, Failed, InTest, LogFull, NotInstalled, OffDuty, OffLine, PowerOff

OSI Availability status

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<control>

 

PartOfServicesLocked, ReservedForTest, SubjectToTest, Suspended

OSI Control status

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<standby>

 

InStandby

OSI Stand-by status

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<repair>

 

UnderRepair

OSI Repair status

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with OSI states defined in XML

 

<addObject id="NE1">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="name">NE1</attribute>

  <attribute name="family">OC12</attribute>

  <attribute name="type">MD</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>68</x> <y>61</y>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <procedural>Reporting</procedural>

    <repair>UnderRepair</repair>

  </attribute>

</addObject>

How to set OSI states to an existing object using XML

The following example shows how to set OSI states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="RectGroup">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Busy</usage>

    </state>

    <availability>PowerOff</availability>

    <procedural>Terminating</procedural>

  </attribute>

</updateObject>

How to update OSI states incrementally using XML

 

<updateObject id="RectGroup">

  <updateState>

    <state>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <procedural operation="remove">Initializing</procedural>

    <availability>InTest</availability>

  </updateState>

</updateObject>

Bellcore states

The class IltBellcoreObjectStateSAXInfo is the XML serialization class that allows you to read and write Bellcore object states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the Bellcore state system 

XML Element

Attributes

Possible Values

Description

<state>

None

DisabledIdle, EnabledIdle, EnabledActive

BellCore primary state

<secState>

 

Blocked, Busy, ColdStandby, Combined, Diagnostic, Disabled, Disconnected, Exercise, FacilityFailure, FarEndProcessorOutage, Fault, Forced, HotStandby, Idle, IdleReceive, IdleTransmit, InhibitInProgress, LockedOut, LoopbackTest, Maintenance, MaintenanceLimited, MismatchOfEquipmen, Monitor, Overflow, PerformanceMonitorInhibited, Power, PrePostService, ProtectionReleaseInhibited, ProtectionSwitchExercise, ProtectionSwitchInhibited, Protocol, Rearrangement, RedLined, SoftwareDownloading, SoftwareTransferInhibited, SoftwareTransferOnly, SoftwareUploading, StandbyInhibited, StandbySwitched, SupportedEntityAbsent, SupportedEntityExists, SupportingEntityOutage, SupportingEntitySwapped, SuspendBoth, SuspendOrigination, SuspendTermination, SwitchedSystemActivity, TerminatedBoth, TerminatedFrom, TerminatedTo, Test, TestFailure,Transferred, Unassigned, Unequipped, Working

BellCore secondary states

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with Bellcore states defined in XML

 

<addObject id="NE3">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="name">NE3</attribute>

  <attribute name="type">Router</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>151</x> <y>512</y>

  </attribute>

  <attribute name="objectState"

         javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <secState>TestFailure</secState>

  </attribute>

</addObject>

How to set Bellcore states to an existing object using XML

The following example shows how to set Bellcore states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState"

javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <secState>Blocked</secState>

    <secState>Busy</secState>

  </attribute>

</updateObject>

How to update Bellcore states incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <state>EnabledIdle</state>

    <secState operation="remove">Blocked</secState>

    <secState operation="remove">Busy</secState>

    <secState>HotStandby</secState>

  </updateState>

</updateObject>

SNMP states

The class IltSNMPObjectStateSAXInfo is the XML serialization class that allows you to read and write SNMP object states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the SNMP state system 

XML Element

Attributes

Possible Values

Description

<state>

None

Down, Failed, Shutdown, Testing, Up

SNMP primary state

<interface>

state

InOctets, InUcastPkts, InDiscards, InErrors, InUnknownProtos, OutOctets,OutUcastPkts, OutNUcastPkts, OutDiscards, OutErrors

This attribute is mandatory. It defines the secondary state that will be set.

 

isArray

true or false

This attribute is optional. It defines whether the state value is an array or not.

 

value

java.lang.Float

This attribute is optional. When describing array values, each value in the array is enclosed in a <value> element.

 

javaClass

 

This attribute is optional. It defines the value of the state. The default value is java.lang.Float.

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<ip>

state

InReceives, InHdrErrors,InAddrError, ForwDatagrams, InUnknownProtos, InDiscards, InDelivers, OutRequests, OutDiscards, OutNoRoutes, Forwarding

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<icmp>

state

InMsgs, InErrors, OutMsgs, OutErrors

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<tcp>

state

CurrentEstablished, InSegs, OutSegs, InErrors, RetranSegs

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<udp>

state

InDatagrams, InErrors, OutDatagrams

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<egp>

state

InMsgs, InErrors, OutMsgs, OutErrors

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<snmp>

state

InPkts, OutPkts

See <interface>

 

isArray

true or false

See <interface>

 

value

java.lang.Float

See <interface>

 

javaClass

 

See <interface>

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

<system>

None

 

Defines the system information for the object. It can be used to define the system attributes, such as location, description, contact.

How to add a group with SNMP states defined in XML

 

<addObject id="RectGroup">

  <class>ilog.tgo.model.IltRectGroup</class>

  <attribute name="name">RectGroup</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpRect">

     <x>489</x> <y>356</y> <width>80</width> <height>60</height>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSNMPObjectState">

    <state>Down</state>

    <ip state="InDiscards">50</ip>

    <ip state="Forwarding" javaClass="java.lang.Boolean">true</ip>

    <interface state="InOctets" isArray="true" javaClass="java.lang.Integer">

      <value>50</value>

      <value>70</value>

      <value>58</value>

      <value>60</value>

      <value>58</value>

      <value>62</value>

    </interface>

  </attribute>

</addObject>

How to set SNMP states to an existing object using XML

The following example shows how to set SNMP states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSNMPObjectState">

    <state>Up</state>

    <interface state="InOctets">100</interface>

    <ip state="InDiscards">50</ip>

    <system>

      <attribute name="location">San Francisco</attribute>

      <attribute name="description">Test machine</attribute>

    </system>

  </attribute>

</updateObject>

How to update SNMP states incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <state>Up</state>

    <interface state="InOctets">80</interface>

    <ip state="InDiscards" operation="remove"/>

    <system>

      <attribute name="location">Los Angeles</attribute>

      <attribute name="description" null="true"/>

    </system>

  </updateState>

</updateObject>

Miscellaneous states

The class IltObjectStateSAXInfo is the XML serialization class that allows you to read and write miscellaneous states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the Miscellaneous state system 

XML Element

Attributes

Possible Values

Description

<misc>

 

SoftwareUpload, SoftwareDownload, SoftwareLimitExceeded, MismatchedCard, UnknownCard, DoorAjar, LowTemperatureWarning, HighTemperatureWarning, TestPassed, TestFailed, ThresholdCrossing, PlanToRemove, UnderRepair

Miscellaneous state

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with Miscellaneous states defined in XML

 

<addObject id="NE1">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>68</x> <y>61</y>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <misc>LowTemperatureWarning</misc>

    <misc>DoorAjar</misc>

  </attribute>

</addObject>

How to set Miscellaneous states to an existing object using XML

The following example shows how to set miscellaneous states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState"

javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <misc>DoorAjar</misc>

  </attribute>

</updateObject>

How to update Miscellaneous states incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <misc operation="remove">DoorAjar</misc>

    <misc>LowTemperatureWarning</misc>

  </updateState>

</updateObject>

Performance states

The class IltObjectStateSAXInfo is the XML serialization class that allows you to read and write Performance states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the Performance state system 

XML Element

Attributes

Possible Values

Description

<performance>

state

Input, In, In_Kb, In_Mb, In_Gb, Output, Out, Out_Kb, Out_Mb, Out_Gb, Print, Generic, Power, Temperature, Bandwidth

SAN state

 

isArray

true or false

This attribute is optional. It defines whether the state value is an array or not.

 

value

java.lang.Float

This attribute is optional. When describing array values, each value in the array is enclosed in an element.

 

javaClass

 

This attribute is optional. It defines the value of the state. The default value is java.lang.Float.

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with Performance states defined in XML

 

<addObject id="NE1">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>68</x> <y>61</y>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <performance state="In_Kb" isArray="true" javaClass="java.lang.Integer">

      <value>50</value>

      <value>70</value>

      <value>58</value>

      <value>60</value>

      <value>58</value>

      <value>62</value>

      <value>54</value>

      <value>24</value>

      <value>56</value>

      <value>85</value>

      <value>58</value>

      <value>65</value>

      <value>12</value>

      <value>35</value>

    </performance>

    <performance state="Input">200</performance>

  </attribute>

</addObject>

How to set Performance states to an existing object using XML

The following example shows how to set Performance states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState"

javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <performance state="Input">200</performance>

  </attribute>

</updateObject>

How to update Performance states incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <performance state="Input" operation="remove"/>

    <performance state="Bandwidth">50</performance>

  </updateState>

</updateObject>

SAN states

The class IltObjectStateSAXInfo is the XML serialization class that allows you to read and write SAN states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the SAN state system 

XML Element

Attributes

Possible Values

Description

<SAN>

state

IO, Allocated, Available, BackRecovery, Bandwidth, Capacity, CapacityUtilization, CPU, DataAccessDelay, Fragmentation, LostData, Usage

SAN state

 

isArray

true or false

This attribute is optional. It defines whether the state value is an array or not.

 

value

java.lang.Float

This attribute is optional. When describing array values, each value in the array is enclosed in an element.

 

javaClass

 

This attribute is optional. It defines the value of the state. The default value is java.lang.Float.

 

operation

add, remove

This attribute is optional. It specifies whether the state should be added to/removed from the object state. The default value is add indicating that the state will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with SAN states defined in XML

 

<addObject id="NE1">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>68</x> <y>61</y>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <administrative>ShuttingDown</administrative>

      <operational>Enabled</operational>

      <usage>Active</usage>

    </state>

    <SAN state="Bandwidth" isArray="true" javaClass="java.lang.Integer">

      <value>50</value>

      <value>70</value>

      <value>30</value>

    </SAN>

  </attribute>

</addObject>

How to set SAN states to an existing object using XML

The following example shows how to set SAN states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState"

javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <SAN state="Allocated">88</SAN>

  </attribute>

</updateObject>

How to update SAN states incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <SAN state="Allocated" operation="remove"/>

    <SAN state="Fragmentation">75</SAN>

  </updateState>

</updateObject>

SONET states

The class IltSONETObjectStateSAXInfo is the XML serialization class that allows you to read and write SONET states in the XML format.

The following table describes the XML elements that can be used:

XML elements in the SONET state system 

XML Element

Attributes

Possible Values

Description

<state>

None

Disabled, Inactive, Active, ActiveProtecting, TroubledProtected, TroubledUnprotected

SONET primary state

<protection>

 

Exercisor, ForcedSwitch, Locked, ManualSwitch, Pending, WaitToRestore

SONET protection state

 

from

true or false

This is an optional attribute. It defines whether the protection is set in the “from” end point of the link. By default, the value is true.

 

to

true or false

This is an optional attribute. It defines whether the protection is set in the “to” end point of the link. By default, the value is true.

How to add a link with a SONET state defined in XML

 

<addObject id="Link1">

  <class>ilog.tgo.model.IltLink</class>

  <link> <from>PolyGroup</from> <to>NE3</to> </link>

  <attribute name="name">Link1</attribute>

  <attribute name="media">Fiber</attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSONETObjectState">

    <state>Active</state>

    <protection from="true">Exercisor</protection>

    <protection to="true">Locked</protection>

  </attribute>

</addObject>

How to set SONET states to an existing object using XML

The following example shows how to set SONET states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="Link1">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSONETObjectState">

    <state>Active</state>

    <protection from="true" to="false">Exercisor</protection>

    <protection>Locked</protection>

  </attribute>

</updateObject>

How to update SONET states incrementally using XML

 

<updateObject id="Link1">

  <updateState>

    <protection from="false" to="true">Exercisor</protection>

    <protection from="false" to="false">Locked</protection>

  </updateState>

</updateObject>

BiSONET states

The class IltBiSONETObjectStateSAXInfo is the XML serialization class that allows you to read and write BiSONET states in the XML format.

The following table describes the XML elements that can be used:

XML elements in the BiSONET state system 

XML Element

Attributes

Possible Values

Description

<state>

None

Disabled, Inactive, Active, ActiveProtecting, TroubledProtected, TroubledUnprotected

BiSONET primary state

<reverseState>

None

Disabled, Inactive, Active, ActiveProtecting, TroubledProtected, TroubledUnprotected

BiSONET reverse state

<protection>

 

Exercisor, ForcedSwitch, Locked, ManualSwitch, Pending, WaitToRestore

BiSONET protection state

 

from

true or false

This is an optional attribute. It defines whether the protection is set in the “from” end point of the link. By default, the value is true.

 

to

true or false

This is an optional attribute. It defines whether the protection is set in the “to” end point of the link. By default, the value is true.

How to add a link with a BiSONET state defined in XML

 

<addObject id="Link1">

  <class>ilog.tgo.model.IltLink</class>

  <link> <from>PolyGroup</from> <to>NE3</to> </link>

  <attribute name="name">Link1</attribute>

  <attribute name="media">Fiber</attribute>

  <attribute name="objectState"

       javaClass="ilog.tgo.model.IltBiSONETObjectState">

    <state>Active</state>

    <reverseState>ActiveProtecting</reverseState>

    <protection from="true">Exercisor</protection>

    <protection to="true">Locked</protection>

  </attribute>

</addObject>

How to set BiSONET states to an existing object using XML

The following example shows how to set BiSONET states to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="Link1">

  <attribute name="objectState"

javaClass="ilog.tgo.model.IltBiSONETObjectState">

    <state>Active</state>

    <reverseState>ActiveProtecting</reverseState>

    <protection from="true" to="false">Exercisor</protection>

    <protection>Locked</protection>

  </attribute>

</updateObject>

How to update BiSONET states incrementally using XML

 

<updateObject id="Link1">

  <updateState>

    <reverseState>TroubledProtected</reverseState>

    <protection from="false" to="true">Exercisor</protection>

    <protection from="false" to="false">Locked</protection>

  </updateState>

</updateObject>

Alarm states

The class IltAlarmObjectStateSAXInfo is the XML serialization class that allows you to read and write alarm states in the XML format.

The following table describes the XML elements that can be used.

XML elements in the Alarm state system

XML Element

Attributes

Possible Values

Description

<alarms>

   

Delimits alarm state definition

 

notReporting

true or false

This is an optional attribute. It defines whether the managed object is currently not reporting its alarm state.

 

lossOfConnectivity

true or false

This is an optional attribute. It defines whether the managed object is currently without connectivity.

<new>

   

Structural element that lets you specify new alarms for an object

 

severity

Raw.Critical, Raw.Major, Raw.Minor, Raw.Warning or Raw.Unknown

Impact.CriticalHigh, Impact.CriticalLow, Impact.MajorHigh, Impact.MajorLow, Impact.MinorHigh, Impact.MinorLow, Impact.WarningHigh, Impact.WarningLow or Impact.Unknown

This attribute is mandatory. It defines the severity of the new alarm to be set.

 

operation

set, add, remove

This attribute is optional. It specifies whether the alarm should be set, added to or removed from the object state. The default value is set indicating that the alarm will be set in the object state. This attribute is used within an <updateState> element.

<ack>

   

Structural element that lets you specify acknowledged alarms for an object

 

severity

Raw.Critical, Raw.Major, Raw.Minor, Raw.Warning or Raw.Unknown

Impact.CriticalHigh, Impact.CriticalLow, Impact.MajorHigh, Impact.MajorLow, Impact.MinorHigh, Impact.MinorLow, Impact.WarningHigh, Impact.WarningLow or Impact.Unknown

This attribute is mandatory. It defines the severity of the acknowledged alarm to be set.

 

operation

set, add, remove

This attribute is optional. It specifies whether the alarm should be set, added to or removed from the object state. The default value is set indicating that the alarm will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element and a link with alarms defined in XML

 

<addObject id="NE2">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="name">NE2</attribute>

  <attribute name="type">Mainframe</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>229</x> <y>126</y>

  </attribute>

  <attribute name="objectState"

    javaClass="ilog.tgo.model.IltBellcoreObjectState">

    <state>EnabledActive</state>

    <alarms>

      <new severity="Raw.Critical">5</new>

      <ack severity="Impact.WarningLow">2</ack>

    </alarms>

  </attribute>

</addObject>

 

<addObject id="Link2">

  <class>ilog.tgo.model.IltLink</class>

  <link> <from>PolyGroup</from> <to>NE3</to> </link>

  <attribute name="name">Link2</attribute>

  <attribute name="media">Fiber</attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSONETObjectState">

    <state>Active</state>

    <alarms notReporting="true" />

  </attribute>

</addObject>

How to set alarms to an existing object using XML

The following example shows how to set alarms to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltOSIObjectState">

    <state>

      <operational>Disabled</operational>

      <usage>Idle</usage>

      <administrative>Unlocked</administrative>

    </state>

    <alarms>

      <new severity="Raw.Critical">2</new>

      <new severity="Raw.Warning">1</new>

      <ack severity="Raw.Minor">3</ack>

    </alarms>

  </attribute>

</updateObject>

How to update alarms incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <alarms>

      <new severity="Raw.Critical" operation="remove">1</new>

      <new severity="Raw.Warning" operation="add">1</new>

      <ack severity="Raw.Critical" operation="add">1</ack>

      <ack severity="Raw.Minor" operation="remove">3</ack>

    </alarms>

  </updateState>

</updateObject>

Trap states

The class IltTrapObjectStateSAXInfo is the XML serialization class that allows you to read and write traps in the XML format.

The following table describes the XML elements that can be used.

XML elements in the Trap state system 

XML Element

Attributes

Possible Values

Description

<traps>

None

 

Delimits trap state definition

<new>

   

Structural element that lets you specify new traps for an object

 

type

ColdStart, WarmStart, LinkFailure, AuthenticationFailure, EGPNeighborLoss

This attribute is mandatory. It defines the type of the new trap to be set.

 

operation

set, add, remove

This attribute is optional. It specifies whether the trap should be set, added to or removed from the object state. The default value is set indicating that the trap will be set in the object state. This attribute is used within an <updateState> element.

<ack>

   

Structural element that lets you specify acknowledged traps for an object

 

type

ColdStart, WarmStart, LinkFailure, AuthenticationFailure, EGPNeighborLoss

This attribute is mandatory. It defines the severity of the acknowledged trap to be set.

 

operation

set, add, remove

This attribute is optional. It specifies whether the trap should be set, added to or removed from the object state. The default value is set indicating that the trap will be set in the object state. This attribute is used within an <updateState> element.

How to add a network element with traps defined in XML

 

<addObject id="NE2">

  <class>ilog.tgo.model.IltNetworkElement</class>

  <attribute name="name">NE2</attribute>

  <attribute name="type">Mainframe</attribute>

  <attribute name="position" javaClass="ilog.cpl.graphic.IlpPoint">

    <x>229</x> <y>126</y>

  </attribute>

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSNMPObjectState">

    <state>Up</state>

    <traps>

      <new type="LinkFailure">5</new>

      <ack type="AuthenticationFailure">2</ack>

    </traps>

  </attribute>

</addObject>

How to set traps to an existing object using XML

The following example shows how to set traps to an object that already exists in the data source. You can achieve this by using the XML tag <updateObject> to modify the attribute objectState :

 

<updateObject id="NE1">

  <attribute name="objectState" javaClass="ilog.tgo.model.IltSNMPObjectState">

    <state>Up</state>

    <traps>

      <new type="LinkFailure">2</new>

      <ack type="AuthenticationFailure">3</ack>

    </traps>

  </attribute>

</updateObject>

How to update traps incrementally using XML

 

<updateObject id="NE1">

  <updateState>

    <traps>

      <new type="ColdStart">1</new>

      <new type="LinkFailure" operation="remove">1</new>

      <new type="AuthenticationFailure" operation="add">1</new>

      <ack severity="LinkFailure" operation="add">1</ack>

      <ack severity="AuthenticationFailure" operation="remove">3</ack>

    </traps>

  </updateState>

</updateObject>