From cdb415324f1d52a0ca9c48042f879a9fcfb4251a Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 28 Nov 2013 14:30:54 +0100 Subject: [PATCH] Make sure config.yang is MD-SAL enabled In the controller-controlling-controllers scenario we need to be able to generate MD-SAL bindings against config subsystem models. In order to do that, we need the base definitions provided by config.yang. This patch subjects all config components to MD-SAL binding generation and introduces a new parent, which adds another execution to generate JMX bindings. Infrastructure components continue to use config-subsystem parent while the various config plugins (netty et al.) switch to the new config-plugin-parent. Change-Id: Id243d658a95ccfee0dbfe70044867f8de09cc20e Signed-off-by: Robert Varga --- opendaylight/config/config-api/pom.xml | 25 ++++-- .../{resources/META-INF => }/yang/config.yang | 0 .../META-INF => }/yang/rpc-context.yang | 0 opendaylight/config/config-manager/pom.xml | 10 --- .../config/config-persister-api/pom.xml | 5 -- .../config-persister-file-adapter/pom.xml | 15 ---- .../config/config-plugin-parent/pom.xml | 83 +++++++++++++++++++ opendaylight/config/logback-config/pom.xml | 26 ++---- opendaylight/config/netty-config-api/pom.xml | 18 ++-- .../netty-event-executor-config/pom.xml | 21 ++--- .../config/netty-threadgroup-config/pom.xml | 16 +--- .../config/netty-timer-config/pom.xml | 23 ++--- opendaylight/config/pom.xml | 67 +++++++-------- .../config/threadpool-config-api/pom.xml | 16 ++-- .../config/threadpool-config-impl/pom.xml | 20 ++--- .../config/yang-jmx-generator/pom.xml | 12 --- opendaylight/config/yang-store-api/pom.xml | 4 - opendaylight/config/yang-store-impl/pom.xml | 17 ---- opendaylight/config/yang-test/pom.xml | 5 +- 19 files changed, 183 insertions(+), 200 deletions(-) rename opendaylight/config/config-api/src/main/{resources/META-INF => }/yang/config.yang (100%) rename opendaylight/config/config-api/src/main/{resources/META-INF => }/yang/rpc-context.yang (100%) create mode 100644 opendaylight/config/config-plugin-parent/pom.xml diff --git a/opendaylight/config/config-api/pom.xml b/opendaylight/config/config-api/pom.xml index d733834b43..38fb8ed66b 100644 --- a/opendaylight/config/config-api/pom.xml +++ b/opendaylight/config/config-api/pom.xml @@ -1,4 +1,5 @@ - + + @@ -25,8 +26,11 @@ org.opendaylight.yangtools - concepts - ${opendaylight.yangtools.version} + yang-binding + + + org.opendaylight.yangtools + yang-common @@ -37,11 +41,6 @@ maven-bundle-plugin - - javax.management, - org.opendaylight.yangtools.concepts, - org.osgi.framework, - org.opendaylight.controller.config.api, org.opendaylight.controller.config.api.annotations, @@ -49,10 +48,20 @@ org.opendaylight.controller.config.api.jmx, org.opendaylight.controller.config.api.jmx.constants, org.opendaylight.controller.config.api.runtime, + org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.rpc.context.rev130617.*, + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.config.rev130405.*, + + org.opendaylight.yangtools + yang-maven-plugin + + + org.codehaus.mojo + build-helper-maven-plugin + diff --git a/opendaylight/config/config-api/src/main/resources/META-INF/yang/config.yang b/opendaylight/config/config-api/src/main/yang/config.yang similarity index 100% rename from opendaylight/config/config-api/src/main/resources/META-INF/yang/config.yang rename to opendaylight/config/config-api/src/main/yang/config.yang diff --git a/opendaylight/config/config-api/src/main/resources/META-INF/yang/rpc-context.yang b/opendaylight/config/config-api/src/main/yang/rpc-context.yang similarity index 100% rename from opendaylight/config/config-api/src/main/resources/META-INF/yang/rpc-context.yang rename to opendaylight/config/config-api/src/main/yang/rpc-context.yang diff --git a/opendaylight/config/config-manager/pom.xml b/opendaylight/config/config-manager/pom.xml index b55b5da8a2..32f14daaed 100644 --- a/opendaylight/config/config-manager/pom.xml +++ b/opendaylight/config/config-manager/pom.xml @@ -84,16 +84,6 @@ org.opendaylight.controller.config.manager.*, javax.annotation.*, - - org.opendaylight.controller.config.api.*, - org.opendaylight.controller.config.spi.*, - org.slf4j, - javax.management, - org.osgi.framework, - org.opendaylight.yangtools.concepts.*, - org.apache.commons.io, - org.osgi.util.tracker, - diff --git a/opendaylight/config/config-persister-api/pom.xml b/opendaylight/config/config-persister-api/pom.xml index 51f8c0b825..80016a804b 100644 --- a/opendaylight/config/config-persister-api/pom.xml +++ b/opendaylight/config/config-persister-api/pom.xml @@ -29,11 +29,6 @@ maven-bundle-plugin - - com.google.common.base, - org.w3c.dom, - org.osgi.framework, - org.opendaylight.controller.config.persist.api, org.opendaylight.controller.config.persist.api.storage, diff --git a/opendaylight/config/config-persister-file-adapter/pom.xml b/opendaylight/config/config-persister-file-adapter/pom.xml index d34dc37707..b16cb2b6f3 100644 --- a/opendaylight/config/config-persister-file-adapter/pom.xml +++ b/opendaylight/config/config-persister-file-adapter/pom.xml @@ -69,21 +69,6 @@ org.opendaylight.controller.config.persister.storage.adapter - - org.osgi.framework, - com.google.common.base, - com.google.common.collect, - com.google.common.io, - javax.xml.parsers, - javax.xml.transform, - javax.xml.transform.dom, - javax.xml.transform.stream, - org.apache.commons.lang3, - org.opendaylight.controller.config.persist.api, - org.slf4j, - org.w3c.dom, - org.xml.sax, - diff --git a/opendaylight/config/config-plugin-parent/pom.xml b/opendaylight/config/config-plugin-parent/pom.xml new file mode 100644 index 0000000000..7696ae5573 --- /dev/null +++ b/opendaylight/config/config-plugin-parent/pom.xml @@ -0,0 +1,83 @@ + + + + + org.opendaylight.controller + config-subsystem + 0.2.3-SNAPSHOT + + 4.0.0 + config-plugin-parent + ${project.artifactId} + pom + + 3.0.4 + + + + ${project.build.directory}/generated-sources/config + + + + + + + org.opendaylight.yangtools + yang-maven-plugin + + + config + + generate-sources + + + + + + org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator + + ${jmxGeneratorPath} + + + urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang + + + + + true + + + + + + org.opendaylight.controller + yang-jmx-generator-plugin + ${config.version} + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 1.8 + + + add-source + generate-sources + + add-source + + + + ${jmxGeneratorPath} + + + + + + + + + diff --git a/opendaylight/config/logback-config/pom.xml b/opendaylight/config/logback-config/pom.xml index b63f3298c1..7d01d288ed 100644 --- a/opendaylight/config/logback-config/pom.xml +++ b/opendaylight/config/logback-config/pom.xml @@ -1,12 +1,14 @@ - + + 4.0.0 org.opendaylight.controller - config-subsystem + config-plugin-parent 0.2.3-SNAPSHOT + ../config-plugin-parent logback-config ${project.artifactId} @@ -79,27 +81,9 @@ - - ch.qos.logback.classic, - ch.qos.logback.classic.encoder, - ch.qos.logback.classic.filter, - ch.qos.logback.classic.spi, - ch.qos.logback.core, - ch.qos.logback.core.status, - ch.qos.logback.core.encoder, - ch.qos.logback.core.rolling, - org.opendaylight.controller.config.api, - org.opendaylight.controller.config.api.runtime, - org.opendaylight.controller.config.api.annotations, - org.opendaylight.controller.config.spi, - com.google.common.base, - com.google.common.collect, - org.apache.commons.lang3, - org.slf4j, - org.osgi.framework - org.opendaylight.controller.config.yang.logback.config, + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.logback.config.rev130716.*, diff --git a/opendaylight/config/netty-config-api/pom.xml b/opendaylight/config/netty-config-api/pom.xml index 9a2fe37258..19c926a2fb 100644 --- a/opendaylight/config/netty-config-api/pom.xml +++ b/opendaylight/config/netty-config-api/pom.xml @@ -1,8 +1,11 @@ + + org.opendaylight.controller - config-subsystem - 0.2.3-SNAPSHOT + config-plugin-parent + 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 netty-config-api @@ -33,14 +36,9 @@ maven-bundle-plugin - - org.opendaylight.controller.config.api.*, - io.netty.channel, - io.netty.util, - io.netty.util.concurrent - - org.opendaylight.controller.config.yang.netty + org.opendaylight.controller.config.yang.netty, + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.netty.rev131119.*, @@ -51,4 +49,4 @@ - \ No newline at end of file + diff --git a/opendaylight/config/netty-event-executor-config/pom.xml b/opendaylight/config/netty-event-executor-config/pom.xml index 3d5384d171..2fce3596d4 100644 --- a/opendaylight/config/netty-event-executor-config/pom.xml +++ b/opendaylight/config/netty-event-executor-config/pom.xml @@ -1,9 +1,12 @@ + + org.opendaylight.controller - config-subsystem - 0.2.3-SNAPSHOT + config-plugin-parent + 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 netty-event-executor-config @@ -73,18 +76,8 @@ ${project.groupId}.${project.artifactId} + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.netty.eventexecutor.rev131112.*, - - com.google.common.base, - org.opendaylight.controller.config.yang.netty, - io.netty.util.concurrent, - org.opendaylight.controller.config.api, - org.opendaylight.controller.config.api.annotations, - org.opendaylight.controller.config.api.runtime, - org.opendaylight.controller.config.spi, - org.slf4j, - org.osgi.framework - @@ -99,4 +92,4 @@ - \ No newline at end of file + diff --git a/opendaylight/config/netty-threadgroup-config/pom.xml b/opendaylight/config/netty-threadgroup-config/pom.xml index 8dc989e728..d35067af09 100644 --- a/opendaylight/config/netty-threadgroup-config/pom.xml +++ b/opendaylight/config/netty-threadgroup-config/pom.xml @@ -5,8 +5,9 @@ org.opendaylight.controller - config-subsystem + config-plugin-parent 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 @@ -80,19 +81,8 @@ ${project.groupId}.${project.artifactId} + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.netty.threadgroup.rev131107.*, - - com.google.common.base, - io.netty.channel.nio, - org.opendaylight.controller.config.yang.netty, - io.netty.util.concurrent, - org.opendaylight.controller.config.api, - org.opendaylight.controller.config.api.annotations, - org.opendaylight.controller.config.api.runtime, - org.opendaylight.controller.config.spi, - org.slf4j, - org.osgi.framework - diff --git a/opendaylight/config/netty-timer-config/pom.xml b/opendaylight/config/netty-timer-config/pom.xml index 095e71fcf5..161d39278a 100644 --- a/opendaylight/config/netty-timer-config/pom.xml +++ b/opendaylight/config/netty-timer-config/pom.xml @@ -1,9 +1,12 @@ + + org.opendaylight.controller - config-subsystem - 0.2.3-SNAPSHOT + config-plugin-parent + 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 netty-timer-config @@ -84,20 +87,8 @@ ${project.groupId}.${project.artifactId} + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.netty.timer.rev131119.*, - - javax.management, - com.google.common.base, - org.opendaylight.controller.config.yang.netty, - org.opendaylight.controller.config.yang.threadpool, - io.netty.util, - org.opendaylight.controller.config.api, - org.opendaylight.controller.config.api.annotations, - org.opendaylight.controller.config.api.runtime, - org.opendaylight.controller.config.spi, - org.slf4j, - org.osgi.framework - @@ -111,4 +102,4 @@ ${basedir}/target/site/${project.artifactId} - \ No newline at end of file + diff --git a/opendaylight/config/pom.xml b/opendaylight/config/pom.xml index c1eef701da..c9ed19dacb 100644 --- a/opendaylight/config/pom.xml +++ b/opendaylight/config/pom.xml @@ -1,3 +1,5 @@ + + 4.0.0 @@ -20,6 +22,7 @@ config-api config-manager + config-plugin-parent config-util config-persister-api config-persister-file-adapter @@ -63,7 +66,6 @@ 0.5.9-SNAPSHOT 0.6.0-SNAPSHOT 0.1.1-SNAPSHOT - ${project.build.directory}/generated-sources/config @@ -223,6 +225,23 @@ yang-store-api ${config.version} + + + + org.opendaylight.yangtools + yang-binding + ${opendaylight.binding.version} + + + org.opendaylight.yangtools + yang-common + ${opendaylight.yang.version} + + + org.opendaylight.yangtools + concepts + ${opendaylight.yangtools.version} + @@ -270,8 +289,6 @@ - - @@ -280,21 +297,24 @@ ${opendaylight.yang.version} + sal generate-sources + src/main/yang - org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator + org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl - ${jmxGeneratorPath} - - - urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang - - + + target/generated-sources/sal + + + + org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl + target/site true @@ -303,32 +323,13 @@ - org.opendaylight.controller - yang-jmx-generator-plugin - ${config.version} + org.opendaylight.yangtools + maven-sal-api-gen-plugin + ${opendaylight.binding.version} + jar - - - org.codehaus.mojo - build-helper-maven-plugin - 1.8 - - - add-source - generate-sources - - add-source - - - - ${jmxGeneratorPath} - - - - - org.apache.maven.plugins maven-jar-plugin diff --git a/opendaylight/config/threadpool-config-api/pom.xml b/opendaylight/config/threadpool-config-api/pom.xml index 5c70ac7958..49e9f0da9a 100644 --- a/opendaylight/config/threadpool-config-api/pom.xml +++ b/opendaylight/config/threadpool-config-api/pom.xml @@ -1,9 +1,12 @@ + + org.opendaylight.controller - config-subsystem - 0.2.3-SNAPSHOT + config-plugin-parent + 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 threadpool-config-api @@ -31,13 +34,10 @@ maven-bundle-plugin - - org.opendaylight.controller.config.api.*, - com.google.common.eventbus, - org.opendaylight.controller.config.threadpool, - org.opendaylight.controller.config.yang.threadpool + org.opendaylight.controller.config.yang.threadpool, + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.threadpool.rev130409.*, @@ -48,4 +48,4 @@ - \ No newline at end of file + diff --git a/opendaylight/config/threadpool-config-impl/pom.xml b/opendaylight/config/threadpool-config-impl/pom.xml index cde64363cf..4cbe397693 100644 --- a/opendaylight/config/threadpool-config-impl/pom.xml +++ b/opendaylight/config/threadpool-config-impl/pom.xml @@ -1,9 +1,12 @@ + + org.opendaylight.controller - config-subsystem - 0.2.3-SNAPSHOT + config-plugin-parent + 0.2.3-SNAPSHOT + ../config-plugin-parent 4.0.0 threadpool-config-impl @@ -68,18 +71,9 @@ javax.annotation.*, org.opendaylight.controller.config.yang.threadpool.impl, - - org.opendaylight.controller.config.api.*, - org.opendaylight.controller.config.spi.*, - org.opendaylight.controller.config.threadpool, - org.opendaylight.controller.config.yang.threadpool, - javax.management, - org.osgi.framework, - org.slf4j, - com.google.common.* - - org.opendaylight.controller.config.threadpool.util + org.opendaylight.controller.config.threadpool.util, + org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.threadpool.impl.rev130405.*, diff --git a/opendaylight/config/yang-jmx-generator/pom.xml b/opendaylight/config/yang-jmx-generator/pom.xml index cd985714d4..c312cc8493 100644 --- a/opendaylight/config/yang-jmx-generator/pom.xml +++ b/opendaylight/config/yang-jmx-generator/pom.xml @@ -69,18 +69,6 @@ org.opendaylight.controller.config.yangjmxgenerator.plugin.util, - - org.slf4j, - com.google.common.base, - com.google.common.collect, - javax.management.*, - - org.opendaylight.yangtools.binding.generator.util, - org.opendaylight.yangtools.sal.binding.generator.spi, - org.opendaylight.yangtools.sal.binding.model.api, - org.opendaylight.yangtools.yang.common, - org.opendaylight.yangtools.yang.model.api - org.opendaylight.controller.config.yangjmxgenerator, org.opendaylight.controller.config.yangjmxgenerator.attribute, diff --git a/opendaylight/config/yang-store-api/pom.xml b/opendaylight/config/yang-store-api/pom.xml index 382dced3e7..c97eade26c 100644 --- a/opendaylight/config/yang-store-api/pom.xml +++ b/opendaylight/config/yang-store-api/pom.xml @@ -25,10 +25,6 @@ maven-bundle-plugin - - org.opendaylight.controller.config.yangjmxgenerator, - org.opendaylight.yangtools.yang.model.api - org.opendaylight.controller.config.yang.store.api, diff --git a/opendaylight/config/yang-store-impl/pom.xml b/opendaylight/config/yang-store-impl/pom.xml index 7b79c831f8..3b0d58a32f 100644 --- a/opendaylight/config/yang-store-impl/pom.xml +++ b/opendaylight/config/yang-store-impl/pom.xml @@ -59,23 +59,6 @@ org.opendaylight.controller.config.yang.store.impl.YangStoreActivator - - org.opendaylight.controller.config.yang.store.api, - org.opendaylight.controller.config.yangjmxgenerator, - com.google.common.base, - com.google.common.collect, - com.google.common.primitives, - org.apache.commons.io, - org.osgi.framework, - org.osgi.util.tracker, - org.slf4j, - - org.opendaylight.yangtools.sal.binding.yang.types, - org.opendaylight.yangtools.yang.common, - org.opendaylight.yangtools.yang.model.api, - org.opendaylight.yangtools.sal.binding.generator.spi, - org.opendaylight.yangtools.yang.parser.impl, - diff --git a/opendaylight/config/yang-test/pom.xml b/opendaylight/config/yang-test/pom.xml index f8d86b28bb..e3737c78f3 100644 --- a/opendaylight/config/yang-test/pom.xml +++ b/opendaylight/config/yang-test/pom.xml @@ -1,11 +1,14 @@ + + 4.0.0 org.opendaylight.controller - config-subsystem + config-plugin-parent 0.2.3-SNAPSHOT + ../config-plugin-parent yang-test -- 2.36.6