package org.opendaylight.openflowplugin.applications.frm;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
+import org.opendaylight.openflowplugin.applications.frm.impl.FlowNodeConnectorInventoryTranslatorImpl;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.meters.Meter;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.service.rev130918.SalGroupService;
import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.Group;
import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.SalMeterService;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflowplugin.app.forwardingrules.manager.config.rev160511.ForwardingRulesManagerConfig;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.table.service.rev131026.SalTableService;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.table.types.rev131026.table.features.TableFeatures;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
/**
*/
public boolean isNodeActive(InstanceIdentifier<FlowCapableNode> ident);
+ /**
+ * Method returns information :
+ * "is Node with send InstanceIdentifier present in operational data store"?
+ *
+ * @param ident - the key of the node
+ * @return boolean - true if device is present in operational data store
+ */
+ public boolean checkNodeInOperationalDataStore(InstanceIdentifier<FlowCapableNode> ident);
+
/**
* Method add new {@link FlowCapableNode} to active Node Holder.
* ActiveNodeHolder prevent unnecessary Operational/DS read for identify
*/
public SalMeterService getSalMeterService();
+ /**
+ * Table RPC service
+ *
+ * @return
+ */
+ public SalTableService getSalTableService();
+
/**
* Content definition method and prevent code duplicity in Reconcil
* @return ForwardingRulesCommiter<Flow>
*/
public ForwardingRulesCommiter<Meter> getMeterCommiter();
+ /**
+ * Content definition method and prevent code duplicity
+ * @return ForwardingRulesCommiter<Table>
+ */
+ public ForwardingRulesCommiter<TableFeatures> getTableFeaturesCommiter();
+
/**
* Content definition method
* @return FlowNodeReconciliation
*/
public FlowNodeReconciliation getFlowNodeReconciliation();
+
+ /**
+ * Returns the config-subsystem/fallback configuration of FRM
+ * @return ForwardingRulesManagerConfig
+ */
+ public ForwardingRulesManagerConfig getConfiguration();
+
+ /**
+ * Method checks if *this* instance of openflowplugin is owner of
+ * the given openflow node.
+ * @return True if owner, else false
+ */
+ public boolean isNodeOwner(InstanceIdentifier<FlowCapableNode> ident);
+
+ /**
+ * Content definition method and prevent code duplicity
+ * @return FlowNodeConnectorInventoryTranslatorImpl
+ */
+ public FlowNodeConnectorInventoryTranslatorImpl getFlowNodeConnectorInventoryTranslatorImpl();
+
}