All Downloads are FREE. Search and download functionalities are using the official Maven repository.

Java.libraries.jersey3.apiException.mustache Maven / Gradle / Ivy

There is a newer version: 7.9.0
Show newest version
{{>licenseInfo}}

package {{invokerPackage}};

import java.util.Map;
import java.util.List;
{{#caseInsensitiveResponseHeaders}}
import java.util.Map.Entry;
import java.util.TreeMap;
{{/caseInsensitiveResponseHeaders}}

/**
 * API Exception
 */
{{>generatedAnnotation}}
public class ApiException extends{{#useRuntimeException}} RuntimeException {{/useRuntimeException}}{{^useRuntimeException}} Exception {{/useRuntimeException}}{
    private int code = 0;
    private Map> responseHeaders = null;
    private String responseBody = null;

    public ApiException() {}

    public ApiException(Throwable throwable) {
        super(throwable);
    }

    public ApiException(String message) {
        super(message);
    }

    public ApiException(String message, Throwable throwable, int code, Map> responseHeaders, String responseBody) {
        super(message, throwable);
        this.code = code;
        {{#caseInsensitiveResponseHeaders}}
        Map> headers = new TreeMap>(String.CASE_INSENSITIVE_ORDER);
        for(Entry> entry : responseHeaders.entrySet()){
            headers.put(entry.getKey().toLowerCase(), entry.getValue());
        }
        {{/caseInsensitiveResponseHeaders}}
        this.responseHeaders = {{#caseInsensitiveResponseHeaders}}headers{{/caseInsensitiveResponseHeaders}}{{^caseInsensitiveResponseHeaders}}responseHeaders{{/caseInsensitiveResponseHeaders}};
        this.responseBody = responseBody;
    }

    public ApiException(String message, int code, Map> responseHeaders, String responseBody) {
        this(message, (Throwable) null, code, responseHeaders, responseBody);
    }

    public ApiException(String message, Throwable throwable, int code, Map> responseHeaders) {
        this(message, throwable, code, responseHeaders, null);
    }

    public ApiException(int code, Map> responseHeaders, String responseBody) {
        this((String) null, (Throwable) null, code, responseHeaders, responseBody);
    }

    public ApiException(int code, String message) {
        super(message);
        this.code = code;
    }

    public ApiException(int code, String message, Map> responseHeaders, String responseBody) {
        this(code, message);
        {{#caseInsensitiveResponseHeaders}}
        Map> headers = new TreeMap>(String.CASE_INSENSITIVE_ORDER);
        for(Entry> entry : responseHeaders.entrySet()){
            headers.put(entry.getKey().toLowerCase(), entry.getValue());
        }
        {{/caseInsensitiveResponseHeaders}}
        this.responseHeaders = {{#caseInsensitiveResponseHeaders}}headers{{/caseInsensitiveResponseHeaders}}{{^caseInsensitiveResponseHeaders}}responseHeaders{{/caseInsensitiveResponseHeaders}};
        this.responseBody = responseBody;
    }

    /**
     * Get the HTTP status code.
     *
     * @return HTTP status code
     */
    public int getCode() {
        return code;
    }

    /**
     * Get the HTTP response headers.
     *
     * @return A map of list of string
     */
    public Map> getResponseHeaders() {
        return responseHeaders;
    }

    /**
     * Get the HTTP response body.
     *
     * @return Response body in the form of string
     */
    public String getResponseBody() {
        return responseBody;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy