blob: f8d8c451e8d3b3dc6aae2849306a22b5c4297a96 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Licensed to the Apache Software Foundation (ASF) under one or more
~ contributor license agreements. See the NOTICE file distributed with
~ this work for additional information regarding copyright ownership.
~ The ASF licenses this file to You under the Apache License, Version 2.0
~ (the "License"); you may not use this file except in compliance with
~ the License. You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<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.apache.unomi</groupId>
<artifactId>unomi-root</artifactId>
<version>1.3.1-incubating-SNAPSHOT</version>
</parent>
<artifactId>unomi-rest</artifactId>
<name>Apache Unomi :: REST API</name>
<description>Apache Unomi Context Server REST API</description>
<packaging>bundle</packaging>
<pluginRepositories>
<pluginRepository>
<id>miredot</id>
<name>Miredot Releases</name>
<url>http://nexus.qmino.com/content/repositories/miredot</url>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>org.apache.unomi</groupId>
<artifactId>unomi-api</artifactId>
<version>1.3.1-incubating-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-security-cors</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
</dependency>
<dependency>
<groupId>org.apache.unomi</groupId>
<artifactId>unomi-persistence-spi</artifactId>
<version>1.3.1-incubating-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
<!--<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-core</artifactId>
<scope>compile</scope>
<version>1.5.3</version>
<exclusions>
<exclusion>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
</exclusion>
</exclusions>
</dependency>-->
</dependencies>
<build>
<plugins>
<!--<plugin>
<groupId>com.sebastian-daschner</groupId>
<artifactId>jaxrs-analyzer-maven-plugin</artifactId>
<version>0.8</version>
<executions>
<execution>
<goals>
<goal>analyze-jaxrs</goal>
</goals>
<configuration>
&lt;!&ndash; Available backends are plaintext (default), swagger and asciidoc &ndash;&gt;
<backend>swagger</backend>
&lt;!&ndash; Domain of the deployed project, defaults to example.com &ndash;&gt;
&lt;!&ndash;<deployedDomain>example.com</deployedDomain>&ndash;&gt;
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.kongchen</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<apiSources>
<apiSource>
<springmvc>false</springmvc>
<locations>org.apache.unomi.rest</locations>
<templatePath>${basedir}/api-doc-template/markdown.hbs</templatePath>
<outputPath>${basedir}/generated/document.html</outputPath>
<swaggerDirectory>generated/swagger-ui</swaggerDirectory>
<info>
<title>Documentation for Apache Unomi's RESTful API</title>
<version>${project.version}</version>
</info>
<securityDefinitions>
<securityDefinition>
<name>MybasicAuth</name>
<type>basic</type>
</securityDefinition>
</securityDefinitions>
</apiSource>
</apiSources>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>-->
<plugin>
<groupId>com.qmino</groupId>
<artifactId>miredot-plugin</artifactId>
<version>2.0.3</version>
<executions>
<execution>
<goals>
<goal>restdoc</goal>
</goals>
</execution>
</executions>
<configuration>
<licence>cHJvamVjdHxvcmcuYXBhY2hlLnVub21pLnVub21pLXJlc3R8MjAyMC0wMi0yOHx0cnVlfC0xI01Dd0NGQ01pMDRxTFZ6LzJ4SG82MjAranZITnRLYWovQWhRcG4vS01jdTU2NXpOWkRpUzcwQXMrdC96bVdRPT0=</licence>
<output>
<title>Documentation for Apache Unomi's RESTful API ${project.version}</title>
<html>
<!-- optional html configuration -->
<location>${project.parent.build.directory}/staging/rest-api-doc</location>
</html>
<raml />
</output>
<restModel>
<restFramework>
<name>jax-rs</name>
<cxfServiceConfig>
<item>src/main/resources/OSGI-INF/blueprint/blueprint.xml</item>
</cxfServiceConfig>
</restFramework>
<httpStatusCodes>
<httpStatusCode>
<httpCode>200</httpCode>
<document>always</document>
<defaultMessage>The service call has completed successfully.</defaultMessage>
</httpStatusCode>
<httpStatusCode>
<httpCode>401</httpCode>
<document>explicit: com.acme.exceptions.AuthorizationException</document>
<defaultMessage>The user is not authorized to use this service.</defaultMessage>
</httpStatusCode>
<httpStatusCode>
<httpCode>412</httpCode>
<document>put,post</document>
<defaultMessage>Invalid JSON/XML input.</defaultMessage>
</httpStatusCode>
<httpStatusCode>
<httpCode>500</httpCode>
<document>always</document>
<defaultMessage>The service call has not succeeded.</defaultMessage>
<sticky>true</sticky> <!-- Document always, even if there is an @statuscode tag -->
</httpStatusCode>
</httpStatusCodes>
<externalSources>
<sourceDirs>
<sourceDir>../api/src/main/java</sourceDir>
</sourceDirs>
</externalSources>
</restModel>
<analysis>
<checks>
<JAVADOC_MISSING_SUMMARY>warn</JAVADOC_MISSING_SUMMARY>
<JAVADOC_MISSING_INTERFACEDOCUMENTATION>warn</JAVADOC_MISSING_INTERFACEDOCUMENTATION>
<JAVADOC_MISSING_PARAMETER_DOCUMENTATION>warn</JAVADOC_MISSING_PARAMETER_DOCUMENTATION>
<JAVADOC_MISSING_EXCEPTION_DOCUMENTATION>warn</JAVADOC_MISSING_EXCEPTION_DOCUMENTATION>
<JAVADOC_MISSING_AUTHORS>ignore</JAVADOC_MISSING_AUTHORS>
<JAXRS_MISSING_PRODUCES>warn</JAXRS_MISSING_PRODUCES>
<JAXRS_MISSING_CONSUMES>warn</JAXRS_MISSING_CONSUMES>
<JAXRS_MISSING_PATH_PARAM>warn</JAXRS_MISSING_PATH_PARAM>
<REST_UNMAPPED_EXCEPTION>warn</REST_UNMAPPED_EXCEPTION>
<UNREACHABLE_RESOURCE>warn</UNREACHABLE_RESOURCE>
<PARTIAL_RESOURCE_OVERLAP>warn</PARTIAL_RESOURCE_OVERLAP>
</checks>
</analysis>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<tags>
<tag>
<name>summary</name>
<placement>a</placement>
<head>MireDot summary (resource title)</head>
</tag>
<tag>
<name>title</name>
<placement>a</placement>
<head>MireDot title (resource title)</head>
</tag>
<tag>
<name>servicetag</name>
<placement>a</placement>
<head>MireDot resource tag (label)</head>
</tag>
<tag>
<name>statuscode</name>
<placement>a</placement>
<head>MireDot resource status code(s)</head>
</tag>
<tag>
<name>responseheader</name>
<placement>a</placement>
<head>MireDot response header</head>
</tag>
</tags>
</configuration>
</plugin>
</plugins>
</reporting>
</project>