package {{apiPackage}};

/**
 * The server returned a status code that is not documented in the API.
 */
{{>generatedAnnotation}}
public class UnexpectedResponseException extends {{apiPackage}}.UnexpectedApiException {

	private static final long serialVersionUID = 1L;

	private {{javax}}.ws.rs.core.Response response;
	private {{javax}}.ws.rs.WebApplicationException webApplicationException;

	public UnexpectedResponseException({{javax}}.ws.rs.core.Response response, {{javax}}.ws.rs.WebApplicationException exception) {
		super("Unexpected response status " + response.getStatus());
		this.response = response;
		this.webApplicationException = exception;
	}

	public {{javax}}.ws.rs.core.Response getResponse() {
		return response;
	}

	public {{javax}}.ws.rs.WebApplicationException getWebApplicationException() {
		return webApplicationException;
	}

	public int getStatus() {
		return response.getStatus();
	}

}
