InstanceIdentifierUtils { public static InstanceIdentifier<Flow> generateFlowInstanceIdentifier(final NodeConnectorRef nodeConnectorRef, final TableKey flowTableKey, final FlowKey flowKey) { return generateFlowTableInstanceIdentifier(nodeConnectorRef, flowTableKey).child(Flow.class, flowKey); } private  InstanceIdentifierUtils(); static InstanceIdentifier<Node> generateNodeInstanceIdentifier(final NodeConnectorRef nodeConnectorRef); static InstanceIdentifier<Table> generateFlowTableInstanceIdentifier(final NodeConnectorRef nodeConnectorRef,
            final TableKey flowTableKey); static InstanceIdentifier<Flow> generateFlowInstanceIdentifier(final NodeConnectorRef nodeConnectorRef,
            final TableKey flowTableKey, final FlowKey flowKey);  }
@Test public void testGenerateFlowInstanceIdentifier() throws Exception { NodeConnectorRef ncRef = new NodeConnectorRef( InstanceIdentifier.builder(Nodes.class).child(Node.class, new NodeKey(new NodeId(STR_ID_1))) .child(NodeConnector.class, new NodeConnectorKey(new NodeConnectorId(STR_ID_1))).build()); InstanceIdentifier<Flow> flowInsId = InstanceIdentifierUtils.generateFlowInstanceIdentifier(ncRef, new TableKey(NUM_ID_1), new FlowKey(new FlowId(STR_ID_1))); assertNotNull(flowInsId); assertEquals(NUM_ID_1, flowInsId.firstKeyOf(Table.class, TableKey.class).getId()); assertEquals(STR_ID_1, flowInsId.firstKeyOf(Flow.class, FlowKey.class).getId().getValue()); }