Revert "Bug-2827: role switch proposal"
[openflowplugin.git] / openflowplugin / src / main / java / org / opendaylight / openflowplugin / openflow / md / queue / TicketImpl.java
index 0d25f67013476545d64152129664bbfa5fda3900..cd301de78a3f0700744b34036b23e1443b17b9dc 100644 (file)
@@ -7,33 +7,34 @@
  */
 package org.opendaylight.openflowplugin.openflow.md.queue;
 
-import org.opendaylight.openflowplugin.openflow.md.core.ConnectionConductor;
-import org.opendaylight.yangtools.yang.binding.DataObject;
+import java.util.List;
+
+import org.opendaylight.openflowplugin.api.openflow.md.core.ConnectionConductor;
+import org.opendaylight.openflowplugin.api.openflow.md.queue.QueueKeeper.QueueType;
 
 import com.google.common.util.concurrent.SettableFuture;
 
 /**
- * @author mirehak
- * @param <T> result type
- *
+ * @param <IN> source type
+ * @param <OUT> result type
  */
-public class TicketImpl<T> implements Ticket<T> {
+public class TicketImpl<IN, OUT> implements Ticket<IN, OUT> {
     
-    private DataObject message;
+    private IN message;
     private ConnectionConductor conductor;
-    private SettableFuture<T> future;
-    private Class<? extends DataObject> registeredMessageType;
+    private SettableFuture<List<OUT>> future;
+    private QueueType queueType;
+    private List<OUT> directResult;
     
     /**
-     * default ctor 
+     * default ctor
      */
     public TicketImpl() {
         future = SettableFuture.create();
     }
 
     @Override
-    public SettableFuture<T> getResult() {
-        // TODO Auto-generated method stub
+    public SettableFuture<List<OUT>> getResult() {
         return future;
     }
 
@@ -41,14 +42,14 @@ public class TicketImpl<T> implements Ticket<T> {
      * @return the message
      */
     @Override
-    public DataObject getMessage() {
+    public IN getMessage() {
         return message;
     }
 
     /**
      * @param message the message to set
      */
-    public void setMessage(DataObject message) {
+    public void setMessage(IN message) {
         this.message = message;
     }
 
@@ -66,20 +67,32 @@ public class TicketImpl<T> implements Ticket<T> {
     public void setConductor(ConnectionConductor conductor) {
         this.conductor = conductor;
     }
-
+    
     /**
-     * @param registeredMessageType
+     * @param queueType the queueType to set
      */
-    public void setRegisteredMessageType(
-            Class<? extends DataObject> registeredMessageType) {
-        this.registeredMessageType = registeredMessageType;
+    public void setQueueType(QueueType queueType) {
+        this.queueType = queueType;
     }
     
+    @Override
+    public QueueType getQueueType() {
+        return queueType;
+    }
+
+    /**
+     * @return the directResult
+     */
+    @Override
+    public List<OUT> getDirectResult() {
+        return directResult;
+    }
+
     /**
-     * @return the registeredMessageType
+     * @param directResult the directResult to set
      */
     @Override
-    public Class<? extends DataObject> getRegisteredMessageType() {
-        return registeredMessageType;
+    public void setDirectResult(List<OUT> directResult) {
+        this.directResult = directResult;
     }
 }