public class SfcOfFlowWriterImpl extends Object implements SfcOfFlowWriterInterface
| Constructor and Description |
|---|
SfcOfFlowWriterImpl() |
SfcOfFlowWriterImpl(org.opendaylight.controller.md.sal.binding.api.DataBroker theDataBroker) |
| Modifier and Type | Method and Description |
|---|---|
Set<org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId> |
clearSffsIfNoRspExists()
Clear all flows from the SFFs whenever they are not featured in any RSP.
|
void |
deleteFlowSet() |
void |
deleteRspFlows(Long rspId)
Delete all flows created for the given rspId (flows are stored in a
deletion buffer; actual transactional deletion is performed when
deleteFlowSet() is called.
|
void |
deregisterTransactionListener(Object interestedParty) |
void |
flushFlows()
From previous calls to writeFlowToConfig(), flows were stored per table
and per SFF.
|
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder |
getFlowBuilder()
Return the last flow builder Used mainly in Unit Testing.
|
void |
injectTransaction(org.opendaylight.controller.md.sal.binding.api.WriteTransaction theTx) |
void |
purgeFlows()
Purge any unwritten flows not written-deleted yet.
|
void |
registerTransactionListener(Object interestedParty) |
void |
removeFlow(FlowDetails theFlowData) |
void |
removeFlow(String sffNodeName,
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowKey flowKey,
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.TableKey tableKey) |
boolean |
removeFlows(Collection<FlowDetails> theFlows) |
void |
setDataProvider(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker) |
void |
shutdown()
Shutdown the thread pool.
|
void |
updateTransactionObject()
Update the inner transaction object, and notify all transaction listeners
through the
EventBus. |
void |
writeFlow(FlowDetails theFlowData) |
void |
writeFlow(Long rspId,
String sffNodeName,
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder flow)
Store a flow to be written later.
|
boolean |
writeFlows(Collection<FlowDetails> theFlows) |
void |
writeGroupToDataStore(String sffNodeName,
org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.GroupBuilder gb,
boolean isAdd) |
public SfcOfFlowWriterImpl()
public SfcOfFlowWriterImpl(org.opendaylight.controller.md.sal.binding.api.DataBroker theDataBroker)
public void setDataProvider(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker)
public void injectTransaction(org.opendaylight.controller.md.sal.binding.api.WriteTransaction theTx)
injectTransaction in interface SfcOfFlowWriterInterfacepublic void shutdown()
throws ExecutionException,
InterruptedException
shutdown in interface SfcOfFlowWriterInterfaceExecutionException - thrown when attempting to retrieve the result of an aborted
taskInterruptedException - thrown when the executor is waiting, sleeping, or occupied,
and it is interruptedpublic void registerTransactionListener(Object interestedParty)
registerTransactionListener in interface SfcOfFlowWriterInterfacepublic void deregisterTransactionListener(Object interestedParty)
deregisterTransactionListener in interface SfcOfFlowWriterInterfacepublic void writeFlow(Long rspId, String sffNodeName, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder flow)
writeFlow in interface SfcOfFlowWriterInterfacesffNodeName - - which SFF to write the flow toflow - - details of the flow to be writtenpublic void writeFlow(FlowDetails theFlowData)
writeFlow in interface SfcOfFlowWriterInterfacepublic boolean writeFlows(Collection<FlowDetails> theFlows)
writeFlows in interface SfcOfFlowWriterInterfacepublic void removeFlow(String sffNodeName, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowKey flowKey, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.TableKey tableKey)
removeFlow in interface SfcOfFlowWriterInterfacepublic void removeFlow(FlowDetails theFlowData)
removeFlow in interface SfcOfFlowWriterInterfacepublic boolean removeFlows(Collection<FlowDetails> theFlows)
removeFlows in interface SfcOfFlowWriterInterfacepublic void flushFlows()
flushFlows in interface SfcOfFlowWriterInterfacepublic void purgeFlows()
purgeFlows in interface SfcOfFlowWriterInterfacepublic void writeGroupToDataStore(String sffNodeName, org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.GroupBuilder gb, boolean isAdd)
writeGroupToDataStore in interface SfcOfFlowWriterInterfacepublic org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder getFlowBuilder()
getFlowBuilder in interface SfcOfFlowWriterInterfacepublic void deleteRspFlows(Long rspId)
deleteRspFlows in interface SfcOfFlowWriterInterfacerspId - - the rspId to delete flows forpublic void deleteFlowSet()
deleteFlowSet in interface SfcOfFlowWriterInterfacepublic Set<org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId> clearSffsIfNoRspExists()
clearSffsIfNoRspExists in interface SfcOfFlowWriterInterfacepublic void updateTransactionObject()
EventBus.updateTransactionObject in interface SfcOfFlowWriterInterfaceCopyright © 2017 OpenDaylight. All rights reserved.