X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcompatibility%2Fsal-compatibility%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcompatibility%2FComponentActivator.java;h=4fc0cf75b33702574f12ecb605d87d5392566086;hp=ba68d523af7faf32efd1e17ee040558f7a4b1323;hb=175950301a22b48acd9630c40392f0272decba9a;hpb=37f2912ce3af03dfafaa63a5a0c9c97219ae34d3 diff --git a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.java b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.java index ba68d523af..4fc0cf75b3 100644 --- a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.java +++ b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.java @@ -83,6 +83,7 @@ public class ComponentActivator extends ComponentActivatorAbstractBase { @Override protected void init() { + // TODO: deprecated, should be removed soon NodeIDType.registerIDType(NodeMapping.MD_SAL_TYPE, String.class); NodeConnectorIDType.registerIDType(NodeMapping.MD_SAL_TYPE, String.class, NodeMapping.MD_SAL_TYPE); } @@ -138,6 +139,7 @@ public class ComponentActivator extends ComponentActivatorAbstractBase { protected Object[] getImplementations() { return new Object[] { dataPacketService, + inventory, }; } @@ -147,6 +149,8 @@ public class ComponentActivator extends ComponentActivatorAbstractBase { _instanceConfigure((ComponentActivator)imp, c, containerName); } else if (imp instanceof DataPacketServiceAdapter) { _instanceConfigure((DataPacketServiceAdapter)imp, c, containerName); + } else if (imp instanceof InventoryAndReadAdapter) { + _instanceConfigure((InventoryAndReadAdapter)imp, c, containerName); } else { throw new IllegalArgumentException(String.format("Unhandled implementation class %s", imp.getClass())); } @@ -214,6 +218,22 @@ public class ComponentActivator extends ComponentActivatorAbstractBase { .setRequired(false)); } + private void _instanceConfigure(final InventoryAndReadAdapter imp, final Component it, String containerName) { + it.setInterface(new String[] { + IPluginInInventoryService.class.getName(), + IPluginInReadService.class.getName(), + }, properties()); + + it.add(createServiceDependency() + .setService(IPluginOutReadService.class) + .setCallbacks("setReadPublisher", "unsetReadPublisher") + .setRequired(false)); + it.add(createServiceDependency() + .setService(IPluginOutInventoryService.class) + .setCallbacks("setInventoryPublisher", "unsetInventoryPublisher") + .setRequired(false)); + } + private void _configure(final TopologyAdapter imp, final Component it) { it.setInterface(IPluginInTopologyService.class.getName(), properties()); @@ -232,8 +252,8 @@ public class ComponentActivator extends ComponentActivatorAbstractBase { private Dictionary properties() { final Hashtable props = new Hashtable(); - props.put(GlobalConstants.PROTOCOLPLUGINTYPE.toString(), NodeMapping.MD_SAL_TYPE); - props.put("protocolName", NodeMapping.MD_SAL_TYPE); + props.put(GlobalConstants.PROTOCOLPLUGINTYPE.toString(), NodeIDType.OPENFLOW); + props.put("protocolName", NodeIDType.OPENFLOW); return props; } }