mirror of
https://github.com/opennetworkinglab/onos.git
synced 2025-10-14 17:01:02 +02:00
ONOS-3607 Add Criteria model for Flows REST Api with field description.
Change Model parsing in Swagger mojo for whitspaces stripping. Also, readding onos-maven-plugin to root pom build temporarily. Change-Id: I8995c74d762a3e59acebe15cc600a0f1bfa41411
This commit is contained in:
parent
c23f583cd0
commit
82baf6b5cd
3
pom.xml
3
pom.xml
@ -54,6 +54,7 @@
|
||||
|
||||
<module>tools/package/archetypes</module>
|
||||
<module>tools/package/branding</module>
|
||||
<module>tools/package/maven-plugin</module>
|
||||
</modules>
|
||||
|
||||
<url>http://onosproject.org/</url>
|
||||
@ -78,7 +79,7 @@
|
||||
<netty4.version>4.0.23.Final</netty4.version>
|
||||
<copycat.version>0.5.1.onos</copycat.version>
|
||||
<openflowj.version>0.9.1.onos</openflowj.version>
|
||||
<onos-maven-plugin.version>1.7</onos-maven-plugin.version>
|
||||
<onos-maven-plugin.version>1.8-SNAPSHOT</onos-maven-plugin.version>
|
||||
<karaf.version>3.0.3</karaf.version>
|
||||
<jersey.version>1.19</jersey.version>
|
||||
<!-- TODO argLine was originally added maven-surfire-plugin configuration
|
||||
|
@ -91,6 +91,11 @@
|
||||
<artifactId>commons-io</artifactId>
|
||||
<version>2.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.code.gson</groupId>
|
||||
<artifactId>gson</artifactId>
|
||||
<version>2.5</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@ -18,9 +18,9 @@ package org.onosproject.maven;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.node.ArrayNode;
|
||||
import com.fasterxml.jackson.databind.node.ObjectNode;
|
||||
import com.google.common.base.Charsets;
|
||||
import com.google.common.io.ByteStreams;
|
||||
import com.google.common.io.Files;
|
||||
import com.google.gson.JsonParser;
|
||||
import com.thoughtworks.qdox.JavaProjectBuilder;
|
||||
import com.thoughtworks.qdox.model.DocletTag;
|
||||
import com.thoughtworks.qdox.model.JavaAnnotation;
|
||||
@ -36,6 +36,7 @@ import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.project.MavenProject;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileReader;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
@ -51,6 +52,7 @@ import static com.google.common.base.Strings.isNullOrEmpty;
|
||||
@Mojo(name = "swagger", defaultPhase = LifecyclePhase.GENERATE_SOURCES)
|
||||
public class OnosSwaggerMojo extends AbstractMojo {
|
||||
private final ObjectMapper mapper = new ObjectMapper();
|
||||
private final JsonParser jsonParser = new JsonParser();
|
||||
|
||||
private static final String JSON_FILE = "swagger.json";
|
||||
private static final String GEN_SRC = "generated-sources";
|
||||
@ -291,10 +293,7 @@ public class OnosSwaggerMojo extends AbstractMojo {
|
||||
try {
|
||||
File config = new File(definitionsDirectory.getAbsolutePath() + "/"
|
||||
+ param + ".json");
|
||||
String lines = Files.readLines(config, Charsets.UTF_8).stream().reduce((t, u) -> t + u).
|
||||
get();
|
||||
lines = lines.replaceAll("\\s+", "");
|
||||
definitions.putPOJO(param, lines);
|
||||
definitions.putPOJO(param, jsonParser.parse(new FileReader(config)));
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
@ -155,19 +155,214 @@
|
||||
"items": {
|
||||
"type": "object",
|
||||
"title": "criteria",
|
||||
"required": [
|
||||
"type",
|
||||
"ethType"
|
||||
],
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"description":"Ethernet field name",
|
||||
"example": "ETH_TYPE"
|
||||
},
|
||||
"ethType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": "0x88cc",
|
||||
"description":"Ethernet frame type"
|
||||
},
|
||||
"mac": {
|
||||
"type": "string",
|
||||
"example": "00:00:11:00:00:01"
|
||||
},
|
||||
"port": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Match port"
|
||||
},
|
||||
"metadata": {
|
||||
"type": "Hex16",
|
||||
"format": "Hex16",
|
||||
"example": "0xabcdL",
|
||||
"description":"Metadata passed between tables"
|
||||
},
|
||||
"vlanId": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": "0x1000"
|
||||
},
|
||||
"priority": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"VLAN priority."
|
||||
},
|
||||
"ipDscp": {
|
||||
"type": "byte",
|
||||
"format": "byte",
|
||||
"description":"IP DSCP (6 bits in ToS field)"
|
||||
},
|
||||
"ipEcn": {
|
||||
"type": "byte",
|
||||
"format": "byte",
|
||||
"description":"IP ECN (2 bits in ToS field)."
|
||||
},
|
||||
"protocol": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"IP protocol"
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"example": "10.1.1.0/24",
|
||||
"description":"IP source address"
|
||||
},
|
||||
"tcpPort": {
|
||||
"type": "integer",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"TCP source address"
|
||||
},
|
||||
"udpPort": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"UDP source address"
|
||||
},
|
||||
"sctpPort": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"SCTP source address"
|
||||
},
|
||||
"icmpType": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV4 code (RFC0792)"
|
||||
},
|
||||
"icmpCode": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV4 code (RFC0792)"
|
||||
},
|
||||
"flowLabel": {
|
||||
"type": "Hex16",
|
||||
"format": "Hex16",
|
||||
"example": "0xffffe",
|
||||
"description":"IPv6 Flow Label (RFC 6437)"
|
||||
},
|
||||
"icmpv6Type": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV6 type (RFC2463)"
|
||||
},
|
||||
"icmpv6Code": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV6 code (RFC2463)"
|
||||
},
|
||||
"targetAddress": {
|
||||
"type": "String",
|
||||
"example": "10.1.1.0/24",
|
||||
"description":"IPv6 Neighbor discovery target address"
|
||||
},
|
||||
"label": {
|
||||
"type": "int32",
|
||||
"format": "int32",
|
||||
"example": 1,
|
||||
"description":"MPLS label"
|
||||
},
|
||||
"exthdrFlags": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"IPv6 extension header pseudo-field"
|
||||
},
|
||||
"lambda": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"wavelength abstraction"
|
||||
},
|
||||
"gridType": {
|
||||
"type": "String",
|
||||
"example": "DWDM",
|
||||
"description":"Type of wavelength grid"
|
||||
},
|
||||
"channelSpacing": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 100,
|
||||
"description":"Optical channel spacing"
|
||||
},
|
||||
"spacingMultiplier": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"example": "0x88cc"
|
||||
"example": 4,
|
||||
"description":"Optical channel spacing multiplier"
|
||||
},
|
||||
"slotGranularity": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 8
|
||||
},
|
||||
"ochSignalId": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Optical channel signal ID"
|
||||
},
|
||||
"tunnelId": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 5,
|
||||
"description":"Tunnel ID"
|
||||
},
|
||||
"ochSignalType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Optical channel signal type"
|
||||
},
|
||||
"oduSignalId": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"ODU (Optical channel Data Unit) signal ID."
|
||||
},
|
||||
"tributaryPortNumber": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 11,
|
||||
"description":"OPU (Optical channel Payload Unit) port number."
|
||||
},
|
||||
"tributarySlotLen": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 80,
|
||||
"description":"OPU (Optical channel Payload Unit) slot length."
|
||||
},
|
||||
"tributarySlotBitmap": {
|
||||
"type": "array",
|
||||
"title": "tributarySlotBitmap",
|
||||
"description":"OPU (Optical channel Payload Unit) slot bitmap.",
|
||||
"required": [
|
||||
"byte",
|
||||
"port"
|
||||
],
|
||||
"items": {
|
||||
"type": "byte",
|
||||
"title": "byte",
|
||||
"example": 1
|
||||
}
|
||||
},
|
||||
"oduSignalType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 4,
|
||||
"description":"ODU (Optical channel Data Unit) signal type."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -78,19 +78,214 @@
|
||||
"items": {
|
||||
"type": "object",
|
||||
"title": "criteria",
|
||||
"required": [
|
||||
"type",
|
||||
"ethType"
|
||||
],
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"description":"Ethernet field name",
|
||||
"example": "ETH_TYPE"
|
||||
},
|
||||
"ethType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": "0x88cc",
|
||||
"description":"Ethernet frame type"
|
||||
},
|
||||
"mac": {
|
||||
"type": "string",
|
||||
"example": "00:00:11:00:00:01"
|
||||
},
|
||||
"port": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Match port"
|
||||
},
|
||||
"metadata": {
|
||||
"type": "Hex16",
|
||||
"format": "Hex16",
|
||||
"example": "0xabcdL",
|
||||
"description":"Metadata passed between tables"
|
||||
},
|
||||
"vlanId": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": "0x1000"
|
||||
},
|
||||
"priority": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"VLAN priority."
|
||||
},
|
||||
"ipDscp": {
|
||||
"type": "byte",
|
||||
"format": "byte",
|
||||
"description":"IP DSCP (6 bits in ToS field)"
|
||||
},
|
||||
"ipEcn": {
|
||||
"type": "byte",
|
||||
"format": "byte",
|
||||
"description":"IP ECN (2 bits in ToS field)."
|
||||
},
|
||||
"protocol": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"IP protocol"
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"example": "10.1.1.0/24",
|
||||
"description":"IP source address"
|
||||
},
|
||||
"tcpPort": {
|
||||
"type": "integer",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"TCP source address"
|
||||
},
|
||||
"udpPort": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"UDP source address"
|
||||
},
|
||||
"sctpPort": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"SCTP source address"
|
||||
},
|
||||
"icmpType": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV4 code (RFC0792)"
|
||||
},
|
||||
"icmpCode": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV4 code (RFC0792)"
|
||||
},
|
||||
"flowLabel": {
|
||||
"type": "Hex16",
|
||||
"format": "Hex16",
|
||||
"example": "0xffffe",
|
||||
"description":"IPv6 Flow Label (RFC 6437)"
|
||||
},
|
||||
"icmpv6Type": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV6 type (RFC2463)"
|
||||
},
|
||||
"icmpv6Code": {
|
||||
"type": "uint16",
|
||||
"format": "uint16",
|
||||
"example": 1,
|
||||
"description":"Internet Control Message Protocol for IPV6 code (RFC2463)"
|
||||
},
|
||||
"targetAddress": {
|
||||
"type": "String",
|
||||
"example": "10.1.1.0/24",
|
||||
"description":"IPv6 Neighbor discovery target address"
|
||||
},
|
||||
"label": {
|
||||
"type": "int32",
|
||||
"format": "int32",
|
||||
"example": 1,
|
||||
"description":"MPLS label"
|
||||
},
|
||||
"exthdrFlags": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"IPv6 extension header pseudo-field"
|
||||
},
|
||||
"lambda": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"wavelength abstraction"
|
||||
},
|
||||
"gridType": {
|
||||
"type": "String",
|
||||
"example": "DWDM",
|
||||
"description":"Type of wavelength grid"
|
||||
},
|
||||
"channelSpacing": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 100,
|
||||
"description":"Optical channel spacing"
|
||||
},
|
||||
"spacingMultiplier": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"example": "0x88cc"
|
||||
"example": 4,
|
||||
"description":"Optical channel spacing multiplier"
|
||||
},
|
||||
"slotGranularity": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 8
|
||||
},
|
||||
"ochSignalId": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Optical channel signal ID"
|
||||
},
|
||||
"tunnelId": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 5,
|
||||
"description":"Tunnel ID"
|
||||
},
|
||||
"ochSignalType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"Optical channel signal type"
|
||||
},
|
||||
"oduSignalId": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 1,
|
||||
"description":"ODU (Optical channel Data Unit) signal ID."
|
||||
},
|
||||
"tributaryPortNumber": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 11,
|
||||
"description":"OPU (Optical channel Payload Unit) port number."
|
||||
},
|
||||
"tributarySlotLen": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 80,
|
||||
"description":"OPU (Optical channel Payload Unit) slot length."
|
||||
},
|
||||
"tributarySlotBitmap": {
|
||||
"type": "array",
|
||||
"title": "tributarySlotBitmap",
|
||||
"description":"OPU (Optical channel Payload Unit) slot bitmap.",
|
||||
"required": [
|
||||
"byte",
|
||||
"port"
|
||||
],
|
||||
"items": {
|
||||
"type": "byte",
|
||||
"title": "byte",
|
||||
"example": 1
|
||||
}
|
||||
},
|
||||
"oduSignalType": {
|
||||
"type": "int64",
|
||||
"format": "int64",
|
||||
"example": 4,
|
||||
"description":"ODU (Optical channel Data Unit) signal type."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user