Add xsd and docker
Change-Id: Ifad2e3a8678a487e6f13114f910e19bce4d80964
This commit is contained in:
parent
d71c191f0f
commit
80dbbc034f
33 changed files with 313 additions and 348 deletions
|
@ -17,4 +17,31 @@
|
|||
<artifactId>lombok</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.3</version>
|
||||
<configuration>
|
||||
<source>1.8</source>
|
||||
<target>1.8</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>jaxb2-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>xjc</id>
|
||||
<phase>process-resources</phase>
|
||||
<goals>
|
||||
<goal>xjc</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
|
@ -1,33 +0,0 @@
|
|||
package pl.touk.mockserver.api.request;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class AddMock extends MockServerRequest {
|
||||
@XmlElement(required = true)
|
||||
private String name;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private String path;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private int port;
|
||||
|
||||
private String predicate;
|
||||
|
||||
private String response;
|
||||
|
||||
private Boolean soap;
|
||||
|
||||
private Integer statusCode;
|
||||
|
||||
private Method method;
|
||||
|
||||
private String responseHeaders;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package pl.touk.mockserver.api.request;
|
||||
|
||||
import javax.xml.bind.annotation.XmlEnum;
|
||||
|
||||
@XmlEnum
|
||||
public enum Method {
|
||||
POST,
|
||||
GET,
|
||||
DELETE,
|
||||
PUT,
|
||||
TRACE,
|
||||
HEAD,
|
||||
OPTIONS,
|
||||
PATCH;
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
package pl.touk.mockserver.api.request;
|
||||
|
||||
public abstract class MockServerRequest {
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package pl.touk.mockserver.api.request;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class PeekMock extends MockServerRequest{
|
||||
@XmlElement(required = true)
|
||||
private String name;
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
package pl.touk.mockserver.api.request;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class RemoveMock extends MockServerRequest {
|
||||
@XmlElement(required = true)
|
||||
private String name;
|
||||
|
||||
private Boolean skipReport;
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
@XmlAccessorType(XmlAccessType.FIELD) package pl.touk.mockserver.api.request;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
@ -1,13 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlValue;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
public class ExceptionOccured {
|
||||
@XmlValue
|
||||
private String message;
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class MockAdded extends MockServerResponse {
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
|
||||
@Data
|
||||
public class MockEventReport {
|
||||
@XmlElement(required = true)
|
||||
private MockRequestReport request;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private MockResponseReport response;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement(name = "mocks")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class MockListing extends MockServerResponse {
|
||||
@XmlElement(name = "mock")
|
||||
private List<MockReport> mocks;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class MockPeeked extends MockServerResponse {
|
||||
@XmlElement(name = "mockEvent")
|
||||
private List<MockEventReport> mockEvents;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import java.util.List;
|
||||
|
||||
@XmlRootElement
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class MockRemoved extends MockServerResponse {
|
||||
@XmlElement(name = "mockEvent")
|
||||
private List<MockEventReport> mockEvents;
|
||||
}
|
|
@ -1,37 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import pl.touk.mockserver.api.request.Method;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
|
||||
@Data
|
||||
public class MockReport {
|
||||
@XmlElement(required = true)
|
||||
private String name;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private String path;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private int port;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private String predicate;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private String response;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private String responseHeaders;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private boolean soap;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private Method method;
|
||||
|
||||
@XmlElement(required = true)
|
||||
private int statusCode;
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class MockRequestReport {
|
||||
private String text;
|
||||
|
||||
@XmlElementWrapper(name = "headers")
|
||||
@XmlElement(name = "header")
|
||||
private List<Parameter> headers;
|
||||
|
||||
@XmlElementWrapper(name = "queryParams")
|
||||
@XmlElement(name = "queryParam")
|
||||
private List<Parameter> queryParams;
|
||||
|
||||
@XmlElementWrapper(name = "path")
|
||||
@XmlElement(name = "pathPart")
|
||||
private List<String> paths;
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class MockResponseReport {
|
||||
@XmlElement(required = true)
|
||||
private int statusCode;
|
||||
|
||||
private String text;
|
||||
|
||||
@XmlElementWrapper(name = "headers")
|
||||
@XmlElement(name = "header")
|
||||
private List<Parameter> headers;
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
public abstract class MockServerResponse {
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package pl.touk.mockserver.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAttribute;
|
||||
import javax.xml.bind.annotation.XmlValue;
|
||||
|
||||
@Data
|
||||
public class Parameter {
|
||||
@XmlAttribute(required = true)
|
||||
private String name;
|
||||
|
||||
@XmlValue
|
||||
private String value;
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
@XmlAccessorType(XmlAccessType.FIELD) package pl.touk.mockserver.api.response;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
@ -1,4 +0,0 @@
|
|||
AddMock
|
||||
Method
|
||||
PeekMock
|
||||
RemoveMock
|
|
@ -1,11 +0,0 @@
|
|||
ExceptionOccured
|
||||
MockAdded
|
||||
MockEventReport
|
||||
MockListing
|
||||
MockPeeked
|
||||
MockRemoved
|
||||
MockReport
|
||||
MockRequestReport
|
||||
MockResponseReport
|
||||
MockServerResponse
|
||||
Parameter
|
10
mockserver-api/src/main/xjb/binding.xjb
Normal file
10
mockserver-api/src/main/xjb/binding.xjb
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0"?>
|
||||
<jxb:bindings version="1.0" xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
|
||||
xmlns:xjc= "http://java.sun.com/xml/ns/jaxb/xjc"
|
||||
jxb:extensionBindingPrefixes="xjc" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<jxb:bindings>
|
||||
<jxb:globalBindings>
|
||||
<xjc:simple/>
|
||||
</jxb:globalBindings>
|
||||
</jxb:bindings>
|
||||
</jxb:bindings>
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<xs:schema version="1.0" targetNamespace="http://touk.pl/mockserver/api/common" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<xs:simpleType name="method">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:enumeration value="POST"/>
|
||||
<xs:enumeration value="GET"/>
|
||||
<xs:enumeration value="DELETE"/>
|
||||
<xs:enumeration value="PUT"/>
|
||||
<xs:enumeration value="TRACE"/>
|
||||
<xs:enumeration value="HEAD"/>
|
||||
<xs:enumeration value="OPTIONS"/>
|
||||
<xs:enumeration value="PATCH"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:schema>
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://touk.pl/mockserver/api/request" xmlns:tns="http://touk.pl/mockserver/api/request" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:common="http://touk.pl/mockserver/api/common">
|
||||
|
||||
<xs:import namespace="http://touk.pl/mockserver/api/common" schemaLocation="common.xsd"/>
|
||||
|
||||
<xs:element name="addMock" type="tns:AddMock"/>
|
||||
|
||||
<xs:element name="peekMock" type="tns:PeekMock"/>
|
||||
|
||||
<xs:element name="removeMock" type="tns:RemoveMock"/>
|
||||
|
||||
<xs:complexType name="AddMock">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerRequest">
|
||||
<xs:sequence>
|
||||
<xs:element name="path" type="xs:string"/>
|
||||
<xs:element name="port" type="xs:int"/>
|
||||
<xs:element name="predicate" type="xs:string" minOccurs="0"/>
|
||||
<xs:element name="response" type="xs:string" minOccurs="0"/>
|
||||
<xs:element name="soap" type="xs:boolean" minOccurs="0"/>
|
||||
<xs:element name="statusCode" type="xs:int" minOccurs="0"/>
|
||||
<xs:element name="method" type="common:method" minOccurs="0"/>
|
||||
<xs:element name="responseHeaders" type="xs:string" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockServerRequest" abstract="true">
|
||||
<xs:sequence>
|
||||
<xs:element name="name" type="xs:string"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="PeekMock">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerRequest"/>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="RemoveMock">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerRequest">
|
||||
<xs:sequence>
|
||||
<xs:element name="skipReport" type="xs:boolean" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:schema>
|
||||
|
134
mockserver-api/src/main/xsd/pl/touk/mockserver/api/response.xsd
Normal file
134
mockserver-api/src/main/xsd/pl/touk/mockserver/api/response.xsd
Normal file
|
@ -0,0 +1,134 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://touk.pl/mockserver/api/response" xmlns:tns="http://touk.pl/mockserver/api/response" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:common="http://touk.pl/mockserver/api/common">
|
||||
|
||||
<xs:import namespace="http://touk.pl/mockserver/api/common" schemaLocation="common.xsd"/>
|
||||
|
||||
<xs:element name="exceptionOccured" type="tns:exceptionOccured"/>
|
||||
|
||||
<xs:element name="mockAdded" type="tns:mockAdded"/>
|
||||
|
||||
<xs:element name="mockPeeked" type="tns:mockPeeked"/>
|
||||
|
||||
<xs:element name="mockRemoved" type="tns:mockRemoved"/>
|
||||
|
||||
<xs:element name="mocks" type="tns:mockListing"/>
|
||||
|
||||
<xs:complexType name="exceptionOccured">
|
||||
<xs:simpleContent>
|
||||
<xs:extension base="xs:string"/>
|
||||
</xs:simpleContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockAdded">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerResponse">
|
||||
<xs:sequence/>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockServerResponse" abstract="true">
|
||||
<xs:sequence/>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockEventReport">
|
||||
<xs:sequence>
|
||||
<xs:element name="request" type="tns:mockRequestReport"/>
|
||||
<xs:element name="response" type="tns:mockResponseReport"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockRequestReport">
|
||||
<xs:sequence>
|
||||
<xs:element name="text" type="xs:string" minOccurs="0"/>
|
||||
<xs:element name="headers" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="header" type="tns:parameter" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="queryParams" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="queryParam" type="tns:parameter" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="path" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="pathPart" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="parameter">
|
||||
<xs:simpleContent>
|
||||
<xs:extension base="xs:string">
|
||||
<xs:attribute name="name" type="xs:string" use="required"/>
|
||||
</xs:extension>
|
||||
</xs:simpleContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockResponseReport">
|
||||
<xs:sequence>
|
||||
<xs:element name="statusCode" type="xs:int"/>
|
||||
<xs:element name="text" type="xs:string" minOccurs="0"/>
|
||||
<xs:element name="headers" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="header" type="tns:parameter" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockListing">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerResponse">
|
||||
<xs:sequence>
|
||||
<xs:element name="mock" type="tns:mockReport" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockReport">
|
||||
<xs:sequence>
|
||||
<xs:element name="name" type="xs:string"/>
|
||||
<xs:element name="path" type="xs:string"/>
|
||||
<xs:element name="port" type="xs:int"/>
|
||||
<xs:element name="predicate" type="xs:string"/>
|
||||
<xs:element name="response" type="xs:string"/>
|
||||
<xs:element name="responseHeaders" type="xs:string"/>
|
||||
<xs:element name="soap" type="xs:boolean"/>
|
||||
<xs:element name="method" type="common:method"/>
|
||||
<xs:element name="statusCode" type="xs:int"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockPeeked">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerResponse">
|
||||
<xs:sequence>
|
||||
<xs:element name="mockEvent" type="tns:mockEventReport" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="mockRemoved">
|
||||
<xs:complexContent>
|
||||
<xs:extension base="tns:mockServerResponse">
|
||||
<xs:sequence>
|
||||
<xs:element name="mockEvent" type="tns:mockEventReport" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:schema>
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue