forked from loafle/openapi-generator-original
updated to use swagger 1.1.0
This commit is contained in:
parent
236a9697ad
commit
e2dbe61adf
@ -1,8 +1,11 @@
|
|||||||
package com.wordnik.client;
|
package {{package}};
|
||||||
|
|
||||||
import com.wordnik.swagger.core.util.JsonUtil;
|
import com.wordnik.swagger.core.util.JsonUtil;
|
||||||
|
|
||||||
import org.codehaus.jackson.type.JavaType;
|
import com.fasterxml.jackson.core.JsonGenerator.Feature;
|
||||||
|
import com.fasterxml.jackson.databind.*;
|
||||||
|
import com.fasterxml.jackson.annotation.*;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
|
||||||
import com.sun.jersey.api.client.Client;
|
import com.sun.jersey.api.client.Client;
|
||||||
import com.sun.jersey.api.client.ClientResponse;
|
import com.sun.jersey.api.client.ClientResponse;
|
||||||
@ -28,7 +31,7 @@ public class ApiInvoker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void addDefaultHeader(String key, String value) {
|
public void addDefaultHeader(String key, String value) {
|
||||||
defaultHeaderMap.put(key, value);
|
defaultHeaderMap.put(key, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String escapeString(String str) {
|
public String escapeString(String str) {
|
||||||
@ -38,7 +41,7 @@ public class ApiInvoker {
|
|||||||
public static Object deserialize(String json, String containerType, Class cls) throws ApiException {
|
public static Object deserialize(String json, String containerType, Class cls) throws ApiException {
|
||||||
try{
|
try{
|
||||||
if("List".equals(containerType)) {
|
if("List".equals(containerType)) {
|
||||||
JavaType typeInfo = org.codehaus.jackson.map.type.TypeFactory.collectionType(List.class, cls);
|
JavaType typeInfo = JsonUtil.getJsonMapper().getTypeFactory().constructCollectionType(List.class, cls);
|
||||||
List response = (List<?>) JsonUtil.getJsonMapper().readValue(json, typeInfo);
|
List response = (List<?>) JsonUtil.getJsonMapper().readValue(json, typeInfo);
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
@ -74,58 +77,58 @@ public class ApiInvoker {
|
|||||||
StringBuilder b = new StringBuilder();
|
StringBuilder b = new StringBuilder();
|
||||||
|
|
||||||
for(String key : queryParams.keySet()) {
|
for(String key : queryParams.keySet()) {
|
||||||
String value = queryParams.get(key);
|
String value = queryParams.get(key);
|
||||||
if (value != null){
|
if (value != null){
|
||||||
if(b.toString().length() == 0) b.append("?");
|
if(b.toString().length() == 0) b.append("?");
|
||||||
else b.append("&");
|
else b.append("&");
|
||||||
b.append(escapeString(key)).append("=").append(escapeString(value));
|
b.append(escapeString(key)).append("=").append(escapeString(value));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String querystring = b.toString();
|
String querystring = b.toString();
|
||||||
|
|
||||||
Builder builder = client.resource(host + path + querystring).type("application/json");
|
Builder builder = client.resource(host + path + querystring).type("application/json");
|
||||||
for(String key : headerParams.keySet()) {
|
for(String key : headerParams.keySet()) {
|
||||||
builder.header(key, headerParams.get(key));
|
builder.header(key, headerParams.get(key));
|
||||||
}
|
}
|
||||||
|
|
||||||
for(String key : defaultHeaderMap.keySet()) {
|
for(String key : defaultHeaderMap.keySet()) {
|
||||||
if(!headerParams.containsKey(key)) {
|
if(!headerParams.containsKey(key)) {
|
||||||
builder.header(key, defaultHeaderMap.get(key));
|
builder.header(key, defaultHeaderMap.get(key));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ClientResponse response = null;
|
ClientResponse response = null;
|
||||||
|
|
||||||
if("GET".equals(method)) {
|
if("GET".equals(method)) {
|
||||||
response = (ClientResponse) builder.get(ClientResponse.class);
|
response = (ClientResponse) builder.get(ClientResponse.class);
|
||||||
}
|
}
|
||||||
else if ("POST".equals(method)) {
|
else if ("POST".equals(method)) {
|
||||||
response = builder.post(ClientResponse.class, serialize(body));
|
response = builder.post(ClientResponse.class, serialize(body));
|
||||||
}
|
}
|
||||||
else if ("PUT".equals(method)) {
|
else if ("PUT".equals(method)) {
|
||||||
response = builder.put(ClientResponse.class, serialize(body));
|
response = builder.put(ClientResponse.class, serialize(body));
|
||||||
}
|
}
|
||||||
else if ("DELETE".equals(method)) {
|
else if ("DELETE".equals(method)) {
|
||||||
response = builder.delete(ClientResponse.class, serialize(body));
|
response = builder.delete(ClientResponse.class, serialize(body));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
throw new ApiException(500, "unknown method type " + method);
|
throw new ApiException(500, "unknown method type " + method);
|
||||||
}
|
}
|
||||||
if(response.getClientResponseStatus() == ClientResponse.Status.OK) {
|
if(response.getClientResponseStatus() == ClientResponse.Status.OK) {
|
||||||
return (String) response.getEntity(String.class);
|
return (String) response.getEntity(String.class);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
throw new ApiException(
|
throw new ApiException(
|
||||||
response.getClientResponseStatus().getStatusCode(),
|
response.getClientResponseStatus().getStatusCode(),
|
||||||
response.getEntity(String.class));
|
response.getEntity(String.class));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private Client getClient(String host) {
|
private Client getClient(String host) {
|
||||||
if(!hostMap.containsKey(host)) {
|
if(!hostMap.containsKey(host)) {
|
||||||
Client client = Client.create();
|
Client client = Client.create();
|
||||||
client.addFilter(new LoggingFilter());
|
client.addFilter(new LoggingFilter());
|
||||||
hostMap.put(host, client);
|
hostMap.put(host, client);
|
||||||
}
|
}
|
||||||
return hostMap.get(host);
|
return hostMap.get(host);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -213,7 +213,7 @@
|
|||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<jersey-version>1.7</jersey-version>
|
<jersey-version>1.7</jersey-version>
|
||||||
<swagger-core-version>1.02-SNAPSHOT</swagger-core-version>
|
<swagger-core-version>1.1.0</swagger-core-version>
|
||||||
<scala-version>2.9.1-1</scala-version>
|
<scala-version>2.9.1-1</scala-version>
|
||||||
<junit-version>4.8.1</junit-version>
|
<junit-version>4.8.1</junit-version>
|
||||||
<maven-plugin.version>1.0.0</maven-plugin.version>
|
<maven-plugin.version>1.0.0</maven-plugin.version>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user