Package org.onosproject.vpls
Class VplsOperationManager
- java.lang.Object
-
- org.onosproject.vpls.VplsOperationManager
-
- All Implemented Interfaces:
VplsOperationService
public class VplsOperationManager extends Object implements VplsOperationService
An implementation of VplsOperationService. Handles the execution order of the VPLS operations generated by the application.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.onosproject.core.ApplicationIdappIdprotected org.onosproject.cluster.ClusterServiceclusterServiceprotected org.onosproject.core.CoreServicecoreServiceprotected org.onosproject.net.host.HostServicehostServiceprotected org.onosproject.net.intent.IntentServiceintentServiceprotected booleanisLeaderprotected org.onosproject.cluster.LeadershipEventListenerleadershipEventListenerprotected org.onosproject.cluster.LeadershipServiceleadershipServiceprotected org.onosproject.cluster.NodeIdlocalNodeIdprotected Map<String,Deque<VplsOperation>>pendingVplsOperationsprotected Map<String,VplsOperation>runningOperationsprotected ScheduledExecutorServiceschedulerExecutorprotected VplsStorevplsStoreprotected ExecutorServiceworkerExecutor
-
Constructor Summary
Constructors Constructor Description VplsOperationManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivate()voiddeactivate()protected static VplsOperationgetOptimizedVplsOperation(Deque<VplsOperation> operations)Optimizes the VPLS operation queue and return a single VPLS operation to execute.voidsubmit(VplsOperation vplsOperation)Submits a VPLS operation.
-
-
-
Field Detail
-
coreService
protected org.onosproject.core.CoreService coreService
-
intentService
protected org.onosproject.net.intent.IntentService intentService
-
leadershipService
protected org.onosproject.cluster.LeadershipService leadershipService
-
clusterService
protected org.onosproject.cluster.ClusterService clusterService
-
hostService
protected org.onosproject.net.host.HostService hostService
-
vplsStore
protected VplsStore vplsStore
-
pendingVplsOperations
protected Map<String,Deque<VplsOperation>> pendingVplsOperations
-
runningOperations
protected final Map<String,VplsOperation> runningOperations
-
schedulerExecutor
protected ScheduledExecutorService schedulerExecutor
-
workerExecutor
protected ExecutorService workerExecutor
-
appId
protected org.onosproject.core.ApplicationId appId
-
isLeader
protected boolean isLeader
-
localNodeId
protected org.onosproject.cluster.NodeId localNodeId
-
leadershipEventListener
protected org.onosproject.cluster.LeadershipEventListener leadershipEventListener
-
-
Method Detail
-
activate
public void activate()
-
deactivate
public void deactivate()
-
submit
public void submit(VplsOperation vplsOperation)
Description copied from interface:VplsOperationServiceSubmits a VPLS operation.- Specified by:
submitin interfaceVplsOperationService- Parameters:
vplsOperation- the VPLS operation to submit
-
getOptimizedVplsOperation
protected static VplsOperation getOptimizedVplsOperation(Deque<VplsOperation> operations)
Optimizes the VPLS operation queue and return a single VPLS operation to execute.- Parameters:
operations- the queue to be optimized- Returns:
- optimized VPLS operation from the queue
-
-