Release Lithium-SR4
[openflowjava.git] / openflow-protocol-api / pom.xml
index 2b8a65c1cff6875270a8cdee5502ff5d0432e061..78184051ad0d7f1a86e237e57cb2f7b8ec2f76e5 100644 (file)
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-       <modelVersion>4.0.0</modelVersion>\r
-       <parent>\r
-               <groupId>org.opendaylight.openflowjava</groupId>\r
-               <artifactId>openflow-protocol-parent</artifactId>\r
-               <version>0.1-SNAPSHOT</version>\r
-       </parent>\r
-       <artifactId>openflow-protocol-api</artifactId>\r
-       <name>Openflow Protocol Library - API</name>\r
-    \r
-    <properties>\r
-        <yangtools.version>0.5.8-SNAPSHOT</yangtools.version>\r
-    </properties>\r
-\r
-       <build>\r
-        <plugins>\r
-            <plugin>\r
-                <groupId>org.opendaylight.yangtools</groupId>\r
-                <artifactId>yang-maven-plugin</artifactId>\r
-                <version>${yangtools.version}</version>\r
-                <executions>\r
-                    <execution>\r
-                        <goals>\r
-                            <goal>generate-sources</goal>\r
-                        </goals>\r
-                        <configuration>\r
-                            <yangFilesRootDir>src/main/yang</yangFilesRootDir>\r
-                            <codeGenerators>\r
-                                <generator>\r
-                                    <codeGeneratorClass>\r
-                                        org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl\r
-                                    </codeGeneratorClass>\r
-                                    <outputBaseDir>\r
-                                        target/generated-sources/sal\r
-                                    </outputBaseDir>\r
-                                </generator>\r
-                            </codeGenerators >\r
-                            <inspectDependencies>true</inspectDependencies>\r
-                        </configuration>\r
-                    </execution>\r
-                </executions>\r
-\r
-                <dependencies>\r
-                    <dependency>\r
-                        <groupId>org.opendaylight.yangtools</groupId>\r
-                        <artifactId>maven-sal-api-gen-plugin</artifactId>\r
-                        <version>${yangtools.version}</version>\r
-                        <type>jar</type>\r
-                    </dependency>\r
-                </dependencies>\r
-            </plugin>\r
-            <plugin>\r
-                <groupId>org.codehaus.mojo</groupId>\r
-                <artifactId>build-helper-maven-plugin</artifactId>\r
-                <version>1.7</version>\r
-                <executions>\r
-                    <execution>\r
-                        <phase>generate-sources</phase>\r
-                        <goals>\r
-                            <goal>add-source</goal>\r
-                        </goals>\r
-                        <configuration>\r
-                            <sources>\r
-                                <source>target/generated-sources/sal</source>\r
-                            </sources>\r
-                        </configuration>\r
-                    </execution>\r
-                </executions>\r
-            </plugin>\r
-            <plugin>\r
-                <groupId>org.apache.maven.plugins</groupId>\r
-                <artifactId>maven-source-plugin</artifactId>\r
-                <executions>\r
-                    <execution>\r
-                        <id>attach-sources</id>\r
-                        <phase>package</phase>\r
-                        <goals>\r
-                            <goal>jar-no-fork</goal>\r
-                        </goals>\r
-                    </execution>\r
-                </executions>\r
-            </plugin>\r
-        </plugins>\r
-        <pluginManagement>\r
-            <plugins>\r
-                <!--This plugin's configuration is used to store Eclipse \r
-                    m2e settings only. It has no influence on the Maven build itself. -->\r
-                <plugin>\r
-                    <groupId>org.eclipse.m2e</groupId>\r
-                    <artifactId>lifecycle-mapping</artifactId>\r
-                    <version>1.0.0</version>\r
-                    <configuration>\r
-                        <lifecycleMappingMetadata>\r
-                            <pluginExecutions>\r
-                                <pluginExecution>\r
-                                    <pluginExecutionFilter>\r
-                                        <groupId>\r
-                                            org.opendaylight.yangtools\r
-                                        </groupId>\r
-                                        <artifactId>\r
-                                            yang-maven-plugin\r
-                                        </artifactId>\r
-                                        <versionRange>\r
-                                            (0.5.6,)\r
-                                        </versionRange>\r
-                                        <goals>\r
-                                            <goal>\r
-                                                generate-sources\r
-                                            </goal>\r
-                                        </goals>\r
-                                    </pluginExecutionFilter>\r
-                                    <action>\r
-                                        <ignore></ignore>\r
-                                    </action>\r
-                                </pluginExecution>\r
-                            </pluginExecutions>\r
-                        </lifecycleMappingMetadata>\r
-                    </configuration>\r
-                </plugin>\r
-            </plugins>\r
-        </pluginManagement>\r
-    </build>\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-binding</artifactId>\r
-            <version>${yangtools.version}</version>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-common</artifactId>\r
-            <version>${yangtools.version}</version>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools.model</groupId>\r
-            <artifactId>ietf-inet-types</artifactId>\r
-            <version>2010.09.24-SNAPSHOT</version>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools.model</groupId>\r
-            <artifactId>ietf-yang-types</artifactId>\r
-            <version>2010.09.24-SNAPSHOT</version>\r
-        </dependency>\r
-        \r
-    </dependencies>\r
-</project>
\ No newline at end of file
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.openflowjava</groupId>
+        <artifactId>openflow-protocol-parent</artifactId>
+        <version>0.6.4-Lithium-SR4</version>
+    </parent>
+    <artifactId>openflow-protocol-api</artifactId>
+    <packaging>bundle</packaging>
+    <name>Openflow Protocol Library - API</name>
+    <scm>
+        <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
+        <tag>HEAD</tag>
+    </scm>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>generate-sources</goal>
+                        </goals>
+                        <configuration>
+                            <yangFilesRootDir>src/main/yang</yangFilesRootDir>
+                            <codeGenerators>
+                                <generator>
+                                    <codeGeneratorClass>
+                                        org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
+                                    </codeGeneratorClass>
+                                    <outputBaseDir>
+                                        ${salGeneratorPath}
+                                    </outputBaseDir>
+                                </generator>
+                                <generator>
+                                    <codeGeneratorClass>org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl</codeGeneratorClass>
+                                    <outputBaseDir>target/site/restconf</outputBaseDir>
+                                </generator>
+                            </codeGenerators>
+                            <inspectDependencies>true</inspectDependencies>
+                        </configuration>
+                    </execution>
+                </executions>
+
+                <dependencies>
+                    <dependency>
+                        <groupId>org.opendaylight.yangtools</groupId>
+                        <artifactId>maven-sal-api-gen-plugin</artifactId>
+                        <version>${yangtools.version}</version>
+                        <type>jar</type>
+                    </dependency>
+                </dependencies>
+            </plugin>
+
+            <!-- TODO: maven-antrun-plugin deletes yang source files from target.
+                       This is done because otherwise openflowjava models are stored in controller
+                       and exposed for further use - which is not desired.
+                       (https://bugs.opendaylight.org/show_bug.cgi?id=2926)
+
+                       This plugin should be removed after relevant configuration is added into 
+                       yang-maven-plugin - which is supposed to happen in BERYLLIUM release -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-antrun-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>run</goal>
+                        </goals>
+                        <configuration>
+                            <tasks>
+                                <delete>
+                                    <fileset dir="${project.build.directory}/classes/META-INF/yang">
+                                        <include name="*.yang"/>
+                                        <exclude name="openflow-types.yang"/>
+                                        <exclude name="openflow-extensible-match.yang"/>
+                                        <exclude name="openflow-action.yang"/>
+                                        <exclude name="openflow-configuration.yang"/>
+                                    </fileset>
+                                    <fileset dir="${project.build.directory}/generated-sources/yang/META-INF/yang">
+                                        <include name="*.yang"/>
+                                        <exclude name="openflow-types.yang"/>
+                                        <exclude name="openflow-extensible-match.yang"/>
+                                        <exclude name="openflow-action.yang"/>
+                                        <exclude name="openflow-configuration.yang"/>
+                                    </fileset>
+                                </delete>
+                            </tasks>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+        <pluginManagement>
+            <plugins>
+                <!--This plugin's configuration is used to store Eclipse 
+                    m2e settings only. It has no influence on the Maven build itself. -->
+                <plugin>
+                    <groupId>org.eclipse.m2e</groupId>
+                    <artifactId>lifecycle-mapping</artifactId>
+                    <version>1.0.0</version>
+                    <configuration>
+                        <lifecycleMappingMetadata>
+                            <pluginExecutions>
+                                <pluginExecution>
+                                    <pluginExecutionFilter>
+                                        <groupId>
+                                            org.opendaylight.yangtools
+                                        </groupId>
+                                        <artifactId>
+                                            yang-maven-plugin
+                                        </artifactId>
+                                        <versionRange>
+                                            (0.5.6,)
+                                        </versionRange>
+                                        <goals>
+                                            <goal>
+                                                generate-sources
+                                            </goal>
+                                        </goals>
+                                    </pluginExecutionFilter>
+                                    <action>
+                                        <ignore />
+                                    </action>
+                                </pluginExecution>
+                            </pluginExecutions>
+                        </lifecycleMappingMetadata>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+    <dependencies>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-binding</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools</groupId>
+            <artifactId>yang-common</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools.model</groupId>
+            <artifactId>ietf-inet-types</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools.model</groupId>
+            <artifactId>ietf-yang-types</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.opendaylight.yangtools.model</groupId>
+            <artifactId>yang-ext</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.netty</groupId>
+            <artifactId>netty-buffer</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-all</artifactId>
+        </dependency>
+    </dependencies>
+</project>