1 <?xml version="1.0" encoding="UTF-8"?>
2 <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">
3 <modelVersion>4.0.0</modelVersion>
5 <groupId>org.opendaylight.controller</groupId>
6 <artifactId>commons.opendaylight</artifactId>
7 <version>1.4.2-SNAPSHOT</version>
8 <relativePath>../../commons/opendaylight</relativePath>
11 <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
12 <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
13 <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:Main</url>
17 <artifactId>northbound.client</artifactId>
18 <version>0.0.1-SNAPSHOT</version>
19 <packaging>pom</packaging>
22 <docs.output.dir>${project.build.directory}/rest-api-docs</docs.output.dir>
23 <java-client>${project.build.directory}/enunciate/build/java-client/full-client.jar</java-client>
24 <java-client-sources>${project.build.directory}/enunciate/build/java-client/full-client-sources.jar</java-client-sources>
25 <json-client>${project.build.directory}/enunciate/build/java-client/full-json-client.jar</json-client>
26 <json-client-sources>${project.build.directory}/enunciate/build/java-client/full-json-client-sources.jar</json-client-sources>
32 <groupId>org.codehaus.enunciate</groupId>
33 <artifactId>maven-enunciate-plugin</artifactId>
37 <groupId>org.apache.maven.plugins</groupId>
38 <artifactId>maven-antrun-plugin</artifactId>
39 <version>1.5</version>
42 <phase>package</phase>
50 <taskdef resource="net/sf/antcontrib/antcontrib.properties"
51 classpathref="maven.plugin.classpath" />
52 <patternset id="rest.paths">
53 <include name="**/target/site/wsdocs/**"/>
54 <exclude name="**/java-client/**"/>
57 <echo message="======== Assembling enunciate docs ========"/>
58 <!-- cleanup existing generated files -->
59 <delete dir="${docs.output.dir}"/>
60 <delete file="${docs.output.dir}.zip"/>
61 <mkdir dir="${docs.output.dir}"/>
62 <!-- copy enunciate docs to stage -->
63 <copy todir="${docs.output.dir}">
64 <fileset dir="${basedir}/../../..">
65 <patternset refid="rest.paths"/>
68 from="^(.*)/([^/]+)/target/site/wsdocs/(.*)$$"
71 <!-- generate index.html -->
72 <!-- append header -->
73 <echo file="${docs.output.dir}/index.html" append="true">
77 <title> OpenDaylight REST API Documentation </title>
80 <h2>OpenDaylight REST API Documentation</h2>
81 <p> OpenDaylight supports the following <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer">Representational State Transfer (REST)</a> APIs: </p>
85 <dirset id="nbset" dir="${docs.output.dir}">
88 <pathconvert pathsep="&#36;{line.separator}"
91 <echo file="${docs.output.dir}/index.html"
94 <replaceregexp file="${docs.output.dir}/index.html"
95 match="^\${docs.output.dir}/(.*)$"
96 replace="&lt;li&gt;&lt;a href=\1/index.html&gt; \1 &lt;/a&gt;&lt;/li&gt;"
99 <!-- append footer -->
100 <echo file="${docs.output.dir}/index.html" append="true">
103 <i>---</i>
108 <!-- archive all the docs excluding whatever is not needed -->
109 <echo message="======== Archiving enunciate docs ========"/>
110 <zip destfile="${docs.output.dir}.zip">
111 <zipfileset dir="${docs.output.dir}"/>
114 <echo message="======== Build successful ========"/>
115 <echo message="REST docs archive: ${docs.output.dir}.zip"/>
120 <groupId>ant-contrib</groupId>
121 <artifactId>ant-contrib</artifactId>
122 <version>20020829</version>
128 <groupId>org.codehaus.mojo</groupId>
129 <artifactId>build-helper-maven-plugin</artifactId>
130 <version>1.8</version>
133 <id>attach-artifacts</id>
134 <phase>package</phase>
136 <goal>attach-artifact</goal>
141 <file>${java-client}</file>
143 <classifier>full-java-client</classifier>
146 <file>${java-client-sources}</file>
148 <classifier>full-java-client-sources</classifier>
151 <file>${json-client}</file>
153 <classifier>full-json-client</classifier>
156 <file>${json-client-sources}</file>
158 <classifier>full-json-client-sources</classifier>
169 <groupId>org.codehaus.enunciate</groupId>
170 <artifactId>enunciate-core-annotations</artifactId>
173 <!-- add dependency on all northbound bundles -->
175 <groupId>org.opendaylight.controller</groupId>
176 <artifactId>connectionmanager.northbound</artifactId>
179 <groupId>org.opendaylight.controller</groupId>
180 <artifactId>controllermanager.northbound</artifactId>
183 <groupId>org.opendaylight.controller</groupId>
184 <artifactId>flowprogrammer.northbound</artifactId>
187 <groupId>org.opendaylight.controller</groupId>
188 <artifactId>hosttracker.northbound</artifactId>
191 <groupId>org.opendaylight.controller</groupId>
192 <artifactId>networkconfig.bridgedomain.northbound</artifactId>
195 <groupId>org.opendaylight.controller</groupId>
196 <artifactId>networkconfig.neutron.northbound</artifactId>
199 <groupId>org.opendaylight.controller</groupId>
200 <artifactId>forwarding.staticrouting.northbound</artifactId>
203 <groupId>org.opendaylight.controller</groupId>
204 <artifactId>statistics.northbound</artifactId>
207 <groupId>org.opendaylight.controller</groupId>
208 <artifactId>subnets.northbound</artifactId>
211 <groupId>org.opendaylight.controller</groupId>
212 <artifactId>switchmanager.northbound</artifactId>
215 <groupId>org.opendaylight.controller</groupId>
216 <artifactId>topology.northbound</artifactId>
219 <groupId>org.opendaylight.controller</groupId>
220 <artifactId>usermanager.northbound</artifactId>