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>
132 <id>attach-artifacts</id>
133 <phase>package</phase>
135 <goal>attach-artifact</goal>
140 <file>${java-client}</file>
142 <classifier>full-java-client</classifier>
145 <file>${java-client-sources}</file>
147 <classifier>full-java-client-sources</classifier>
150 <file>${json-client}</file>
152 <classifier>full-json-client</classifier>
155 <file>${json-client-sources}</file>
157 <classifier>full-json-client-sources</classifier>
168 <groupId>org.codehaus.enunciate</groupId>
169 <artifactId>enunciate-core-annotations</artifactId>
172 <!-- add dependency on all northbound bundles -->
174 <groupId>org.opendaylight.controller</groupId>
175 <artifactId>connectionmanager.northbound</artifactId>
178 <groupId>org.opendaylight.controller</groupId>
179 <artifactId>controllermanager.northbound</artifactId>
182 <groupId>org.opendaylight.controller</groupId>
183 <artifactId>flowprogrammer.northbound</artifactId>
186 <groupId>org.opendaylight.controller</groupId>
187 <artifactId>hosttracker.northbound</artifactId>
190 <groupId>org.opendaylight.controller</groupId>
191 <artifactId>networkconfig.bridgedomain.northbound</artifactId>
194 <groupId>org.opendaylight.controller</groupId>
195 <artifactId>networkconfig.neutron.northbound</artifactId>
198 <groupId>org.opendaylight.controller</groupId>
199 <artifactId>forwarding.staticrouting.northbound</artifactId>
202 <groupId>org.opendaylight.controller</groupId>
203 <artifactId>statistics.northbound</artifactId>
206 <groupId>org.opendaylight.controller</groupId>
207 <artifactId>subnets.northbound</artifactId>
210 <groupId>org.opendaylight.controller</groupId>
211 <artifactId>switchmanager.northbound</artifactId>
214 <groupId>org.opendaylight.controller</groupId>
215 <artifactId>topology.northbound</artifactId>
218 <groupId>org.opendaylight.controller</groupId>
219 <artifactId>usermanager.northbound</artifactId>