BUG 6396 sxp-mapper migration to blueprint 13/43513/4
authorMatej Perina <mperina@cisco.com>
Thu, 18 Aug 2016 14:40:03 +0000 (16:40 +0200)
committerMatej Perina <mperina@cisco.com>
Wed, 24 Aug 2016 11:19:05 +0000 (11:19 +0000)
Change-Id: I6153d4368168e9ca8c7bd5137f93f4a7f75eeccd
Signed-off-by: Matej Perina <mperina@cisco.com>
sxp-mapper/src/main/config/default-config.xml
sxp-mapper/src/main/java/org/opendaylight/controller/config/yang/config/groupbasedpolicy/sxp_mapper/SxpMapperProviderInstance.java [new file with mode: 0644]
sxp-mapper/src/main/java/org/opendaylight/controller/config/yang/config/groupbasedpolicy/sxp_mapper/SxpMapperProviderModule.java
sxp-mapper/src/main/java/org/opendaylight/groupbasedpolicy/sxp/mapper/impl/SxpMapperProviderImpl.java
sxp-mapper/src/main/resources/org/opendaylight/blueprint/sxp-mapper.xml [new file with mode: 0644]
sxp-mapper/src/main/yang/sxp-mapper-cfg.yang

index 0f2d59bb85c49c3c688a4821427d08b506035d69..398e4d6302540f2d57717f772e9532937b5a5b53 100755 (executable)
                         sxp-mapper:sxp-mapper-impl
                     </type>
                     <name>sxp-mapper</name>
-
-                    <data-broker>
-                        <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
-                        <name>binding-data-broker</name>
-                    </data-broker>
-                    <rpc-registry>
-                        <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-rpc-registry</type>
-                        <name>binding-rpc-broker</name>
-                    </rpc-registry>
-                    <domain-specific-registry>
-                        <type xmlns:gbp="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">
-                            gbp:domain-specific-registry
-                        </type>
-                        <name>domain-specific-registry</name>
-                    </domain-specific-registry>
                 </module>
             </modules>
         </data>
diff --git a/sxp-mapper/src/main/java/org/opendaylight/controller/config/yang/config/groupbasedpolicy/sxp_mapper/SxpMapperProviderInstance.java b/sxp-mapper/src/main/java/org/opendaylight/controller/config/yang/config/groupbasedpolicy/sxp_mapper/SxpMapperProviderInstance.java
new file mode 100644 (file)
index 0000000..ec79a0e
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+package org.opendaylight.controller.config.yang.config.groupbasedpolicy.sxp_mapper;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry;
+import org.opendaylight.groupbasedpolicy.sxp.mapper.impl.SxpMapperProviderImpl;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.BaseEndpointService;
+
+public class SxpMapperProviderInstance implements AutoCloseable {
+
+    private SxpMapperProviderImpl sxpMapperProviderImpl;
+
+    public SxpMapperProviderInstance(DataBroker dataBroker, BaseEndpointService endpointService,
+            DomainSpecificRegistry registry ) {
+        sxpMapperProviderImpl = new SxpMapperProviderImpl(dataBroker, endpointService, registry);
+    }
+
+    @Override
+    public void close() throws Exception {
+        sxpMapperProviderImpl.close();
+    }
+
+}
index c7560b6755464135fb95b49331a0dd9b0a6c1948..c419606d2cd47867951e9fa89ca76720a1876676 100644 (file)
@@ -9,7 +9,7 @@
 package org.opendaylight.controller.config.yang.config.groupbasedpolicy.sxp_mapper;
 
 
-import org.opendaylight.groupbasedpolicy.sxp.mapper.impl.SxpMapperProviderImpl;
+import org.opendaylight.controller.sal.common.util.NoopAutoCloseable;
 
 /**
 * sxp-mapper impl module
@@ -30,7 +30,6 @@ public class SxpMapperProviderModule extends org.opendaylight.controller.config.
 
     @Override
     public java.lang.AutoCloseable createInstance() {
-        return new SxpMapperProviderImpl(getDataBrokerDependency(), getRpcRegistryDependency(),
-                getDomainSpecificRegistryDependency());
+        return NoopAutoCloseable.INSTANCE;
     }
 }
index ba8193ed4d91258bcb9a5cb151129966c67aaffa..e70c15cae39c779a3672a0fefc5d507e9da22956 100644 (file)
@@ -9,7 +9,6 @@
 package org.opendaylight.groupbasedpolicy.sxp.mapper.impl;
 
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
 import org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry;
 import org.opendaylight.groupbasedpolicy.api.EndpointAugmentor;
 import org.opendaylight.groupbasedpolicy.sxp.mapper.api.EPTemplateListener;
@@ -48,12 +47,11 @@ public class SxpMapperProviderImpl implements AutoCloseable {
     private final DomainSpecificRegistry domainSpecificRegistry;
     private final EndpointAugmentor sxpEndpointAugmentor;
 
-    public SxpMapperProviderImpl(final DataBroker dataBroker, final RpcProviderRegistry rpcRegistryDependency,
+    public SxpMapperProviderImpl(final DataBroker dataBroker, final BaseEndpointService endpointService,
             final DomainSpecificRegistry domainSpecificRegistry) {
         LOG.info("starting SxmMapper ..");
         this.domainSpecificRegistry = domainSpecificRegistry;
 
-        final BaseEndpointService endpointService = rpcRegistryDependency.getRpcService(BaseEndpointService.class);
         sxpMapperReactor = new SxpMapperReactorImpl(endpointService, dataBroker);
 
         final SimpleCachedDao<Sgt, EndpointPolicyTemplateBySgt> epPolicyTemplateCachedDao = new SimpleCachedDaoImpl<>();
diff --git a/sxp-mapper/src/main/resources/org/opendaylight/blueprint/sxp-mapper.xml b/sxp-mapper/src/main/resources/org/opendaylight/blueprint/sxp-mapper.xml
new file mode 100644 (file)
index 0000000..be8fb2c
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+           xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
+           odl:use-default-for-reference-types="true">
+
+    <reference id="dataBroker" interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"/>
+    <reference id="domainSpecificRegistry" interface="org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry"/>
+    <odl:rpc-service id="baseEndpointService" interface="org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.BaseEndpointService"/>
+
+    <bean id="sxpMapper" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.sxp_mapper.SxpMapperProviderInstance"
+        destroy-method="close">
+        <argument ref="dataBroker"/>
+        <argument ref="baseEndpointService"/>
+        <argument ref="domainSpecificRegistry"/>
+    </bean>
+</blueprint>
\ No newline at end of file
index 8373d9fdb79a2dfebf92fd6ada46ed8c20d28021..f32ac3f26b2dd3297b9f087a41c3a6668ec566c2 100644 (file)
@@ -36,34 +36,6 @@ module sxp-mapper-cfg {
     augment "/config:modules/config:module/config:configuration" {
         case sxp-mapper-impl {
             when "/config:modules/config:module/config:type = 'sxp-mapper-impl'";
-
-            //wires in the data-broker service
-            container data-broker {
-                uses config:service-ref {
-                    refine type {
-                        mandatory true;
-                        config:required-identity mdsal:binding-async-data-broker;
-                    }
-                }
-            }
-            //RPC Registry
-            container rpc-registry {
-                uses config:service-ref {
-                    refine type {
-                        mandatory true;
-                        config:required-identity mdsal:binding-rpc-registry;
-                    }
-                }
-            }
-            //Domain specific registry
-            container domain-specific-registry {
-                uses config:service-ref {
-                    refine type {
-                        mandatory true;
-                        config:required-identity gbpcfg:domain-specific-registry;
-                    }
-                }
-            }
         }
     }
 }