Skip to content

Commit

Permalink
add error body and type to api exception class
Browse files Browse the repository at this point in the history
  • Loading branch information
wing328 committed Nov 28, 2021
1 parent 27d0e57 commit 07f34e2
Show file tree
Hide file tree
Showing 10 changed files with 271 additions and 44 deletions.
Expand Up @@ -51,6 +51,7 @@ import java.util.Map;
import java.io.InputStream;
{{/supportStreaming}}
{{/fullJavaUtil}}
import javax.ws.rs.core.GenericType;

{{#operations}}
public class {{classname}} {
Expand Down Expand Up @@ -294,13 +295,32 @@ public class {{classname}} {
{{/isDeprecated}}
public{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}private{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-streaming}} InputStream {{operationId}}WithHttpInfo({{#allParams}}{{#useBeanValidation}}{{>beanValidationQueryParams}}{{/useBeanValidation}}{{{dataType}}} {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) throws ApiException {
okhttp3.Call localVarCall = {{operationId}}ValidateBeforeCall({{#allParams}}{{paramName}}, {{/allParams}}null);
{{#returnType}}Type localVarReturnType = new TypeToken<{{{returnType}}}>(){}.getType();
return localVarApiClient.executeStream(localVarCall, localVarReturnType);{{/returnType}}
{{#returnType}}
try {
Type localVarReturnType = new TypeToken<{{{returnType}}}>(){}.getType();
return localVarApiClient.executeStream(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<{{{.}}}>(){}.getType()));
e.setErrorObjectType(new GenericType<{{{.}}}>(){});
throw e;
}
{{/returnType}}
}
{{/vendorExtensions.x-streaming}}{{^vendorExtensions.x-streaming}} ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}Void{{/returnType}}> {{operationId}}WithHttpInfo({{#allParams}}{{#useBeanValidation}}{{>beanValidationQueryParams}}{{/useBeanValidation}}{{{dataType}}} {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) throws ApiException {
okhttp3.Call localVarCall = {{operationId}}ValidateBeforeCall({{#allParams}}{{paramName}}, {{/allParams}}null);
{{#returnType}}Type localVarReturnType = new TypeToken<{{{returnType}}}>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);{{/returnType}}{{^returnType}}return localVarApiClient.execute(localVarCall);{{/returnType}}
{{^returnType}}
return localVarApiClient.execute(localVarCall);
{{/returnType}}
{{#returnType}}
try {
Type localVarReturnType = new TypeToken<{{{returnType}}}>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<{{{.}}}>(){}.getType()));
e.setErrorObjectType(new GenericType<{{{.}}}>(){});
throw e;
}
{{/returnType}}
}
{{/vendorExtensions.x-streaming}}

Expand Down
Expand Up @@ -9,6 +9,8 @@ import java.util.Map.Entry;
import java.util.TreeMap;
{{/caseInsensitiveResponseHeaders}}

import javax.ws.rs.core.GenericType;

/**
* <p>ApiException class.</p>
*/
Expand All @@ -18,6 +20,8 @@ public class ApiException extends{{#useRuntimeException}} RuntimeException {{/us
private int code = 0;
private Map<String, List<String>> responseHeaders = null;
private String responseBody = null;
private Object errorObject = null;
private GenericType errorObjectType = null;
/**
* <p>Constructor for ApiException.</p>
Expand Down Expand Up @@ -156,4 +160,40 @@ public class ApiException extends{{#useRuntimeException}} RuntimeException {{/us
public String getResponseBody() {
return responseBody;
}

/**
* Get the error object type.
*
* @return Error object type
*/
public GenericType getErrorObjectType() {
return errorObjectType;
}

/**
* Set the error object type.
*
* @param errorObjectType object type
*/
public void setErrorObjectType(GenericType errorObjectType) {
this.errorObjectType = errorObjectType;
}

/**
* Get the error object.
*
* @return Error object
*/
public Object getErrorObject() {
return errorObject;
}

/**
* Get the error object.
*
* @param errorObject Error object
*/
public void setErrorObject(Object errorObject) {
this.errorObject = errorObject;
}
}
Expand Up @@ -16,6 +16,8 @@
import java.util.Map;
import java.util.List;

import javax.ws.rs.core.GenericType;

/**
* <p>ApiException class.</p>
*/
Expand All @@ -25,6 +27,8 @@ public class ApiException extends Exception {
private int code = 0;
private Map<String, List<String>> responseHeaders = null;
private String responseBody = null;
private Object errorObject = null;
private GenericType errorObjectType = null;

/**
* <p>Constructor for ApiException.</p>
Expand Down Expand Up @@ -151,4 +155,40 @@ public Map<String, List<String>> getResponseHeaders() {
public String getResponseBody() {
return responseBody;
}

/**
* Get the error object type.
*
* @return Error object type
*/
public GenericType getErrorObjectType() {
return errorObjectType;
}

/**
* Set the error object type.
*
* @param errorObjectType object type
*/
public void setErrorObjectType(GenericType errorObjectType) {
this.errorObjectType = errorObjectType;
}

/**
* Get the error object.
*
* @return Error object
*/
public Object getErrorObject() {
return errorObject;
}

/**
* Get the error object.
*
* @param errorObject Error object
*/
public void setErrorObject(Object errorObject) {
this.errorObject = errorObject;
}
}
Expand Up @@ -34,6 +34,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.core.GenericType;

public class AnotherFakeApi {
private ApiClient localVarApiClient;
Expand Down Expand Up @@ -143,8 +144,14 @@ public Client call123testSpecialTags(Client client) throws ApiException {
*/
public ApiResponse<Client> call123testSpecialTagsWithHttpInfo(Client client) throws ApiException {
okhttp3.Call localVarCall = call123testSpecialTagsValidateBeforeCall(client, null);
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<Client>(){}.getType()));
e.setErrorObjectType(new GenericType<Client>(){});
throw e;
}
}

/**
Expand Down
Expand Up @@ -34,6 +34,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.core.GenericType;

public class DefaultApi {
private ApiClient localVarApiClient;
Expand Down Expand Up @@ -135,8 +136,14 @@ public InlineResponseDefault fooGet() throws ApiException {
*/
public ApiResponse<InlineResponseDefault> fooGetWithHttpInfo() throws ApiException {
okhttp3.Call localVarCall = fooGetValidateBeforeCall(null);
Type localVarReturnType = new TypeToken<InlineResponseDefault>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<InlineResponseDefault>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<InlineResponseDefault>(){}.getType()));
e.setErrorObjectType(new GenericType<InlineResponseDefault>(){});
throw e;
}
}

/**
Expand Down
Expand Up @@ -43,6 +43,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.core.GenericType;

public class FakeApi {
private ApiClient localVarApiClient;
Expand Down Expand Up @@ -144,8 +145,14 @@ public HealthCheckResult fakeHealthGet() throws ApiException {
*/
public ApiResponse<HealthCheckResult> fakeHealthGetWithHttpInfo() throws ApiException {
okhttp3.Call localVarCall = fakeHealthGetValidateBeforeCall(null);
Type localVarReturnType = new TypeToken<HealthCheckResult>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<HealthCheckResult>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<HealthCheckResult>(){}.getType()));
e.setErrorObjectType(new GenericType<HealthCheckResult>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -251,8 +258,14 @@ public Boolean fakeOuterBooleanSerialize(Boolean body) throws ApiException {
*/
public ApiResponse<Boolean> fakeOuterBooleanSerializeWithHttpInfo(Boolean body) throws ApiException {
okhttp3.Call localVarCall = fakeOuterBooleanSerializeValidateBeforeCall(body, null);
Type localVarReturnType = new TypeToken<Boolean>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<Boolean>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<Boolean>(){}.getType()));
e.setErrorObjectType(new GenericType<Boolean>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -359,8 +372,14 @@ public OuterComposite fakeOuterCompositeSerialize(OuterComposite outerComposite)
*/
public ApiResponse<OuterComposite> fakeOuterCompositeSerializeWithHttpInfo(OuterComposite outerComposite) throws ApiException {
okhttp3.Call localVarCall = fakeOuterCompositeSerializeValidateBeforeCall(outerComposite, null);
Type localVarReturnType = new TypeToken<OuterComposite>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<OuterComposite>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<OuterComposite>(){}.getType()));
e.setErrorObjectType(new GenericType<OuterComposite>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -467,8 +486,14 @@ public BigDecimal fakeOuterNumberSerialize(BigDecimal body) throws ApiException
*/
public ApiResponse<BigDecimal> fakeOuterNumberSerializeWithHttpInfo(BigDecimal body) throws ApiException {
okhttp3.Call localVarCall = fakeOuterNumberSerializeValidateBeforeCall(body, null);
Type localVarReturnType = new TypeToken<BigDecimal>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<BigDecimal>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<BigDecimal>(){}.getType()));
e.setErrorObjectType(new GenericType<BigDecimal>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -575,8 +600,14 @@ public String fakeOuterStringSerialize(String body) throws ApiException {
*/
public ApiResponse<String> fakeOuterStringSerializeWithHttpInfo(String body) throws ApiException {
okhttp3.Call localVarCall = fakeOuterStringSerializeValidateBeforeCall(body, null);
Type localVarReturnType = new TypeToken<String>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<String>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<String>(){}.getType()));
e.setErrorObjectType(new GenericType<String>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -680,8 +711,14 @@ public List<OuterEnum> getArrayOfEnums() throws ApiException {
*/
public ApiResponse<List<OuterEnum>> getArrayOfEnumsWithHttpInfo() throws ApiException {
okhttp3.Call localVarCall = getArrayOfEnumsValidateBeforeCall(null);
Type localVarReturnType = new TypeToken<List<OuterEnum>>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<List<OuterEnum>>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<List<OuterEnum>>(){}.getType()));
e.setErrorObjectType(new GenericType<List<OuterEnum>>(){});
throw e;
}
}

/**
Expand Down Expand Up @@ -1023,8 +1060,14 @@ public Client testClientModel(Client client) throws ApiException {
*/
public ApiResponse<Client> testClientModelWithHttpInfo(Client client) throws ApiException {
okhttp3.Call localVarCall = testClientModelValidateBeforeCall(client, null);
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<Client>(){}.getType()));
e.setErrorObjectType(new GenericType<Client>(){});
throw e;
}
}

/**
Expand Down
Expand Up @@ -34,6 +34,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.core.GenericType;

public class FakeClassnameTags123Api {
private ApiClient localVarApiClient;
Expand Down Expand Up @@ -143,8 +144,14 @@ public Client testClassname(Client client) throws ApiException {
*/
public ApiResponse<Client> testClassnameWithHttpInfo(Client client) throws ApiException {
okhttp3.Call localVarCall = testClassnameValidateBeforeCall(client, null);
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
try {
Type localVarReturnType = new TypeToken<Client>(){}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
} catch (ApiException e) {
e.setErrorObject(localVarApiClient.getJSON().getGson().fromJson(e.getResponseBody(), new TypeToken<Client>(){}.getType()));
e.setErrorObjectType(new GenericType<Client>(){});
throw e;
}
}

/**
Expand Down

0 comments on commit 07f34e2

Please sign in to comment.