Class AbstractTransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject,I extends org.opendaylight.yangtools.yang.binding.Key<T>,A extends org.opendaylight.yangtools.yang.binding.Augmentation<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>>

java.lang.Object
org.opendaylight.ovsdb.hwvtepsouthbound.transact.AbstractTransactCommand<T,I,A>
All Implemented Interfaces:
TransactCommand<T>
Direct Known Subclasses:
LogicalRouterRemoveCommand, LogicalRouterUpdateCommand, LogicalSwitchRemoveCommand, LogicalSwitchUcastsRemoveCommand, LogicalSwitchUpdateCommand, McastMacsLocalRemoveCommand, McastMacsLocalUpdateCommand, McastMacsRemoteRemoveCommand, McastMacsRemoteUpdateCommand, PhysicalPortRemoveCommand, PhysicalPortUpdateCommand, PhysicalSwitchRemoveCommand, PhysicalSwitchUpdateCommand, PlainLogicalSwitchRemoveCmd, TunnelRemoveCommand, TunnelUpdateCommand, UcastMacsLocalRemoveCommand, UcastMacsLocalUpdateCommand, UcastMacsRemoteRemoveCommand, UcastMacsRemoteUpdateCommand

public abstract class AbstractTransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject,I extends org.opendaylight.yangtools.yang.binding.Key<T>,A extends org.opendaylight.yangtools.yang.binding.Augmentation<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>> extends Object implements TransactCommand<T>
  • Field Details

  • Constructor Details

    • AbstractTransactCommand

      protected AbstractTransactCommand()
    • AbstractTransactCommand

      public AbstractTransactCommand(HwvtepOperationalState state, Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>> changes)
  • Method Details

    • getOperationalState

      public HwvtepOperationalState getOperationalState()
    • getDataBroker

      public org.opendaylight.mdsal.binding.api.DataBroker getDataBroker()
    • getChanges

      public Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>> getChanges()
    • ops

      public Operations ops()
    • doDeviceTransaction

      public void doDeviceTransaction(TransactionBuilder transaction, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> nodeIid, T data, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key, Object... extraData)
      Specified by:
      doDeviceTransaction in interface TransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject>
    • onConfigUpdate

      public void onConfigUpdate(TransactionBuilder transaction, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> nodeIid, T data, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key, Object... extraData)
      Specified by:
      onConfigUpdate in interface TransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject>
    • augmentation

      protected A augmentation(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • getData

      protected Map<I,T> getData(A augmentation)
    • getData

      protected List<T> getData(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node node)
    • extractRemoved

      protected @NonNull Map<org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>,List<T>> extractRemoved(Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>> modification, Class<T> class1)
    • extractUpdated

      protected @NonNull Map<org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>,List<T>> extractUpdated(Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node>> modification, Class<T> class1)
    • getClassType

      protected Type getClassType()
    • areEqual

      protected boolean areEqual(T obj1, T obj2)
    • getDependencyGetter

      protected UnMetDependencyGetter<T> getDependencyGetter()
    • cascadeDelete

      protected boolean cascadeDelete()
      Tells if this object needs to be deleted if its dependent object gets deleted Ex : LocalUcastMac and LocalMacstMac.
      Returns:
      true if this object needs to be deleted if its dependent object gets deleted
    • isDeleteCmd

      protected boolean isDeleteCmd()
    • getDeviceInfo

      protected HwvtepDeviceInfo getDeviceInfo()
    • getDeviceTransaction

      protected TransactionBuilder getDeviceTransaction()
    • onSuccess

      public void onSuccess(TransactionBuilder deviceTx)
      Specified by:
      onSuccess in interface TransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject>
    • onFailure

      public void onFailure(TransactionBuilder deviceTx)
      Specified by:
      onFailure in interface TransactCommand<T extends org.opendaylight.yangtools.yang.binding.KeyAware<I> & org.opendaylight.yangtools.yang.binding.DataObject>
    • onCommandSucceeded

      protected void onCommandSucceeded()
    • onCommandFailed

      protected void onCommandFailed()
    • fetchDeviceData

      public <T> HwvtepDeviceInfo.DeviceData fetchDeviceData(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key)
    • addJobToQueue

      public <K extends org.opendaylight.yangtools.yang.binding.KeyAware> void addJobToQueue(DependentJob<K> job)
    • markKeyAsInTransit

      public void markKeyAsInTransit(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key)
    • getDeviceOpData

      public HwvtepDeviceInfo.DeviceData getDeviceOpData(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key)
    • clearConfigData

      public void clearConfigData(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key)
    • getConfigData

      public HwvtepDeviceInfo.DeviceData getConfigData(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key)
    • updateConfigData

      public void updateConfigData(Class<? extends org.opendaylight.yangtools.yang.binding.KeyAware> cls, org.opendaylight.yangtools.yang.binding.InstanceIdentifier key, Object data)
    • getClone

      public AbstractTransactCommand getClone()
    • getTableReader

      public HwvtepTableReader getTableReader()
    • getConnectionInstance

      public HwvtepConnectionInstance getConnectionInstance()
    • newOperState

      public HwvtepOperationalState newOperState()
    • getNodeKeyStr

      protected String getNodeKeyStr(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> iid)
    • getKeyStr

      protected String getKeyStr(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> iid)
    • getLsKeyStr

      protected String getLsKeyStr(org.opendaylight.yangtools.yang.binding.InstanceIdentifier iid)