#!/usr/bin/env python3
# Copyright (c) 2010, 2011 Arista Networks, Inc.  All rights reserved.
# Arista Networks, Inc. Confidential and Proprietary.

from VmTracerEventHandlerLib import VmEventHandler
import os 

class PrintVmEventHandler( VmEventHandler ):
   # Handle the Vms that got added. For now just print them but this can be changed 
   # to do other things like vlan modification, ACL, etc. 
   def handleAddedVms( self ):
      addedVms = self.getAddedVms()
      self.printAddedVms( addedVms )

   def handleDeletedVms( self ):
      deletedVms = self.getDeletedVms()
      self.printDeletedVms( deletedVms )

   def handleChangedVms( self ):
      changedVms = self.getChangedVms()
      self.printChangedVms( changedVms )

   def handleMovedVms( self ):
      movedVms = self.getMovedVms()
      self.printMovedVms( movedVms )

   def handlePoweredOnVms( self ):
      poweredVms = self.getPowerChangedVms( 'Up' )
      self.printPoweredOnVms( poweredVms )

   def handlePoweredOffVms( self ):
      poweredVms = self.getPowerChangedVms( 'Down' )
      self.printPoweredOffVms( poweredVms )

useCli = True
noCliFile = '/tmp/VmTracerNoCli'
if os.path.exists( noCliFile ):
   useCli = False
handler = PrintVmEventHandler( useCli=useCli )
handler.handleVms()           

   
