Package onep :: Package topology :: Module TopologyEvent :: Class TopologyEvent
[frames] | no frames]

Class TopologyEvent


An event which indicates that a Topology event occurred in a network element.

Sample code:

   class MyTopologyListener(TopologyListener):
       def handle_event(self, event, clientData):
           print "Received Topology Event"
           if event.type == TopologyEvent.EventType.EDGES_ADD:
               print "Some edges are added"
           if event.type = TopologyEvent.EventType.EDGES_DELETE:
               print "Some edges are removed"
           print "Number of edges in new topology" 
           print len(event.edge_list)

   # Create a Topology based on Topology type
   # The Toplogy object will contain Graph object and will keep the graph updated based
   # on the events received The latest graph can be obtained 
   # using get_graph method
   
   topology = TopologyClass(ne, Topology.TopologyType.CDP)
   graph = topology.get_graph()
   
   listener = MyTopologyListener()
   event_type = list()
   event_type.append(TopologyEvent.TopologyEventType.EDGES_ADD)
   event_type.append(TopologyEvent.TopologyEventType.EDGES_DELETE)
   
   filter = TopologyFilter(event_type)
   event_handle = topology.add_listener(listener, filter, None)
Instance Methods
list of Node
get_node_list(self)
Get the node list associated with the event.

Inherited from core.event.EventObject.EventObject: __init__

Inherited from core.event.AsyncMsg.AsyncMsg: do_event

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Static Methods
 
convert_type_bitmip_to_list(type_mask)
Class Variables
  TopologyEventType = enum(EDGES_ADD= 1, EDGES_DELETE= 2, NODES_...
Types of TopologyEvent
  topology = property(_get_topology, None, _doc)
  types = property(_get_types, None, _doc)
  edge_list = property(_get_edge_list, None, _doc)

Inherited from core.event.AsyncMsg.AsyncMsg: OnepAsyncMsgType

Instance Variables

Inherited from core.event.EventObject.EventObject: event_handle, event_type

Inherited from core.event.AsyncMsg.AsyncMsg: src_ne

Properties

Inherited from object: __class__

Method Details

get_node_list(self)

 

Get the node list associated with the event.

Returns: list of Node
A list of nodes

Class Variable Details

TopologyEventType

Types of TopologyEvent

When new set of edges are discovered EDGES_ADD(1) When a set of edges go down EDGES_DELETE(2) When a new node is added NODE_ADD(4) When a Node is removed NODE_DELETE(8)

Value:
enum(EDGES_ADD= 1, EDGES_DELETE= 2, NODES_ADD= 4, NODES_DELETE= 8)