Bug 5596 Cleaning part 1
[openflowplugin.git] / openflowplugin-api / src / main / java / org / opendaylight / openflowplugin / api / openflow / device / DeviceState.java
index 8b7b17e399779161b4e00ef2188559ac449fb79f..becc8d09cb25ee177bad18cfe1e3178a760d06d2 100644 (file)
@@ -8,79 +8,73 @@
 
 package org.opendaylight.openflowplugin.api.openflow.device;
 
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GetFeaturesOutput;
-import org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier;
-
 /**
- * Created by Martin Bobak <mbobak@cisco.com> on 25.2.2015.
+ * Holder of device's structure
  */
 public interface DeviceState {
 
     /**
-     * @return id of encapsulated node
-     */
-    NodeId getNodeId();
-
-    /**
-     * @return {@link Node} instance identifier
+     * Return true if we have relevant meter information
+     * from device
+     *
+     * @return
      */
-    KeyedInstanceIdentifier<Node, NodeKey> getNodeInstanceIdentifier();
+    boolean isMetersAvailable();
 
     /**
-     * @return the features of corresponding switch
+     * Set information about meter statistics availability.
      */
-    GetFeaturesOutput getFeatures();
+    void setMeterAvailable(boolean available);
 
     /**
-     * @return true if this session is valid
+     * Return true if we have relevant group information
+     * from device
+     *
+     * @return
      */
-    boolean isValid();
+    boolean isGroupAvailable();
 
     /**
-     * @param valid the valid to set
+     * Set information about group statistics availability.
      */
-    void setValid(boolean valid);
+    void setGroupAvailable(boolean available);
 
     /**
-     * Return node current OF protocol version
+     * Method returns true, if device capabilities provides flow statistics.
      *
      * @return
      */
-    short getVersion();
+    boolean isFlowStatisticsAvailable();
+
+    void setFlowStatisticsAvailable(boolean available);
 
     /**
-     * Return true if we have relevant meter information
-     * from device
+     * Method returns true, if device capabilities provides table statistics.
+     *
      * @return
      */
-    boolean isMetersAvailable();
+    boolean isTableStatisticsAvailable();
 
-    /**
-     * We already have information about meters
-     */
-    void meterIsAvailable();
+    void setTableStatisticsAvailable(boolean available);
 
     /**
-     * Return true if we have relevant group information
-     * from device
+     * Method returns true, if device capabilities provides flow statistics.
+     *
      * @return
      */
-    boolean isGroupAvailable();
+    boolean isPortStatisticsAvailable();
 
-    /**
-     * We already have information about groups
-     */
-    void groupIsAvailable();
+    void setPortStatisticsAvailable(boolean available);
 
     /**
-     * Method returns true if initial statistics data were collected and written to DS.
+     * Method returns true, if device capabilities provides queue statistics.
+     *
      * @return
      */
-    boolean deviceSynchronized();
+    boolean isQueueStatisticsAvailable();
+
+    void setQueueStatisticsAvailable(boolean available);
 
-    void setDeviceSynchronized(boolean deviceSynchronized);
+    boolean isStatisticsPollingEnabled();
 
 }