VOL-2850 Reworked RequestQueue so it no longer requires a separate thread.

Also removed start()/stop() functions, which are no longer needed.
Also changed to an unbounded queue (dequeue implementation).

Change-Id: I891dcf68b64c3a08088b6d10fa30dadb8eb6f28d
diff --git a/rw_core/core/logical_device_agent.go b/rw_core/core/logical_device_agent.go
index 9dc873b..4208e32 100644
--- a/rw_core/core/logical_device_agent.go
+++ b/rw_core/core/logical_device_agent.go
@@ -39,10 +39,6 @@
 	"google.golang.org/grpc/status"
 )
 
-const (
-	maxOrderedLogicalDeviceRequestQueueSize = 1000
-)
-
 // LogicalDeviceAgent represent attributes of logical device agent
 type LogicalDeviceAgent struct {
 	logicalDeviceID    string
@@ -83,7 +79,7 @@
 	agent.portProxies = make(map[string]*model.Proxy)
 	agent.logicalPortsNo = make(map[uint32]bool)
 	agent.defaultTimeout = timeout
-	agent.requestQueue = coreutils.NewRequestQueue(agent.serialNumber, maxOrderedLogicalDeviceRequestQueueSize)
+	agent.requestQueue = coreutils.NewRequestQueue()
 	return &agent
 }
 
@@ -105,9 +101,6 @@
 		}
 	}()
 
-	// Launch the request queue - it will launch a go routine
-	agent.requestQueue.Start()
-
 	var ld *voltha.LogicalDevice
 	if !loadFromDB {
 		//Build the logical device based on information retrieved from the device adapter
@@ -246,9 +239,6 @@
 			logger.Debugw("logicaldevice-removed", log.Fields{"logicaldeviceId": agent.logicalDeviceID})
 		}
 
-		// Stop the request queue and request complete indication
-		agent.requestQueue.Stop()
-
 		close(agent.exitChannel)
 
 		logger.Info("logical_device-agent-stopped")