getAuthentications() {
- return authentications;
- }
-
- /**
- * Get authentication for the given name.
- *
- * @param authName The authentication name
- * @return The authentication, null if not found
- */
- public Authentication getAuthentication(String authName) {
- return authentications.get(authName);
- }
-
- /**
- * Helper method to set username for the first HTTP basic authentication.
- *
- * @param username Username
- */
- public void setUsername(String username) {
- for (Authentication auth : authentications.values()) {
- if (auth instanceof HttpBasicAuth) {
- ((HttpBasicAuth) auth).setUsername(username);
- return;
- }
- }
- throw new RuntimeException("No HTTP basic authentication configured!");
- }
-
- /**
- * Helper method to set password for the first HTTP basic authentication.
- *
- * @param password Password
- */
- public void setPassword(String password) {
- for (Authentication auth : authentications.values()) {
- if (auth instanceof HttpBasicAuth) {
- ((HttpBasicAuth) auth).setPassword(password);
- return;
- }
- }
- throw new RuntimeException("No HTTP basic authentication configured!");
- }
-
- /**
- * Helper method to set API key value for the first API key authentication.
- *
- * @param apiKey API key
- */
- public void setApiKey(String apiKey) {
- for (Authentication auth : authentications.values()) {
- if (auth instanceof ApiKeyAuth) {
- ((ApiKeyAuth) auth).setApiKey(apiKey);
- return;
- }
- }
- throw new RuntimeException("No API key authentication configured!");
- }
-
- /**
- * Helper method to set API key prefix for the first API key authentication.
- *
- * @param apiKeyPrefix API key prefix
- */
- public void setApiKeyPrefix(String apiKeyPrefix) {
- for (Authentication auth : authentications.values()) {
- if (auth instanceof ApiKeyAuth) {
- ((ApiKeyAuth) auth).setApiKeyPrefix(apiKeyPrefix);
- return;
- }
- }
- throw new RuntimeException("No API key authentication configured!");
- }
-
- /**
- * Helper method to set access token for the first OAuth2 authentication.
- *
- * @param accessToken Access token
- */
- public void setAccessToken(String accessToken) {
- throw new RuntimeException("No OAuth2 authentication configured!");
- }
-
- /**
- * Helper method to set credentials for AWSV4 Signature
- *
- * @param accessKey Access Key
- * @param secretKey Secret Key
- * @param region Region
- * @param service Service to access to
- */
- public void setAWS4Configuration(
- String accessKey, String secretKey, String region, String service) {
- for (Authentication auth : authentications.values()) {
- if (auth instanceof AWS4Auth) {
- ((AWS4Auth) auth).setCredentials(accessKey, secretKey);
- ((AWS4Auth) auth).setRegion(region);
- ((AWS4Auth) auth).setService(service);
- return;
- }
- }
- throw new RuntimeException("No AWS4 authentication configured!");
- }
-
- /**
- * Set the User-Agent header's value (by adding to the default header map).
- *
- * @param userAgent HTTP request's user agent
- * @return ApiClient
- */
- public ApiClient setUserAgent(String userAgent) {
- addDefaultHeader("User-Agent", userAgent);
- return this;
- }
-
- /**
- * Add a default header.
- *
- * @param key The header's key
- * @param value The header's value
- * @return ApiClient
- */
- public ApiClient addDefaultHeader(String key, String value) {
- defaultHeaderMap.put(key, value);
- return this;
- }
-
- /**
- * Add a default cookie.
- *
- * @param key The cookie's key
- * @param value The cookie's value
- * @return ApiClient
- */
- public ApiClient addDefaultCookie(String key, String value) {
- defaultCookieMap.put(key, value);
- return this;
- }
-
- /**
- * Check that whether debugging is enabled for this API client.
- *
- * @return True if debugging is enabled, false otherwise.
- */
- public boolean isDebugging() {
- return debugging;
- }
-
- /**
- * Enable/disable debugging for this API client.
- *
- * @param debugging To enable (true) or disable (false) debugging
- * @return ApiClient
- */
- public ApiClient setDebugging(boolean debugging) {
- if (debugging != this.debugging) {
- if (debugging) {
- loggingInterceptor = new HttpLoggingInterceptor();
- loggingInterceptor.setLevel(Level.BODY);
- httpClient = httpClient.newBuilder().addInterceptor(loggingInterceptor).build();
- } else {
- final OkHttpClient.Builder builder = httpClient.newBuilder();
- builder.interceptors().remove(loggingInterceptor);
- httpClient = builder.build();
- loggingInterceptor = null;
- }
- }
- this.debugging = debugging;
- return this;
- }
-
- /**
- * The path of temporary folder used to store downloaded files from endpoints with file
- * response. The default value is null, i.e. using the system's default temporary
- * folder.
- *
- * @see createTempFile
- * @return Temporary folder path
- */
- public String getTempFolderPath() {
- return tempFolderPath;
- }
-
- /**
- * Set the temporary folder path (for downloading files)
- *
- * @param tempFolderPath Temporary folder path
- * @return ApiClient
- */
- public ApiClient setTempFolderPath(String tempFolderPath) {
- this.tempFolderPath = tempFolderPath;
- return this;
- }
-
- /**
- * Get connection timeout (in milliseconds).
- *
- * @return Timeout in milliseconds
- */
- public int getConnectTimeout() {
- return httpClient.connectTimeoutMillis();
- }
-
- /**
- * Sets the connect timeout (in milliseconds). A value of 0 means no timeout, otherwise values
- * must be between 1 and {@link java.lang.Integer#MAX_VALUE}.
- *
- * @param connectionTimeout connection timeout in milliseconds
- * @return Api client
- */
- public ApiClient setConnectTimeout(int connectionTimeout) {
- httpClient =
- httpClient
- .newBuilder()
- .connectTimeout(connectionTimeout, TimeUnit.MILLISECONDS)
- .build();
- return this;
- }
-
- /**
- * Get read timeout (in milliseconds).
- *
- * @return Timeout in milliseconds
- */
- public int getReadTimeout() {
- return httpClient.readTimeoutMillis();
- }
-
- /**
- * Sets the read timeout (in milliseconds). A value of 0 means no timeout, otherwise values must
- * be between 1 and {@link java.lang.Integer#MAX_VALUE}.
- *
- * @param readTimeout read timeout in milliseconds
- * @return Api client
- */
- public ApiClient setReadTimeout(int readTimeout) {
- httpClient =
- httpClient.newBuilder().readTimeout(readTimeout, TimeUnit.MILLISECONDS).build();
- return this;
- }
-
- /**
- * Get write timeout (in milliseconds).
- *
- * @return Timeout in milliseconds
- */
- public int getWriteTimeout() {
- return httpClient.writeTimeoutMillis();
- }
-
- /**
- * Sets the write timeout (in milliseconds). A value of 0 means no timeout, otherwise values
- * must be between 1 and {@link java.lang.Integer#MAX_VALUE}.
- *
- * @param writeTimeout connection timeout in milliseconds
- * @return Api client
- */
- public ApiClient setWriteTimeout(int writeTimeout) {
- httpClient =
- httpClient.newBuilder().writeTimeout(writeTimeout, TimeUnit.MILLISECONDS).build();
- return this;
- }
-
- /**
- * Format the given parameter object into string.
- *
- * @param param Parameter
- * @return String representation of the parameter
- */
- public String parameterToString(Object param) {
- if (param == null) {
- return "";
- } else if (param instanceof Date
- || param instanceof OffsetDateTime
- || param instanceof LocalDate) {
- // Serialize to json string and remove the " enclosing characters
- String jsonStr = JSON.serialize(param);
- return jsonStr.substring(1, jsonStr.length() - 1);
- } else if (param instanceof Collection) {
- StringBuilder b = new StringBuilder();
- for (Object o : (Collection) param) {
- if (b.length() > 0) {
- b.append(",");
- }
- b.append(o);
- }
- return b.toString();
- } else {
- return String.valueOf(param);
- }
- }
-
- /**
- * Formats the specified query parameter to a list containing a single {@code Pair} object.
- *
- * Note that {@code value} must not be a collection.
- *
- * @param name The name of the parameter.
- * @param value The value of the parameter.
- * @return A list containing a single {@code Pair} object.
- */
- public List parameterToPair(String name, Object value) {
- List params = new ArrayList();
-
- // preconditions
- if (name == null || name.isEmpty() || value == null || value instanceof Collection) {
- return params;
- }
-
- params.add(new Pair(name, parameterToString(value)));
- return params;
- }
-
- /**
- * Formats the specified collection query parameters to a list of {@code Pair} objects.
- *
- * Note that the values of each of the returned Pair objects are percent-encoded.
- *
- * @param collectionFormat The collection format of the parameter.
- * @param name The name of the parameter.
- * @param value The value of the parameter.
- * @return A list of {@code Pair} objects.
- */
- public List parameterToPairs(String collectionFormat, String name, Collection value) {
- List params = new ArrayList();
-
- // preconditions
- if (name == null || name.isEmpty() || value == null || value.isEmpty()) {
- return params;
- }
-
- // create the params based on the collection format
- if ("multi".equals(collectionFormat)) {
- for (Object item : value) {
- params.add(new Pair(name, escapeString(parameterToString(item))));
- }
- return params;
- }
-
- // collectionFormat is assumed to be "csv" by default
- String delimiter = ",";
-
- // escape all delimiters except commas, which are URI reserved
- // characters
- if ("ssv".equals(collectionFormat)) {
- delimiter = escapeString(" ");
- } else if ("tsv".equals(collectionFormat)) {
- delimiter = escapeString("\t");
- } else if ("pipes".equals(collectionFormat)) {
- delimiter = escapeString("|");
- }
-
- StringBuilder sb = new StringBuilder();
- for (Object item : value) {
- sb.append(delimiter);
- sb.append(escapeString(parameterToString(item)));
- }
-
- params.add(new Pair(name, sb.substring(delimiter.length())));
-
- return params;
- }
-
- /**
- * Formats the specified collection path parameter to a string value.
- *
- * @param collectionFormat The collection format of the parameter.
- * @param value The value of the parameter.
- * @return String representation of the parameter
- */
- public String collectionPathParameterToString(String collectionFormat, Collection value) {
- // create the value based on the collection format
- if ("multi".equals(collectionFormat)) {
- // not valid for path params
- return parameterToString(value);
- }
-
- // collectionFormat is assumed to be "csv" by default
- String delimiter = ",";
-
- if ("ssv".equals(collectionFormat)) {
- delimiter = " ";
- } else if ("tsv".equals(collectionFormat)) {
- delimiter = "\t";
- } else if ("pipes".equals(collectionFormat)) {
- delimiter = "|";
- }
-
- StringBuilder sb = new StringBuilder();
- for (Object item : value) {
- sb.append(delimiter);
- sb.append(parameterToString(item));
- }
-
- return sb.substring(delimiter.length());
- }
-
- /**
- * Sanitize filename by removing path. e.g. ../../sun.gif becomes sun.gif
- *
- * @param filename The filename to be sanitized
- * @return The sanitized filename
- */
- public String sanitizeFilename(String filename) {
- return filename.replaceAll(".*[/\\\\]", "");
- }
-
- /**
- * Check if the given MIME is a JSON MIME. JSON MIME examples: application/json
- * application/json; charset=UTF8 APPLICATION/JSON application/vnd.company+json "* / *" is also
- * default to JSON
- *
- * @param mime MIME (Multipurpose Internet Mail Extensions)
- * @return True if the given MIME is JSON, false otherwise.
- */
- public boolean isJsonMime(String mime) {
- String jsonMime = "(?i)^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$";
- return mime != null && (mime.matches(jsonMime) || mime.equals("*/*"));
- }
-
- /**
- * Select the Accept header's value from the given accepts array: if JSON exists in the given
- * array, use it; otherwise use all of them (joining into a string)
- *
- * @param accepts The accepts array to select from
- * @return The Accept header to use. If the given array is empty, null will be returned (not to
- * set the Accept header explicitly).
- */
- public String selectHeaderAccept(String[] accepts) {
- if (accepts.length == 0) {
- return null;
- }
- for (String accept : accepts) {
- if (isJsonMime(accept)) {
- return accept;
- }
- }
- return StringUtil.join(accepts, ",");
- }
-
- /**
- * Select the Content-Type header's value from the given array: if JSON exists in the given
- * array, use it; otherwise use the first one of the array.
- *
- * @param contentTypes The Content-Type array to select from
- * @return The Content-Type header to use. If the given array is empty, returns null. If it
- * matches "any", JSON will be used.
- */
- public String selectHeaderContentType(String[] contentTypes) {
- if (contentTypes.length == 0) {
- return null;
- }
-
- if (contentTypes[0].equals("*/*")) {
- return "application/json";
- }
-
- for (String contentType : contentTypes) {
- if (isJsonMime(contentType)) {
- return contentType;
- }
- }
-
- return contentTypes[0];
- }
-
- /**
- * Escape the given string to be used as URL query value.
- *
- * @param str String to be escaped
- * @return Escaped string
- */
- public String escapeString(String str) {
- try {
- return URLEncoder.encode(str, "utf8").replaceAll("\\+", "%20");
- } catch (UnsupportedEncodingException e) {
- return str;
- }
- }
-
- /**
- * Deserialize response body to Java object, according to the return type and the Content-Type
- * response header.
- *
- * @param Type
- * @param response HTTP response
- * @param returnType The type of the Java object
- * @return The deserialized Java object
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to deserialize response
- * body, i.e. cannot read response body or the Content-Type of the response is not
- * supported.
- */
- @SuppressWarnings("unchecked")
- public T deserialize(Response response, Type returnType) throws ApiException {
- if (response == null || returnType == null) {
- return null;
- }
-
- if ("byte[]".equals(returnType.toString())) {
- // Handle binary response (byte array).
- try {
- return (T) response.body().bytes();
- } catch (IOException e) {
- throw new ApiException(e);
- }
- } else if (returnType.equals(File.class)) {
- // Handle file downloading.
- return (T) downloadFileFromResponse(response);
- }
-
- String respBody;
- try {
- if (response.body() != null) respBody = response.body().string();
- else respBody = null;
- } catch (IOException e) {
- throw new ApiException(e);
- }
-
- if (respBody == null || "".equals(respBody)) {
- return null;
- }
-
- String contentType = response.headers().get("Content-Type");
- if (contentType == null) {
- // ensuring a default content type
- contentType = "application/json";
- }
- if (isJsonMime(contentType)) {
- return JSON.deserialize(respBody, returnType);
- } else if (returnType.equals(String.class)) {
- // Expecting string, return the raw response body.
- return (T) respBody;
- } else {
- throw new ApiException(
- "Content type \"" + contentType + "\" is not supported for type: " + returnType,
- response.code(),
- response.headers().toMultimap(),
- respBody);
- }
- }
-
- /**
- * Serialize the given Java object into request body according to the object's class and the
- * request Content-Type.
- *
- * @param obj The Java object
- * @param contentType The request Content-Type
- * @return The serialized request body
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to serialize the given
- * object
- */
- public RequestBody serialize(Object obj, String contentType) throws ApiException {
- if (obj instanceof byte[]) {
- // Binary (byte array) body parameter support.
- return RequestBody.create((byte[]) obj, MediaType.parse(contentType));
- } else if (obj instanceof File) {
- // File body parameter support.
- return RequestBody.create((File) obj, MediaType.parse(contentType));
- } else if ("text/plain".equals(contentType) && obj instanceof String) {
- return RequestBody.create((String) obj, MediaType.parse(contentType));
- } else if (isJsonMime(contentType)) {
- String content;
- if (obj != null) {
- content = JSON.serialize(obj);
- } else {
- content = null;
- }
- return RequestBody.create(content, MediaType.parse(contentType));
- } else if (obj instanceof String) {
- return RequestBody.create((String) obj, MediaType.parse(contentType));
- } else {
- throw new ApiException("Content type \"" + contentType + "\" is not supported");
- }
- }
-
- /**
- * Download file from the given response.
- *
- * @param response An instance of the Response object
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to read file content from
- * response and write to disk
- * @return Downloaded file
- */
- public File downloadFileFromResponse(Response response) throws ApiException {
- try {
- File file = prepareDownloadFile(response);
- BufferedSink sink = Okio.buffer(Okio.sink(file));
- sink.writeAll(response.body().source());
- sink.close();
- return file;
- } catch (IOException e) {
- throw new ApiException(e);
- }
- }
-
- /**
- * Prepare file for download
- *
- * @param response An instance of the Response object
- * @return Prepared file for the download
- * @throws java.io.IOException If fail to prepare file for download
- */
- public File prepareDownloadFile(Response response) throws IOException {
- String filename = null;
- String contentDisposition = response.header("Content-Disposition");
- if (contentDisposition != null && !"".equals(contentDisposition)) {
- // Get filename from the Content-Disposition header.
- Pattern pattern = Pattern.compile("filename=['\"]?([^'\"\\s]+)['\"]?");
- Matcher matcher = pattern.matcher(contentDisposition);
- if (matcher.find()) {
- filename = sanitizeFilename(matcher.group(1));
- }
- }
-
- String prefix = null;
- String suffix = null;
- if (filename == null) {
- prefix = "download-";
- suffix = "";
- } else {
- int pos = filename.lastIndexOf(".");
- if (pos == -1) {
- prefix = filename + "-";
- } else {
- prefix = filename.substring(0, pos) + "-";
- suffix = filename.substring(pos);
- }
- // Files.createTempFile requires the prefix to be at least three characters long
- if (prefix.length() < 3) prefix = "download-";
- }
-
- if (tempFolderPath == null) return Files.createTempFile(prefix, suffix).toFile();
- else return Files.createTempFile(Paths.get(tempFolderPath), prefix, suffix).toFile();
- }
-
- /**
- * {@link #execute(Call, Type)}
- *
- * @param Type
- * @param call An instance of the Call object
- * @return ApiResponse<T>
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to execute the call
- */
- public ApiResponse execute(Call call) throws ApiException {
- return execute(call, null);
- }
-
- /**
- * Execute HTTP call and deserialize the HTTP response body into the given return type.
- *
- * @param returnType The return type used to deserialize HTTP response body
- * @param The return type corresponding to (same with) returnType
- * @param call Call
- * @return ApiResponse object containing response status, headers and data, which is a Java
- * object deserialized from response body and would be null when returnType is null.
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to execute the call
- */
- public ApiResponse execute(Call call, Type returnType) throws ApiException {
- try {
- Response response = call.execute();
- T data = handleResponse(response, returnType);
- return new ApiResponse(response.code(), response.headers().toMultimap(), data);
- } catch (IOException e) {
- throw new ApiException(e);
- }
- }
-
- /**
- * {@link #executeAsync(Call, Type, ApiCallback)}
- *
- * @param Type
- * @param call An instance of the Call object
- * @param callback ApiCallback<T>
- */
- public void executeAsync(Call call, ApiCallback callback) {
- executeAsync(call, null, callback);
- }
-
- /**
- * Execute HTTP call asynchronously.
- *
- * @param Type
- * @param call The callback to be executed when the API call finishes
- * @param returnType Return type
- * @param callback ApiCallback
- * @see #execute(Call, Type)
- */
- @SuppressWarnings("unchecked")
- public void executeAsync(Call call, final Type returnType, final ApiCallback callback) {
- call.enqueue(
- new Callback() {
- @Override
- public void onFailure(Call call, IOException e) {
- callback.onFailure(new ApiException(e), 0, null);
- }
-
- @Override
- public void onResponse(Call call, Response response) throws IOException {
- T result;
- try {
- result = (T) handleResponse(response, returnType);
- } catch (ApiException e) {
- callback.onFailure(e, response.code(), response.headers().toMultimap());
- return;
- } catch (Exception e) {
- callback.onFailure(
- new ApiException(e),
- response.code(),
- response.headers().toMultimap());
- return;
- }
- callback.onSuccess(
- result, response.code(), response.headers().toMultimap());
- }
- });
- }
-
- /**
- * Handle the given response, return the deserialized object when the response is successful.
- *
- * @param Type
- * @param response Response
- * @param returnType Return type
- * @return Type
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If the response has an
- * unsuccessful status code or fail to deserialize the response body
- */
- public T handleResponse(Response response, Type returnType) throws ApiException {
- if (response.isSuccessful()) {
- if (returnType == null || response.code() == 204) {
- // returning null if the returnType is not defined,
- // or the status code is 204 (No Content)
- if (response.body() != null) {
- try {
- response.body().close();
- } catch (Exception e) {
- throw new ApiException(
- response.message(),
- e,
- response.code(),
- response.headers().toMultimap());
- }
- }
- return null;
- } else {
- return deserialize(response, returnType);
- }
- } else {
- String respBody = null;
- if (response.body() != null) {
- try {
- respBody = response.body().string();
- } catch (IOException e) {
- throw new ApiException(
- response.message(),
- e,
- response.code(),
- response.headers().toMultimap());
- }
- }
- throw new ApiException(
- response.message(), response.code(), response.headers().toMultimap(), respBody);
- }
- }
-
- /**
- * Build HTTP call with the given options.
- *
- * @param baseUrl The base URL
- * @param path The sub-path of the HTTP URL
- * @param method The request method, one of "GET", "HEAD", "OPTIONS", "POST", "PUT", "PATCH" and
- * "DELETE"
- * @param queryParams The query parameters
- * @param collectionQueryParams The collection query parameters
- * @param body The request body object
- * @param headerParams The header parameters
- * @param cookieParams The cookie parameters
- * @param formParams The form parameters
- * @param authNames The authentications to apply
- * @param callback Callback for upload/download progress
- * @return The HTTP call
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to serialize the request
- * body object
- */
- public Call buildCall(
- String baseUrl,
- String path,
- String method,
- List queryParams,
- List collectionQueryParams,
- Object body,
- Map headerParams,
- Map cookieParams,
- Map formParams,
- String[] authNames,
- ApiCallback callback)
- throws ApiException {
- Request request =
- buildRequest(
- baseUrl,
- path,
- method,
- queryParams,
- collectionQueryParams,
- body,
- headerParams,
- cookieParams,
- formParams,
- authNames,
- callback);
-
- return httpClient.newCall(request);
- }
-
- /**
- * Build an HTTP request with the given options.
- *
- * @param baseUrl The base URL
- * @param path The sub-path of the HTTP URL
- * @param method The request method, one of "GET", "HEAD", "OPTIONS", "POST", "PUT", "PATCH" and
- * "DELETE"
- * @param queryParams The query parameters
- * @param collectionQueryParams The collection query parameters
- * @param body The request body object
- * @param headerParams The header parameters
- * @param cookieParams The cookie parameters
- * @param formParams The form parameters
- * @param authNames The authentications to apply
- * @param callback Callback for upload/download progress
- * @return The HTTP request
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to serialize the request
- * body object
- */
- public Request buildRequest(
- String baseUrl,
- String path,
- String method,
- List queryParams,
- List collectionQueryParams,
- Object body,
- Map headerParams,
- Map cookieParams,
- Map formParams,
- String[] authNames,
- ApiCallback callback)
- throws ApiException {
- // aggregate queryParams (non-collection) and collectionQueryParams into allQueryParams
- List allQueryParams = new ArrayList(queryParams);
- allQueryParams.addAll(collectionQueryParams);
-
- final String url = buildUrl(baseUrl, path, queryParams, collectionQueryParams);
-
- // prepare HTTP request body
- RequestBody reqBody;
- String contentType = headerParams.get("Content-Type");
-
- if (!HttpMethod.permitsRequestBody(method)) {
- reqBody = null;
- } else if ("application/x-www-form-urlencoded".equals(contentType)) {
- reqBody = buildRequestBodyFormEncoding(formParams);
- } else if ("multipart/form-data".equals(contentType)) {
- reqBody = buildRequestBodyMultipart(formParams);
- } else if (body == null) {
- if ("DELETE".equals(method)) {
- // allow calling DELETE without sending a request body
- reqBody = null;
- } else {
- // use an empty request body (for POST, PUT and PATCH)
- reqBody =
- RequestBody.create(
- "", contentType == null ? null : MediaType.parse(contentType));
- }
- } else {
- reqBody = serialize(body, contentType);
- }
-
- // update parameters with authentication settings
- updateParamsForAuth(
- authNames,
- allQueryParams,
- headerParams,
- cookieParams,
- requestBodyToString(reqBody),
- method,
- URI.create(url));
-
- final Request.Builder reqBuilder = new Request.Builder().url(url);
- processHeaderParams(headerParams, reqBuilder);
- processCookieParams(cookieParams, reqBuilder);
-
- // Associate callback with request (if not null) so interceptor can
- // access it when creating ProgressResponseBody
- reqBuilder.tag(callback);
-
- Request request = null;
-
- if (callback != null && reqBody != null) {
- ProgressRequestBody progressRequestBody = new ProgressRequestBody(reqBody, callback);
- request = reqBuilder.method(method, progressRequestBody).build();
- } else {
- request = reqBuilder.method(method, reqBody).build();
- }
-
- return request;
- }
-
- /**
- * Build full URL by concatenating base path, the given sub path and query parameters.
- *
- * @param baseUrl The base URL
- * @param path The sub path
- * @param queryParams The query parameters
- * @param collectionQueryParams The collection query parameters
- * @return The full URL
- */
- public String buildUrl(
- String baseUrl, String path, List queryParams, List collectionQueryParams) {
- final StringBuilder url = new StringBuilder();
- if (baseUrl != null) {
- url.append(baseUrl).append(path);
- } else {
- String baseURL;
- if (basePath != null) {
- baseURL = basePath;
- } else if (serverIndex != null) {
- if (serverIndex < 0 || serverIndex >= servers.size()) {
- throw new ArrayIndexOutOfBoundsException(
- String.format(
- "Invalid index %d when selecting the host settings. Must be"
- + " less than %d",
- serverIndex, servers.size()));
- }
- baseURL = servers.get(serverIndex).URL(serverVariables);
- } else {
- baseURL = backupPath;
- }
- url.append(baseURL).append(path);
- }
-
- if (queryParams != null && !queryParams.isEmpty()) {
- // support (constant) query string in `path`, e.g. "/posts?draft=1"
- String prefix = path.contains("?") ? "&" : "?";
- for (Pair param : queryParams) {
- if (param.getValue() != null) {
- if (prefix != null) {
- url.append(prefix);
- prefix = null;
- } else {
- url.append("&");
- }
- String value = parameterToString(param.getValue());
- url.append(escapeString(param.getName()))
- .append("=")
- .append(escapeString(value));
- }
- }
- }
-
- if (collectionQueryParams != null && !collectionQueryParams.isEmpty()) {
- String prefix = url.toString().contains("?") ? "&" : "?";
- for (Pair param : collectionQueryParams) {
- if (param.getValue() != null) {
- if (prefix != null) {
- url.append(prefix);
- prefix = null;
- } else {
- url.append("&");
- }
- String value = parameterToString(param.getValue());
- // collection query parameter value already escaped as part of parameterToPairs
- url.append(escapeString(param.getName())).append("=").append(value);
- }
- }
- }
-
- return url.toString();
- }
-
- /**
- * Set header parameters to the request builder, including default headers.
- *
- * @param headerParams Header parameters in the form of Map
- * @param reqBuilder Request.Builder
- */
- public void processHeaderParams(Map headerParams, Request.Builder reqBuilder) {
- for (Entry param : headerParams.entrySet()) {
- reqBuilder.header(param.getKey(), parameterToString(param.getValue()));
- }
- for (Entry header : defaultHeaderMap.entrySet()) {
- if (!headerParams.containsKey(header.getKey())) {
- reqBuilder.header(header.getKey(), parameterToString(header.getValue()));
- }
- }
- }
-
- /**
- * Set cookie parameters to the request builder, including default cookies.
- *
- * @param cookieParams Cookie parameters in the form of Map
- * @param reqBuilder Request.Builder
- */
- public void processCookieParams(Map cookieParams, Request.Builder reqBuilder) {
- for (Entry param : cookieParams.entrySet()) {
- reqBuilder.addHeader(
- "Cookie", String.format("%s=%s", param.getKey(), param.getValue()));
- }
- for (Entry param : defaultCookieMap.entrySet()) {
- if (!cookieParams.containsKey(param.getKey())) {
- reqBuilder.addHeader(
- "Cookie", String.format("%s=%s", param.getKey(), param.getValue()));
- }
- }
- }
-
- /**
- * Update query and header parameters based on authentication settings.
- *
- * @param authNames The authentications to apply
- * @param queryParams List of query parameters
- * @param headerParams Map of header parameters
- * @param cookieParams Map of cookie parameters
- * @param payload HTTP request body
- * @param method HTTP method
- * @param uri URI
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fails to update the parameters
- */
- public void updateParamsForAuth(
- String[] authNames,
- List queryParams,
- Map headerParams,
- Map cookieParams,
- String payload,
- String method,
- URI uri)
- throws ApiException {
- for (String authName : authNames) {
- Authentication auth = authentications.get(authName);
- if (auth == null) {
- throw new RuntimeException("Authentication undefined: " + authName);
- }
- auth.applyToParams(queryParams, headerParams, cookieParams, payload, method, uri);
- }
- }
-
- /**
- * Build a form-encoding request body with the given form parameters.
- *
- * @param formParams Form parameters in the form of Map
- * @return RequestBody
- */
- public RequestBody buildRequestBodyFormEncoding(Map formParams) {
- okhttp3.FormBody.Builder formBuilder = new okhttp3.FormBody.Builder();
- for (Entry param : formParams.entrySet()) {
- formBuilder.add(param.getKey(), parameterToString(param.getValue()));
- }
- return formBuilder.build();
- }
-
- /**
- * Build a multipart (file uploading) request body with the given form parameters, which could
- * contain text fields and file fields.
- *
- * @param formParams Form parameters in the form of Map
- * @return RequestBody
- */
- public RequestBody buildRequestBodyMultipart(Map formParams) {
- MultipartBody.Builder mpBuilder = new MultipartBody.Builder().setType(MultipartBody.FORM);
- for (Entry param : formParams.entrySet()) {
- if (param.getValue() instanceof File) {
- File file = (File) param.getValue();
- addPartToMultiPartBuilder(mpBuilder, param.getKey(), file);
- } else if (param.getValue() instanceof List) {
- List list = (List) param.getValue();
- for (Object item : list) {
- if (item instanceof File) {
- addPartToMultiPartBuilder(mpBuilder, param.getKey(), (File) item);
- } else {
- addPartToMultiPartBuilder(mpBuilder, param.getKey(), param.getValue());
- }
- }
- } else {
- addPartToMultiPartBuilder(mpBuilder, param.getKey(), param.getValue());
- }
- }
- return mpBuilder.build();
- }
-
- /**
- * Guess Content-Type header from the given file (defaults to "application/octet-stream").
- *
- * @param file The given file
- * @return The guessed Content-Type
- */
- public String guessContentTypeFromFile(File file) {
- String contentType = URLConnection.guessContentTypeFromName(file.getName());
- if (contentType == null) {
- return "application/octet-stream";
- } else {
- return contentType;
- }
- }
-
- /**
- * Add a Content-Disposition Header for the given key and file to the MultipartBody Builder.
- *
- * @param mpBuilder MultipartBody.Builder
- * @param key The key of the Header element
- * @param file The file to add to the Header
- */
- private void addPartToMultiPartBuilder(MultipartBody.Builder mpBuilder, String key, File file) {
- Headers partHeaders =
- Headers.of(
- "Content-Disposition",
- "form-data; name=\"" + key + "\"; filename=\"" + file.getName() + "\"");
- MediaType mediaType = MediaType.parse(guessContentTypeFromFile(file));
- mpBuilder.addPart(partHeaders, RequestBody.create(file, mediaType));
- }
-
- /**
- * Add a Content-Disposition Header for the given key and complex object to the MultipartBody
- * Builder.
- *
- * @param mpBuilder MultipartBody.Builder
- * @param key The key of the Header element
- * @param obj The complex object to add to the Header
- */
- private void addPartToMultiPartBuilder(
- MultipartBody.Builder mpBuilder, String key, Object obj) {
- RequestBody requestBody;
- if (obj instanceof String) {
- requestBody = RequestBody.create((String) obj, MediaType.parse("text/plain"));
- } else {
- String content;
- if (obj != null) {
- content = JSON.serialize(obj);
- } else {
- content = null;
- }
- requestBody = RequestBody.create(content, MediaType.parse("application/json"));
- }
-
- Headers partHeaders = Headers.of("Content-Disposition", "form-data; name=\"" + key + "\"");
- mpBuilder.addPart(partHeaders, requestBody);
- }
-
- /**
- * Get network interceptor to add it to the httpClient to track download progress for async
- * requests.
- */
- private Interceptor getProgressInterceptor() {
- return new Interceptor() {
- @Override
- public Response intercept(Interceptor.Chain chain) throws IOException {
- final Request request = chain.request();
- final Response originalResponse = chain.proceed(request);
- if (request.tag() instanceof ApiCallback) {
- final ApiCallback callback = (ApiCallback) request.tag();
- return originalResponse
- .newBuilder()
- .body(new ProgressResponseBody(originalResponse.body(), callback))
- .build();
- }
- return originalResponse;
- }
- };
- }
-
- /**
- * Apply SSL related settings to httpClient according to the current values of verifyingSsl and
- * sslCaCert.
- */
- private void applySslSettings() {
- try {
- TrustManager[] trustManagers;
- HostnameVerifier hostnameVerifier;
- if (!verifyingSsl) {
- trustManagers =
- new TrustManager[] {
- new X509TrustManager() {
- @Override
- public void checkClientTrusted(
- java.security.cert.X509Certificate[] chain, String authType)
- throws CertificateException {}
-
- @Override
- public void checkServerTrusted(
- java.security.cert.X509Certificate[] chain, String authType)
- throws CertificateException {}
-
- @Override
- public java.security.cert.X509Certificate[] getAcceptedIssuers() {
- return new java.security.cert.X509Certificate[] {};
- }
- }
- };
- hostnameVerifier =
- new HostnameVerifier() {
- @Override
- public boolean verify(String hostname, SSLSession session) {
- return true;
- }
- };
- } else {
- TrustManagerFactory trustManagerFactory =
- TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
-
- if (sslCaCert == null) {
- trustManagerFactory.init((KeyStore) null);
- } else {
- char[] password = null; // Any password will work.
- CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
- Collection extends Certificate> certificates =
- certificateFactory.generateCertificates(sslCaCert);
- if (certificates.isEmpty()) {
- throw new IllegalArgumentException(
- "expected non-empty set of trusted certificates");
- }
- KeyStore caKeyStore = newEmptyKeyStore(password);
- int index = 0;
- for (Certificate certificate : certificates) {
- String certificateAlias = "ca" + (index++);
- caKeyStore.setCertificateEntry(certificateAlias, certificate);
- }
- trustManagerFactory.init(caKeyStore);
- }
- trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
- }
-
- SSLContext sslContext = SSLContext.getInstance("TLS");
- sslContext.init(keyManagers, trustManagers, new SecureRandom());
- httpClient =
- httpClient
- .newBuilder()
- .sslSocketFactory(
- sslContext.getSocketFactory(),
- (X509TrustManager) trustManagers[0])
- .hostnameVerifier(hostnameVerifier)
- .build();
- } catch (GeneralSecurityException e) {
- throw new RuntimeException(e);
- }
- }
-
- private KeyStore newEmptyKeyStore(char[] password) throws GeneralSecurityException {
- try {
- KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
- keyStore.load(null, password);
- return keyStore;
- } catch (IOException e) {
- throw new AssertionError(e);
- }
- }
-
- /**
- * Convert the HTTP request body to a string.
- *
- * @param requestBody The HTTP request object
- * @return The string representation of the HTTP request body
- * @throws io.github.outscale.osc_sdk_java.client.ApiException If fail to serialize the request
- * body object into a string
- */
- private String requestBodyToString(RequestBody requestBody) throws ApiException {
- if (requestBody != null) {
- try {
- final Buffer buffer = new Buffer();
- requestBody.writeTo(buffer);
- return buffer.readUtf8();
- } catch (final IOException e) {
- throw new ApiException(e);
- }
- }
-
- // empty http request body
- return "";
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ApiException.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ApiException.java
deleted file mode 100644
index 2eb63d0b..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ApiException.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.util.List;
-import java.util.Map;
-
-/** ApiException class. */
-@SuppressWarnings("serial")
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
-public class ApiException extends Exception {
- private int code = 0;
- private Map> responseHeaders = null;
- private String responseBody = null;
-
- /** Constructor for ApiException. */
- public ApiException() {}
-
- /**
- * Constructor for ApiException.
- *
- * @param throwable a {@link java.lang.Throwable} object
- */
- public ApiException(Throwable throwable) {
- super(throwable);
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param message the error message
- */
- public ApiException(String message) {
- super(message);
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param message the error message
- * @param throwable a {@link java.lang.Throwable} object
- * @param code HTTP status code
- * @param responseHeaders a {@link java.util.Map} of HTTP response headers
- * @param responseBody the response body
- */
- public ApiException(
- String message,
- Throwable throwable,
- int code,
- Map> responseHeaders,
- String responseBody) {
- super(message, throwable);
- this.code = code;
- this.responseHeaders = responseHeaders;
- this.responseBody = responseBody;
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param message the error message
- * @param code HTTP status code
- * @param responseHeaders a {@link java.util.Map} of HTTP response headers
- * @param responseBody the response body
- */
- public ApiException(
- String message,
- int code,
- Map> responseHeaders,
- String responseBody) {
- this(message, (Throwable) null, code, responseHeaders, responseBody);
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param message the error message
- * @param throwable a {@link java.lang.Throwable} object
- * @param code HTTP status code
- * @param responseHeaders a {@link java.util.Map} of HTTP response headers
- */
- public ApiException(
- String message,
- Throwable throwable,
- int code,
- Map> responseHeaders) {
- this(message, throwable, code, responseHeaders, null);
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param code HTTP status code
- * @param responseHeaders a {@link java.util.Map} of HTTP response headers
- * @param responseBody the response body
- */
- public ApiException(int code, Map> responseHeaders, String responseBody) {
- this(
- "Response Code: " + code + " Response Body: " + responseBody,
- (Throwable) null,
- code,
- responseHeaders,
- responseBody);
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param code HTTP status code
- * @param message a {@link java.lang.String} object
- */
- public ApiException(int code, String message) {
- super(message);
- this.code = code;
- }
-
- /**
- * Constructor for ApiException.
- *
- * @param code HTTP status code
- * @param message the error message
- * @param responseHeaders a {@link java.util.Map} of HTTP response headers
- * @param responseBody the response body
- */
- public ApiException(
- int code,
- String message,
- Map> responseHeaders,
- String responseBody) {
- this(code, message);
- this.responseHeaders = responseHeaders;
- 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;
- }
-
- /**
- * Get the exception message including HTTP response data.
- *
- * @return The exception message
- */
- public String getMessage() {
- return String.format(
- "Message: %s%nHTTP response code: %s%nHTTP response body: %s%nHTTP response"
- + " headers: %s",
- super.getMessage(),
- this.getCode(),
- this.getResponseBody(),
- this.getResponseHeaders());
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ApiResponse.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ApiResponse.java
deleted file mode 100644
index c9bcd3bc..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ApiResponse.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.util.List;
-import java.util.Map;
-
-/** API response returned by API call. */
-public class ApiResponse {
- private final int statusCode;
- private final Map> headers;
- private final T data;
-
- /**
- * Constructor for ApiResponse.
- *
- * @param statusCode The status code of HTTP response
- * @param headers The headers of HTTP response
- */
- public ApiResponse(int statusCode, Map> headers) {
- this(statusCode, headers, null);
- }
-
- /**
- * Constructor for ApiResponse.
- *
- * @param statusCode The status code of HTTP response
- * @param headers The headers of HTTP response
- * @param data The object deserialized from response bod
- */
- public ApiResponse(int statusCode, Map> headers, T data) {
- this.statusCode = statusCode;
- this.headers = headers;
- this.data = data;
- }
-
- /**
- * Get the status code.
- *
- * @return the status code
- */
- public int getStatusCode() {
- return statusCode;
- }
-
- /**
- * Get the headers.
- *
- * @return a {@link java.util.Map} of headers
- */
- public Map> getHeaders() {
- return headers;
- }
-
- /**
- * Get the data.
- *
- * @return the data
- */
- public T getData() {
- return data;
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/Configuration.java b/src/main/java/io/github/outscale/osc_sdk_java/client/Configuration.java
deleted file mode 100644
index 5ebbde4a..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/Configuration.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
-public class Configuration {
- private static ApiClient defaultApiClient = new ApiClient();
-
- /**
- * Get the default API client, which would be used when creating API instances without providing
- * an API client.
- *
- * @return Default API client
- */
- public static ApiClient getDefaultApiClient() {
- return defaultApiClient;
- }
-
- /**
- * Set the default API client, which would be used when creating API instances without providing
- * an API client.
- *
- * @param apiClient API client
- */
- public static void setDefaultApiClient(ApiClient apiClient) {
- defaultApiClient = apiClient;
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationEnv.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationEnv.java
index 4aa1eaae..adaa8950 100644
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationEnv.java
+++ b/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationEnv.java
@@ -5,7 +5,7 @@ public class ConfigurationEnv extends ConfigurationInitializer {
public ConfigurationEnv() {}
- public static ConfigurationEnv loadConfigEnv() {
+ public static ConfigurationEnv loadConfigEnv() throws ConfigurationException {
ConfigurationEnv configurationEnv = new ConfigurationEnv();
configurationEnv.profile = new Profile();
@@ -18,6 +18,37 @@ public static ConfigurationEnv loadConfigEnv() {
configurationEnv.profile.setX509ClientKeyB64(System.getenv("OSC_X509_CLIENT_KEY_B64"));
configurationEnv.profile.setMethod(System.getenv("OSC_METHOD"));
configurationEnv.profile.setProtocol(System.getenv("OSC_PROTOCOL"));
+ try {
+ if (System.getenv("OSC_MAX_RETRIES") != null) {
+ configurationEnv.profile.setMaxRetries(Integer.parseInt(System.getenv("OSC_MAX_RETRIES")));
+ }
+ } catch (NumberFormatException e){
+ throw new ConfigurationException("OSC_MAX_RETRIES is not a valid integer");
+ }
+
+ try {
+ if (System.getenv("OSC_RETRY_BACKOFF_FACTOR") != null) {
+ configurationEnv.profile.setRetryBackoffFactor(Float.parseFloat(System.getenv("OSC_RETRY_BACKOFF_FACTOR")));
+ }
+ } catch (NumberFormatException e){
+ throw new ConfigurationException("OSC_RETRY_BACKOFF_FACTOR is not a valid float");
+ }
+
+ try {
+ if (System.getenv("OSC_RETRY_BACKOFF_JITTER") != null) {
+ configurationEnv.profile.setRetryBackoffJitter(Float.parseFloat(System.getenv("OSC_RETRY_BACKOFF_JITTER")));
+ }
+ } catch (NumberFormatException e){
+ throw new ConfigurationException("OSC_RETRY_BACKOFF_Jitter is not a valid float");
+ }
+
+ try {
+ if (System.getenv("OSC_RETRY_BACKOFF_MAX") != null) {
+ configurationEnv.profile.setRetryBackoffMax(Float.parseFloat(System.getenv("OSC_RETRY_BACKOFF_MAX")));
+ }
+ } catch (NumberFormatException e){
+ throw new ConfigurationException("OSC_RETRY_BACKOFF_MAX is not a valid float");
+ }
Endpoint endpoints = new Endpoint();
endpoints.setApi(System.getenv("OSC_ENDPOINT_API"));
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationInitializer.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationInitializer.java
index 2f13306e..5f95d08f 100644
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationInitializer.java
+++ b/src/main/java/io/github/outscale/osc_sdk_java/client/ConfigurationInitializer.java
@@ -1,5 +1,9 @@
package io.github.outscale.osc_sdk_java.client;
+import dev.failsafe.Failsafe;
+import dev.failsafe.Policy;
+import dev.failsafe.RateLimiter;
+import dev.failsafe.RetryPolicy;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
@@ -12,10 +16,13 @@
import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
+import java.time.Duration;
import java.util.ArrayList;
import java.util.Base64;
import java.util.HashMap;
import okhttp3.OkHttpClient;
+import okhttp3.Request;
+import okhttp3.Response;
import okhttp3.tls.HandshakeCertificates;
import okhttp3.tls.HeldCertificate;
import org.bouncycastle.openssl.PEMKeyPair;
@@ -206,6 +213,40 @@ protected ApiClient getApiClient(Profile profile) throws ConfigurationException
apiClient.setHttpClient(client);
}
+ apiClient.setRetryPolicy(this.getRetryPolicy(profile));
+ apiClient.setRateLimiter(this.getLimiter(profile));
+
return apiClient;
}
+
+ protected RetryPolicy getRetryPolicy(Profile profile) {
+ int max_retires = profile.getMaxRetry() != null ? profile.getMaxRetry() : 3;
+ Duration backoff_factor = profile.getRetryBackoffFactor() != null ?
+ Duration.ofMillis(Math.round(profile.getRetryBackoffFactor() * 1000)) :
+ Duration.ofSeconds(2);
+ Duration backoff_max = profile.getRetryBackoffMax() != null ?
+ Duration.ofMillis(Math.round(profile.getRetryBackoffMax() * 1000)) :
+ Duration.ofSeconds(15);
+ Duration backoff_jitter = profile.getRetryBackoffJitter() != null ?
+ Duration.ofMillis(Math.round(profile.getRetryBackoffJitter() * 500)) :
+ Duration.ofSeconds(1);
+ if (backoff_jitter.compareTo(backoff_factor) > 0) {
+ backoff_jitter = backoff_factor;
+ }
+
+ return RetryPolicy.builder()
+ .withMaxRetries(max_retires)
+ .withBackoff(backoff_factor, backoff_max)
+ .withJitter(backoff_jitter)
+ .build();
+ }
+
+ protected RateLimiter getLimiter(Profile profile) {
+ int max_req = profile.getLimiterMaxRequests() != null ? profile.getLimiterMaxRequests() : 5;
+ Duration window = profile.getLimiterWindow() != null ?
+ Duration.ofMillis(Math.round(profile.getLimiterWindow() * 1000)) :
+ Duration.ofSeconds(1);
+
+ return RateLimiter.smoothBuilder(max_req, window).build();
+ }
}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/GzipRequestInterceptor.java b/src/main/java/io/github/outscale/osc_sdk_java/client/GzipRequestInterceptor.java
deleted file mode 100644
index 4425c8fd..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/GzipRequestInterceptor.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.io.IOException;
-import okhttp3.*;
-import okio.Buffer;
-import okio.BufferedSink;
-import okio.GzipSink;
-import okio.Okio;
-
-/**
- * Encodes request bodies using gzip.
- *
- * Taken from https://github.com/square/okhttp/issues/350
- */
-class GzipRequestInterceptor implements Interceptor {
- @Override
- public Response intercept(Chain chain) throws IOException {
- Request originalRequest = chain.request();
- if (originalRequest.body() == null || originalRequest.header("Content-Encoding") != null) {
- return chain.proceed(originalRequest);
- }
-
- Request compressedRequest =
- originalRequest
- .newBuilder()
- .header("Content-Encoding", "gzip")
- .method(
- originalRequest.method(),
- forceContentLength(gzip(originalRequest.body())))
- .build();
- return chain.proceed(compressedRequest);
- }
-
- private RequestBody forceContentLength(final RequestBody requestBody) throws IOException {
- final Buffer buffer = new Buffer();
- requestBody.writeTo(buffer);
- return new RequestBody() {
- @Override
- public MediaType contentType() {
- return requestBody.contentType();
- }
-
- @Override
- public long contentLength() {
- return buffer.size();
- }
-
- @Override
- public void writeTo(BufferedSink sink) throws IOException {
- sink.write(buffer.snapshot());
- }
- };
- }
-
- private RequestBody gzip(final RequestBody body) {
- return new RequestBody() {
- @Override
- public MediaType contentType() {
- return body.contentType();
- }
-
- @Override
- public long contentLength() {
- return -1; // We don't know the compressed length in advance!
- }
-
- @Override
- public void writeTo(BufferedSink sink) throws IOException {
- BufferedSink gzipSink = Okio.buffer(new GzipSink(sink));
- body.writeTo(gzipSink);
- gzipSink.close();
- }
- };
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/JSON.java b/src/main/java/io/github/outscale/osc_sdk_java/client/JSON.java
deleted file mode 100644
index e0a627bd..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/JSON.java
+++ /dev/null
@@ -1,2198 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonParseException;
-import com.google.gson.TypeAdapter;
-import com.google.gson.internal.bind.util.ISO8601Utils;
-import com.google.gson.stream.JsonReader;
-import com.google.gson.stream.JsonWriter;
-import io.gsonfire.GsonFireBuilder;
-import java.io.IOException;
-import java.io.StringReader;
-import java.lang.reflect.Type;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.ParsePosition;
-import java.time.LocalDate;
-import java.time.OffsetDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Date;
-import java.util.Map;
-import okio.ByteString;
-
-/*
- * A JSON utility class
- *
- * NOTE: in the future, this class may be converted to static, which may break
- * backward-compatibility
- */
-public class JSON {
- private static Gson gson;
- private static boolean isLenientOnJson = false;
- private static DateTypeAdapter dateTypeAdapter = new DateTypeAdapter();
- private static SqlDateTypeAdapter sqlDateTypeAdapter = new SqlDateTypeAdapter();
- private static OffsetDateTimeTypeAdapter offsetDateTimeTypeAdapter =
- new OffsetDateTimeTypeAdapter();
- private static LocalDateTypeAdapter localDateTypeAdapter = new LocalDateTypeAdapter();
- private static ByteArrayAdapter byteArrayAdapter = new ByteArrayAdapter();
-
- @SuppressWarnings("unchecked")
- public static GsonBuilder createGson() {
- GsonFireBuilder fireBuilder = new GsonFireBuilder();
- GsonBuilder builder = fireBuilder.createGsonBuilder();
- return builder;
- }
-
- private static String getDiscriminatorValue(
- JsonElement readElement, String discriminatorField) {
- JsonElement element = readElement.getAsJsonObject().get(discriminatorField);
- if (null == element) {
- throw new IllegalArgumentException(
- "missing discriminator field: <" + discriminatorField + ">");
- }
- return element.getAsString();
- }
-
- /**
- * Returns the Java class that implements the OpenAPI schema for the specified discriminator
- * value.
- *
- * @param classByDiscriminatorValue The map of discriminator values to Java classes.
- * @param discriminatorValue The value of the OpenAPI discriminator in the input data.
- * @return The Java class that implements the OpenAPI schema
- */
- private static Class getClassByDiscriminator(
- Map classByDiscriminatorValue, String discriminatorValue) {
- Class clazz = (Class) classByDiscriminatorValue.get(discriminatorValue);
- if (null == clazz) {
- throw new IllegalArgumentException(
- "cannot determine model class of name: <" + discriminatorValue + ">");
- }
- return clazz;
- }
-
- {
- GsonBuilder gsonBuilder = createGson();
- gsonBuilder.registerTypeAdapter(Date.class, dateTypeAdapter);
- gsonBuilder.registerTypeAdapter(java.sql.Date.class, sqlDateTypeAdapter);
- gsonBuilder.registerTypeAdapter(OffsetDateTime.class, offsetDateTimeTypeAdapter);
- gsonBuilder.registerTypeAdapter(LocalDate.class, localDateTypeAdapter);
- gsonBuilder.registerTypeAdapter(byte[].class, byteArrayAdapter);
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AcceptNetPeeringRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AcceptNetPeeringResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AccepterNet
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AccessKey
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AccessKeySecretKey
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AccessLog
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Account
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AddUserToUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.AddUserToUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ApiAccessPolicy
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ApiAccessRule
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ApplicationStickyCookiePolicy
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BackendVmHealth
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BlockDeviceMappingCreated
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BlockDeviceMappingImage
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BlockDeviceMappingVmCreation
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BlockDeviceMappingVmUpdate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BsuCreated
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BsuToCreate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.BsuToUpdateVm
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Ca.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Catalog
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CatalogEntry
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Catalogs
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CheckAuthenticationRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CheckAuthenticationResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ClientGateway
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ConsumptionEntry
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateAccessKeyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateAccessKeyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateAccountRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateAccountResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateApiAccessRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateApiAccessRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateCaRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateCaResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateClientGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateClientGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDedicatedGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDedicatedGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDhcpOptionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDhcpOptionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDirectLinkInterfaceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDirectLinkInterfaceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDirectLinkRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateDirectLinkResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateFlexibleGpuRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateFlexibleGpuResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateImageExportTaskRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateImageExportTaskResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateImageRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateImageResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateInternetServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateInternetServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateKeypairRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateKeypairResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateListenerRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateListenerRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerListenersRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerListenersResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateLoadBalancerTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNatServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNatServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetAccessPointRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetAccessPointResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetPeeringRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetPeeringResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNicRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateNicResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePolicyVersionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePolicyVersionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateProductTypeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateProductTypeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePublicIpRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreatePublicIpResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateRouteRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateRouteResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateRouteTableRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateRouteTableResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSecurityGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSecurityGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSecurityGroupRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSecurityGroupRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateServerCertificateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateServerCertificateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSnapshotExportTaskRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSnapshotExportTaskResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSnapshotRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSnapshotResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSubnetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateSubnetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateUserRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateUserResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVirtualGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVirtualGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmTemplateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmTemplateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVolumeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVolumeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVpnConnectionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVpnConnectionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVpnConnectionRouteRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.CreateVpnConnectionRouteResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DedicatedGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteAccessKeyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteAccessKeyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteApiAccessRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteApiAccessRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteCaRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteCaResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteClientGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteClientGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDedicatedGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDedicatedGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDhcpOptionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDhcpOptionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDirectLinkInterfaceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDirectLinkInterfaceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDirectLinkRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteDirectLinkResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteExportTaskRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteExportTaskResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteFlexibleGpuRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteFlexibleGpuResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteImageRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteImageResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteInternetServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteInternetServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteKeypairRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteKeypairResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteListenerRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteListenerRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerListenersRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerListenersResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteLoadBalancerTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNatServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNatServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetAccessPointRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetAccessPointResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetPeeringRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetPeeringResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNicRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteNicResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePolicyVersionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePolicyVersionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePublicIpRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeletePublicIpResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteRouteRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteRouteResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteRouteTableRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteRouteTableResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSecurityGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSecurityGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSecurityGroupRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSecurityGroupRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteServerCertificateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteServerCertificateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSnapshotRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSnapshotResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSubnetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteSubnetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserGroupPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserGroupPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteUserResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVirtualGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVirtualGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmTemplateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmTemplateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVolumeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVolumeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVpnConnectionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVpnConnectionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVpnConnectionRouteRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeleteVpnConnectionRouteResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeregisterVmsInLoadBalancerRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DeregisterVmsInLoadBalancerResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DhcpOptionsSet
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DirectLink
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DirectLinkInterface
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.DirectLinkInterfaces
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ErrorResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Errors.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersAccessKeys
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersApiAccessRule
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersApiLog
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersCa
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersCatalogs
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersClientGateway
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersDedicatedGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersDhcpOptions
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersDirectLink
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersDirectLinkInterface
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersExportTask
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersFlexibleGpu
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersImage
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersInternetService
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersKeypair
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersListenerRule
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersLoadBalancer
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersNatService
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersNet
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersNetAccessPoint
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersNetPeering
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersNic
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersProductType
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersPublicIp
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersQuota
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersRouteTable
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersSecurityGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersServerCertificate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersService
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersSnapshot
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersSubnet
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersSubregion
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersTag
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersUserGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVirtualGateway
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVm
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVmGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVmTemplate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVmType
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVmsState
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVolume
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FiltersVpnConnection
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FlexibleGpu
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.FlexibleGpuCatalog
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.HealthCheck
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Image.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ImageExportTask
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.InlinePolicy
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.InternetService
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Keypair
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.KeypairCreated
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkFlexibleGpuRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkFlexibleGpuResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkInternetServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkInternetServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .LinkLoadBalancerBackendMachinesRequest.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .LinkLoadBalancerBackendMachinesResponse.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkManagedPolicyToUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .LinkManagedPolicyToUserGroupResponse.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkNic
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkNicLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkNicRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkNicResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkNicToUpdate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPrivateIpsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPrivateIpsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPublicIp
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPublicIpLightForVm
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPublicIpRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkPublicIpResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkRouteTable
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkRouteTableRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkRouteTableResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkVirtualGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkVirtualGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkVolumeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkVolumeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkedPolicy
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LinkedVolume
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Listener
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ListenerForCreation
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ListenerRule
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ListenerRuleForCreation
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LoadBalancer
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LoadBalancerLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LoadBalancerStickyCookiePolicy
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.LoadBalancerTag
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Location
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Log.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.MaintenanceEvent
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NatService
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Net.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NetAccessPoint
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NetPeering
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NetPeeringState
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NetToVirtualGatewayLink
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Nic.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NicForVmCreation
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.NicLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.OsuApiKey
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.OsuExportImageExportTask
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.OsuExportSnapshotExportTask
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.OsuExportToCreate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PermissionsOnResource
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PermissionsOnResourceCreation
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Phase1Options
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Phase2Options
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Placement
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Policy.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PolicyVersion
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PrivateIp
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PrivateIpLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PrivateIpLightForVm
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ProductType
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PublicIp
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PublicIpLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PutUserGroupPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.PutUserGroupPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Quota.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.QuotaTypes
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAccessKeysRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAccessKeysResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAccountsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAccountsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAdminPasswordRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadAdminPasswordResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiAccessPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiAccessPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiAccessRulesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiAccessRulesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiLogsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadApiLogsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCasRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCasResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCatalogRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCatalogResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCatalogsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadCatalogsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadClientGatewaysRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadClientGatewaysResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadConsoleOutputRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadConsoleOutputResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadConsumptionAccountRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadConsumptionAccountResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDedicatedGroupsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDedicatedGroupsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDhcpOptionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDhcpOptionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDirectLinkInterfacesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDirectLinkInterfacesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDirectLinksRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadDirectLinksResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadFlexibleGpuCatalogRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadFlexibleGpuCatalogResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadFlexibleGpusRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadFlexibleGpusResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadImageExportTasksRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadImageExportTasksResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadImagesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadImagesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadInternetServicesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadInternetServicesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadKeypairsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadKeypairsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLinkedPoliciesFilters
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLinkedPoliciesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLinkedPoliciesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadListenerRulesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadListenerRulesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLoadBalancerTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLoadBalancerTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLoadBalancersRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLoadBalancersResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLocationsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadLocationsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .ReadManagedPoliciesLinkedToUserGroupRequest.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .ReadManagedPoliciesLinkedToUserGroupResponse.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNatServicesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNatServicesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetAccessPointServicesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetAccessPointServicesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetAccessPointsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetAccessPointsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetPeeringsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetPeeringsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNetsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNicsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadNicsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPoliciesFilters
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPoliciesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPoliciesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyVersionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyVersionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyVersionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPolicyVersionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadProductTypesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadProductTypesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicCatalogRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicCatalogResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicIpRangesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicIpRangesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicIpsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadPublicIpsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadQuotasRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadQuotasResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadRegionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadRegionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadRouteTablesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadRouteTablesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSecretAccessKeyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSecretAccessKeyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSecurityGroupsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSecurityGroupsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadServerCertificatesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadServerCertificatesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSnapshotExportTasksRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSnapshotExportTasksResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSnapshotsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSnapshotsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSubnetsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSubnetsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSubregionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadSubregionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadTagsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadTagsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupPoliciesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupPoliciesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupsPerUserRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupsPerUserResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUserGroupsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUsersRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadUsersResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVirtualGatewaysRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVirtualGatewaysResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmGroupsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmGroupsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmTemplatesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmTemplatesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmTypesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmTypesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsHealthRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsHealthResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsStateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVmsStateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVolumesRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVolumesResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVpnConnectionsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ReadVpnConnectionsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RebootVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RebootVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Region.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RegisterVmsInLoadBalancerRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RegisterVmsInLoadBalancerResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RejectNetPeeringRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RejectNetPeeringResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RemoveUserFromUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RemoveUserFromUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ResourceLoadBalancerTag
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ResourceTag
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ResponseContext
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Route.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RouteLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RoutePropagatingVirtualGateway
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.RouteTable
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ScaleDownVmGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ScaleDownVmGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ScaleUpVmGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ScaleUpVmGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SecurityGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SecurityGroupLight
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SecurityGroupRule
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SecurityGroupsMember
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.ServerCertificate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Service
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SetDefaultPolicyVersionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SetDefaultPolicyVersionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Snapshot
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SnapshotExportTask
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SourceNet
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.SourceSecurityGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.StartVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.StartVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.StateComment
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.StopVmsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.StopVmsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Subnet.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Subregion
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Tag.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkFlexibleGpuRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkFlexibleGpuResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkInternetServiceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkInternetServiceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .UnlinkLoadBalancerBackendMachinesRequest.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .UnlinkLoadBalancerBackendMachinesResponse.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .UnlinkManagedPolicyFromUserGroupRequest.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model
- .UnlinkManagedPolicyFromUserGroupResponse.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkNicRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkNicResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPrivateIpsRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPrivateIpsResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPublicIpRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkPublicIpResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkRouteTableRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkRouteTableResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkVirtualGatewayRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkVirtualGatewayResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkVolumeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UnlinkVolumeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateAccessKeyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateAccessKeyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateAccountRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateAccountResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateApiAccessPolicyRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateApiAccessPolicyResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateApiAccessRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateApiAccessRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateCaRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateCaResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateDedicatedGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateDedicatedGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateDirectLinkInterfaceRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateDirectLinkInterfaceResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateFlexibleGpuRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateFlexibleGpuResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateImageRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateImageResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateListenerRuleRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateListenerRuleResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateLoadBalancerRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateLoadBalancerResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNetAccessPointRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNetAccessPointResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNicRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateNicResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRoutePropagationRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRoutePropagationResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRouteRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRouteResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRouteTableLinkRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateRouteTableLinkResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateServerCertificateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateServerCertificateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateSnapshotRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateSnapshotResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateSubnetRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateSubnetResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateUserGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateUserGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateUserRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateUserResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmGroupRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmGroupResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmTemplateRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVmTemplateResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVolumeRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVolumeResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVpnConnectionRequest
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UpdateVpnConnectionResponse
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.User.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.UserGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VgwTelemetry
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VirtualGateway
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Vm.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VmGroup
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VmState
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VmStates
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VmTemplate
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VmType.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.Volume.CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VpnConnection
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.VpnOptions
- .CustomTypeAdapterFactory());
- gsonBuilder.registerTypeAdapterFactory(
- new io.github.outscale.osc_sdk_java.client.model.With.CustomTypeAdapterFactory());
- gson = gsonBuilder.create();
- }
-
- /**
- * Get Gson.
- *
- * @return Gson
- */
- public static Gson getGson() {
- return gson;
- }
-
- /**
- * Set Gson.
- *
- * @param gson Gson
- */
- public static void setGson(Gson gson) {
- JSON.gson = gson;
- }
-
- public static void setLenientOnJson(boolean lenientOnJson) {
- isLenientOnJson = lenientOnJson;
- }
-
- /**
- * Serialize the given Java object into JSON string.
- *
- * @param obj Object
- * @return String representation of the JSON
- */
- public static String serialize(Object obj) {
- return gson.toJson(obj);
- }
-
- /**
- * Deserialize the given JSON string to Java object.
- *
- * @param Type
- * @param body The JSON string
- * @param returnType The type to deserialize into
- * @return The deserialized Java object
- */
- @SuppressWarnings("unchecked")
- public static T deserialize(String body, Type returnType) {
- try {
- if (isLenientOnJson) {
- JsonReader jsonReader = new JsonReader(new StringReader(body));
- // see
- // https://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/stream/JsonReader.html#setLenient(boolean)
- jsonReader.setLenient(true);
- return gson.fromJson(jsonReader, returnType);
- } else {
- return gson.fromJson(body, returnType);
- }
- } catch (JsonParseException e) {
- // Fallback processing when failed to parse JSON form response body:
- // return the response body string directly for the String return type;
- if (returnType.equals(String.class)) {
- return (T) body;
- } else {
- throw (e);
- }
- }
- }
-
- /** Gson TypeAdapter for Byte Array type */
- public static class ByteArrayAdapter extends TypeAdapter {
-
- @Override
- public void write(JsonWriter out, byte[] value) throws IOException {
- if (value == null) {
- out.nullValue();
- } else {
- out.value(ByteString.of(value).base64());
- }
- }
-
- @Override
- public byte[] read(JsonReader in) throws IOException {
- switch (in.peek()) {
- case NULL:
- in.nextNull();
- return null;
- default:
- String bytesAsBase64 = in.nextString();
- ByteString byteString = ByteString.decodeBase64(bytesAsBase64);
- return byteString.toByteArray();
- }
- }
- }
-
- /** Gson TypeAdapter for JSR310 OffsetDateTime type */
- public static class OffsetDateTimeTypeAdapter extends TypeAdapter {
-
- private DateTimeFormatter formatter;
-
- public OffsetDateTimeTypeAdapter() {
- this(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
- }
-
- public OffsetDateTimeTypeAdapter(DateTimeFormatter formatter) {
- this.formatter = formatter;
- }
-
- public void setFormat(DateTimeFormatter dateFormat) {
- this.formatter = dateFormat;
- }
-
- @Override
- public void write(JsonWriter out, OffsetDateTime date) throws IOException {
- if (date == null) {
- out.nullValue();
- } else {
- out.value(formatter.format(date));
- }
- }
-
- @Override
- public OffsetDateTime read(JsonReader in) throws IOException {
- switch (in.peek()) {
- case NULL:
- in.nextNull();
- return null;
- default:
- String date = in.nextString();
- if (date.endsWith("+0000")) {
- date = date.substring(0, date.length() - 5) + "Z";
- }
- return OffsetDateTime.parse(date, formatter);
- }
- }
- }
-
- /** Gson TypeAdapter for JSR310 LocalDate type */
- public static class LocalDateTypeAdapter extends TypeAdapter {
-
- private DateTimeFormatter formatter;
-
- public LocalDateTypeAdapter() {
- this(DateTimeFormatter.ISO_LOCAL_DATE);
- }
-
- public LocalDateTypeAdapter(DateTimeFormatter formatter) {
- this.formatter = formatter;
- }
-
- public void setFormat(DateTimeFormatter dateFormat) {
- this.formatter = dateFormat;
- }
-
- @Override
- public void write(JsonWriter out, LocalDate date) throws IOException {
- if (date == null) {
- out.nullValue();
- } else {
- out.value(formatter.format(date));
- }
- }
-
- @Override
- public LocalDate read(JsonReader in) throws IOException {
- switch (in.peek()) {
- case NULL:
- in.nextNull();
- return null;
- default:
- String date = in.nextString();
- return LocalDate.parse(date, formatter);
- }
- }
- }
-
- public static void setOffsetDateTimeFormat(DateTimeFormatter dateFormat) {
- offsetDateTimeTypeAdapter.setFormat(dateFormat);
- }
-
- public static void setLocalDateFormat(DateTimeFormatter dateFormat) {
- localDateTypeAdapter.setFormat(dateFormat);
- }
-
- /**
- * Gson TypeAdapter for java.sql.Date type If the dateFormat is null, a simple "yyyy-MM-dd"
- * format will be used (more efficient than SimpleDateFormat).
- */
- public static class SqlDateTypeAdapter extends TypeAdapter {
-
- private DateFormat dateFormat;
-
- public SqlDateTypeAdapter() {}
-
- public SqlDateTypeAdapter(DateFormat dateFormat) {
- this.dateFormat = dateFormat;
- }
-
- public void setFormat(DateFormat dateFormat) {
- this.dateFormat = dateFormat;
- }
-
- @Override
- public void write(JsonWriter out, java.sql.Date date) throws IOException {
- if (date == null) {
- out.nullValue();
- } else {
- String value;
- if (dateFormat != null) {
- value = dateFormat.format(date);
- } else {
- value = date.toString();
- }
- out.value(value);
- }
- }
-
- @Override
- public java.sql.Date read(JsonReader in) throws IOException {
- switch (in.peek()) {
- case NULL:
- in.nextNull();
- return null;
- default:
- String date = in.nextString();
- try {
- if (dateFormat != null) {
- return new java.sql.Date(dateFormat.parse(date).getTime());
- }
- return new java.sql.Date(
- ISO8601Utils.parse(date, new ParsePosition(0)).getTime());
- } catch (ParseException e) {
- throw new JsonParseException(e);
- }
- }
- }
- }
-
- /**
- * Gson TypeAdapter for java.util.Date type If the dateFormat is null, ISO8601Utils will be
- * used.
- */
- public static class DateTypeAdapter extends TypeAdapter {
-
- private DateFormat dateFormat;
-
- public DateTypeAdapter() {}
-
- public DateTypeAdapter(DateFormat dateFormat) {
- this.dateFormat = dateFormat;
- }
-
- public void setFormat(DateFormat dateFormat) {
- this.dateFormat = dateFormat;
- }
-
- @Override
- public void write(JsonWriter out, Date date) throws IOException {
- if (date == null) {
- out.nullValue();
- } else {
- String value;
- if (dateFormat != null) {
- value = dateFormat.format(date);
- } else {
- value = ISO8601Utils.format(date, true);
- }
- out.value(value);
- }
- }
-
- @Override
- public Date read(JsonReader in) throws IOException {
- try {
- switch (in.peek()) {
- case NULL:
- in.nextNull();
- return null;
- default:
- String date = in.nextString();
- try {
- if (dateFormat != null) {
- return dateFormat.parse(date);
- }
- return ISO8601Utils.parse(date, new ParsePosition(0));
- } catch (ParseException e) {
- throw new JsonParseException(e);
- }
- }
- } catch (IllegalArgumentException e) {
- throw new JsonParseException(e);
- }
- }
- }
-
- public static void setDateFormat(DateFormat dateFormat) {
- dateTypeAdapter.setFormat(dateFormat);
- }
-
- public static void setSqlDateFormat(DateFormat dateFormat) {
- sqlDateTypeAdapter.setFormat(dateFormat);
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/Pair.java b/src/main/java/io/github/outscale/osc_sdk_java/client/Pair.java
deleted file mode 100644
index 14e6a173..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/Pair.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
-public class Pair {
- private String name = "";
- private String value = "";
-
- public Pair(String name, String value) {
- setName(name);
- setValue(value);
- }
-
- private void setName(String name) {
- if (!isValidString(name)) {
- return;
- }
-
- this.name = name;
- }
-
- private void setValue(String value) {
- if (!isValidString(value)) {
- return;
- }
-
- this.value = value;
- }
-
- public String getName() {
- return this.name;
- }
-
- public String getValue() {
- return this.value;
- }
-
- private boolean isValidString(String arg) {
- if (arg == null) {
- return false;
- }
-
- return true;
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/Profile.java b/src/main/java/io/github/outscale/osc_sdk_java/client/Profile.java
index 6a5ed3a0..bd93e6d4 100644
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/Profile.java
+++ b/src/main/java/io/github/outscale/osc_sdk_java/client/Profile.java
@@ -11,6 +11,7 @@
import com.google.gson.stream.JsonWriter;
import java.io.IOException;
import java.util.HashSet;
+import com.google.gson.JsonElement;
public class Profile {
public static final String SERIALIZED_NAME_ACCESS_KEY = "access_key";
@@ -63,6 +64,30 @@ public class Profile {
@SerializedName(SERIALIZED_NAME_ENDPOINTS)
private Endpoint endpoints;
+ public static final String SERIALIZED_NAME_MAX_RETRIES = "max_retires";
+
+ @SerializedName(SERIALIZED_NAME_MAX_RETRIES)
+ private Integer max_retries;
+
+ public static final String SERIALIZED_NAME_RETRY_BACKOFF_FACTOR = "retry_backoff_factor";
+
+ @SerializedName(SERIALIZED_NAME_RETRY_BACKOFF_FACTOR)
+ private Float retry_backoff_factor;
+
+ public static final String SERIALIZED_NAME_RETRY_BACKOFF_JITTER = "retry_backoff_jitter";
+
+ @SerializedName(SERIALIZED_NAME_RETRY_BACKOFF_JITTER)
+ private Float retry_backoff_jitter;
+
+ public static final String SERIALIZED_NAME_RETRY_BACKOFF_MAX = "retry_backoff_max";
+
+ @SerializedName(SERIALIZED_NAME_RETRY_BACKOFF_MAX)
+ private Float retry_backoff_max;
+
+
+ private Integer limiter_max_requests;
+ private Integer limiter_window;
+
public static HashSet openapiFields;
public static HashSet openapiRequiredFields;
@@ -110,15 +135,33 @@ public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Profile {\n");
sb.append(" accessKey: ").append(accessKey).append("\n");
- sb.append(" secretKey: ").append(secretKey).append("\n");
+
+ if (secretKey.isEmpty()) {
+ sb.append(" secretKey: ").append(secretKey).append("\n");
+ } else {
+ sb.append(" secretKey: ***\n");
+ }
+
sb.append(" region: ").append(region).append("\n");
sb.append(" x509ClientCert: ").append(x509ClientCert).append("\n");
sb.append(" x509ClientCertB64: ").append(x509ClientCertB64).append("\n");
sb.append(" x509ClientKey: ").append(x509ClientKey).append("\n");
- sb.append(" x509ClientKeyB64: ").append(x509ClientKeyB64).append("\n");
+
+ if (x509ClientKeyB64.isEmpty()) {
+ sb.append(" x509ClientKeyB64: ").append(x509ClientKeyB64).append("\n");
+ } else {
+ sb.append(" x509ClientKeyB64: ***\n");
+ }
+
sb.append(" method: ").append(method).append("\n");
sb.append(" protocol: ").append(protocol).append("\n");
sb.append(" endpoints: ").append(endpoints).append("\n");
+ sb.append(" max_retries: ").append(max_retries).append("\n");
+ sb.append(" retry_backoff_factor: ").append(retry_backoff_factor).append("\n");
+ sb.append(" retry_backoff_jitter: ").append(retry_backoff_jitter).append("\n");
+ sb.append(" retry_backoff_max: ").append(retry_backoff_max).append("\n");
+ sb.append(" limiter_max_requests: ").append(limiter_max_requests).append("\n");
+ sb.append(" limiter_window: ").append(limiter_window).append("\n");
sb.append("}");
return sb.toString();
}
@@ -163,6 +206,32 @@ public String getX509ClientKeyB64() {
return x509ClientKeyB64;
}
+ public Integer getMaxRetry() {
+ return max_retries;
+ }
+
+ public Float getRetryBackoffFactor() {
+ return retry_backoff_factor;
+ }
+
+ public Float getRetryBackoffJitter() {
+ return retry_backoff_jitter;
+ }
+
+ public Float getRetryBackoffMax() {
+ return retry_backoff_max;
+ }
+
+ public Integer getLimiterMaxRequests() {
+
+ return limiter_max_requests;
+ }
+
+ public Integer getLimiterWindow() {
+
+ return limiter_window;
+ }
+
public void setAccessKey(String accessKey) {
this.accessKey = accessKey;
}
@@ -202,4 +271,28 @@ public void setX509ClientKey(String x509ClientKey) {
public void setX509ClientKeyB64(String x509ClientKeyB64) {
this.x509ClientKeyB64 = x509ClientKeyB64;
}
+
+ public void setMaxRetries(Integer max_retries) {
+ this.max_retries = max_retries;
+ }
+
+ public void setRetryBackoffFactor(Float retry_backoff_factor) {
+ this.retry_backoff_factor = retry_backoff_factor;
+ }
+
+ public void setRetryBackoffJitter(Float retry_backoff_jitter) {
+ this.retry_backoff_jitter = retry_backoff_jitter;
+ }
+
+ public void setRetryBackoffMax(Float retry_backoff_max) {
+ this.retry_backoff_max = retry_backoff_max;
+ }
+
+ public void setLimiterMaxRequests(Integer limiter_max_requests) {
+ this.limiter_max_requests = limiter_max_requests;
+ }
+
+ public void setLimiterWindow(Integer limiter_window) {
+ this.limiter_window = limiter_window;
+ }
}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressRequestBody.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressRequestBody.java
deleted file mode 100644
index e5743f79..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressRequestBody.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.io.IOException;
-import okhttp3.MediaType;
-import okhttp3.RequestBody;
-import okio.Buffer;
-import okio.BufferedSink;
-import okio.ForwardingSink;
-import okio.Okio;
-import okio.Sink;
-
-public class ProgressRequestBody extends RequestBody {
-
- private final RequestBody requestBody;
-
- private final ApiCallback callback;
-
- public ProgressRequestBody(RequestBody requestBody, ApiCallback callback) {
- this.requestBody = requestBody;
- this.callback = callback;
- }
-
- @Override
- public MediaType contentType() {
- return requestBody.contentType();
- }
-
- @Override
- public long contentLength() throws IOException {
- return requestBody.contentLength();
- }
-
- @Override
- public void writeTo(BufferedSink sink) throws IOException {
- BufferedSink bufferedSink = Okio.buffer(sink(sink));
- requestBody.writeTo(bufferedSink);
- bufferedSink.flush();
- }
-
- private Sink sink(Sink sink) {
- return new ForwardingSink(sink) {
-
- long bytesWritten = 0L;
- long contentLength = 0L;
-
- @Override
- public void write(Buffer source, long byteCount) throws IOException {
- super.write(source, byteCount);
- if (contentLength == 0) {
- contentLength = contentLength();
- }
-
- bytesWritten += byteCount;
- callback.onUploadProgress(
- bytesWritten, contentLength, bytesWritten == contentLength);
- }
- };
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressResponseBody.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressResponseBody.java
deleted file mode 100644
index 04c15b29..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ProgressResponseBody.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.io.IOException;
-import okhttp3.MediaType;
-import okhttp3.ResponseBody;
-import okio.Buffer;
-import okio.BufferedSource;
-import okio.ForwardingSource;
-import okio.Okio;
-import okio.Source;
-
-public class ProgressResponseBody extends ResponseBody {
-
- private final ResponseBody responseBody;
- private final ApiCallback callback;
- private BufferedSource bufferedSource;
-
- public ProgressResponseBody(ResponseBody responseBody, ApiCallback callback) {
- this.responseBody = responseBody;
- this.callback = callback;
- }
-
- @Override
- public MediaType contentType() {
- return responseBody.contentType();
- }
-
- @Override
- public long contentLength() {
- return responseBody.contentLength();
- }
-
- @Override
- public BufferedSource source() {
- if (bufferedSource == null) {
- bufferedSource = Okio.buffer(source(responseBody.source()));
- }
- return bufferedSource;
- }
-
- private Source source(Source source) {
- return new ForwardingSource(source) {
- long totalBytesRead = 0L;
-
- @Override
- public long read(Buffer sink, long byteCount) throws IOException {
- long bytesRead = super.read(sink, byteCount);
- // read() returns the number of bytes read, or -1 if this source is exhausted.
- totalBytesRead += bytesRead != -1 ? bytesRead : 0;
- callback.onDownloadProgress(
- totalBytesRead, responseBody.contentLength(), bytesRead == -1);
- return bytesRead;
- }
- };
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ServerConfiguration.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ServerConfiguration.java
deleted file mode 100644
index 0a9a2a7c..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ServerConfiguration.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package io.github.outscale.osc_sdk_java.client;
-
-import java.util.Map;
-
-/** Representing a Server configuration. */
-public class ServerConfiguration {
- public String URL;
- public String description;
- public Map variables;
-
- /**
- * @param URL A URL to the target host.
- * @param description A description of the host designated by the URL.
- * @param variables A map between a variable name and its value. The value is used for
- * substitution in the server's URL template.
- */
- public ServerConfiguration(
- String URL, String description, Map variables) {
- this.URL = URL;
- this.description = description;
- this.variables = variables;
- }
-
- /**
- * Format URL template using given variables.
- *
- * @param variables A map between a variable name and its value.
- * @return Formatted URL.
- */
- public String URL(Map variables) {
- String url = this.URL;
-
- // go through variables and replace placeholders
- for (Map.Entry variable : this.variables.entrySet()) {
- String name = variable.getKey();
- ServerVariable serverVariable = variable.getValue();
- String value = serverVariable.defaultValue;
-
- if (variables != null && variables.containsKey(name)) {
- value = variables.get(name);
- if (serverVariable.enumValues.size() > 0
- && !serverVariable.enumValues.contains(value)) {
- throw new IllegalArgumentException(
- "The variable "
- + name
- + " in the server URL has invalid value "
- + value
- + ".");
- }
- }
- url = url.replace("{" + name + "}", value);
- }
- return url;
- }
-
- /**
- * Format URL template using default server variables.
- *
- * @return Formatted URL.
- */
- public String URL() {
- return URL(null);
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/ServerVariable.java b/src/main/java/io/github/outscale/osc_sdk_java/client/ServerVariable.java
deleted file mode 100644
index 71255dad..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/ServerVariable.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package io.github.outscale.osc_sdk_java.client;
-
-import java.util.HashSet;
-
-/** Representing a Server Variable for server URL template substitution. */
-public class ServerVariable {
- public String description;
- public String defaultValue;
- public HashSet enumValues = null;
-
- /**
- * @param description A description for the server variable.
- * @param defaultValue The default value to use for substitution.
- * @param enumValues An enumeration of string values to be used if the substitution options are
- * from a limited set.
- */
- public ServerVariable(String description, String defaultValue, HashSet enumValues) {
- this.description = description;
- this.defaultValue = defaultValue;
- this.enumValues = enumValues;
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/StringUtil.java b/src/main/java/io/github/outscale/osc_sdk_java/client/StringUtil.java
deleted file mode 100644
index c268bfba..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/StringUtil.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
-public class StringUtil {
- /**
- * Check if the given array contains the given value (with case-insensitive comparison).
- *
- * @param array The array
- * @param value The value to search
- * @return true if the array contains the value
- */
- public static boolean containsIgnoreCase(String[] array, String value) {
- for (String str : array) {
- if (value == null && str == null) {
- return true;
- }
- if (value != null && value.equalsIgnoreCase(str)) {
- return true;
- }
- }
- return false;
- }
-
- /**
- * Join an array of strings with the given separator.
- *
- * Note: This might be replaced by utility method from commons-lang or guava someday if one
- * of those libraries is added as dependency.
- *
- * @param array The array of strings
- * @param separator The separator
- * @return the resulting string
- */
- public static String join(String[] array, String separator) {
- int len = array.length;
- if (len == 0) {
- return "";
- }
-
- StringBuilder out = new StringBuilder();
- out.append(array[0]);
- for (int i = 1; i < len; i++) {
- out.append(separator).append(array[i]);
- }
- return out.toString();
- }
-
- /**
- * Join a list of strings with the given separator.
- *
- * @param list The list of strings
- * @param separator The separator
- * @return the resulting string
- */
- public static String join(Collection list, String separator) {
- Iterator iterator = list.iterator();
- StringBuilder out = new StringBuilder();
- if (iterator.hasNext()) {
- out.append(iterator.next());
- }
- while (iterator.hasNext()) {
- out.append(separator).append(iterator.next());
- }
- return out.toString();
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccessKeyApi.java b/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccessKeyApi.java
deleted file mode 100644
index 20073da6..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccessKeyApi.java
+++ /dev/null
@@ -1,756 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client.api;
-
-import com.google.gson.reflect.TypeToken;
-import io.github.outscale.osc_sdk_java.client.ApiCallback;
-import io.github.outscale.osc_sdk_java.client.ApiClient;
-import io.github.outscale.osc_sdk_java.client.ApiException;
-import io.github.outscale.osc_sdk_java.client.ApiResponse;
-import io.github.outscale.osc_sdk_java.client.Configuration;
-import io.github.outscale.osc_sdk_java.client.Pair;
-import io.github.outscale.osc_sdk_java.client.model.CreateAccessKeyRequest;
-import io.github.outscale.osc_sdk_java.client.model.CreateAccessKeyResponse;
-import io.github.outscale.osc_sdk_java.client.model.DeleteAccessKeyRequest;
-import io.github.outscale.osc_sdk_java.client.model.DeleteAccessKeyResponse;
-import io.github.outscale.osc_sdk_java.client.model.ReadAccessKeysRequest;
-import io.github.outscale.osc_sdk_java.client.model.ReadAccessKeysResponse;
-import io.github.outscale.osc_sdk_java.client.model.ReadSecretAccessKeyRequest;
-import io.github.outscale.osc_sdk_java.client.model.ReadSecretAccessKeyResponse;
-import io.github.outscale.osc_sdk_java.client.model.UpdateAccessKeyRequest;
-import io.github.outscale.osc_sdk_java.client.model.UpdateAccessKeyResponse;
-import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class AccessKeyApi {
- private ApiClient localVarApiClient;
- private int localHostIndex;
- private String localCustomBaseUrl;
-
- public AccessKeyApi() {
- this(Configuration.getDefaultApiClient());
- }
-
- public AccessKeyApi(ApiClient apiClient) {
- this.localVarApiClient = apiClient;
- }
-
- public ApiClient getApiClient() {
- return localVarApiClient;
- }
-
- public void setApiClient(ApiClient apiClient) {
- this.localVarApiClient = apiClient;
- }
-
- public int getHostIndex() {
- return localHostIndex;
- }
-
- public void setHostIndex(int hostIndex) {
- this.localHostIndex = hostIndex;
- }
-
- public String getCustomBaseUrl() {
- return localCustomBaseUrl;
- }
-
- public void setCustomBaseUrl(String customBaseUrl) {
- this.localCustomBaseUrl = customBaseUrl;
- }
-
- /**
- * Build call for createAccessKey
- *
- * @param createAccessKeyRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call createAccessKeyCall(
- CreateAccessKeyRequest createAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = createAccessKeyRequest;
-
- // create path and map variables
- String localVarPath = "/CreateAccessKey";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuthSec", "BasicAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call createAccessKeyValidateBeforeCall(
- CreateAccessKeyRequest createAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- return createAccessKeyCall(createAccessKeyRequest, _callback);
- }
-
- /**
- * @param createAccessKeyRequest (optional)
- * @return CreateAccessKeyResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public CreateAccessKeyResponse createAccessKey(CreateAccessKeyRequest createAccessKeyRequest)
- throws ApiException {
- ApiResponse localVarResp =
- createAccessKeyWithHttpInfo(createAccessKeyRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param createAccessKeyRequest (optional)
- * @return ApiResponse<CreateAccessKeyResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse createAccessKeyWithHttpInfo(
- CreateAccessKeyRequest createAccessKeyRequest) throws ApiException {
- okhttp3.Call localVarCall = createAccessKeyValidateBeforeCall(createAccessKeyRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param createAccessKeyRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call createAccessKeyAsync(
- CreateAccessKeyRequest createAccessKeyRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- createAccessKeyValidateBeforeCall(createAccessKeyRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
- /**
- * Build call for deleteAccessKey
- *
- * @param deleteAccessKeyRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call deleteAccessKeyCall(
- DeleteAccessKeyRequest deleteAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = deleteAccessKeyRequest;
-
- // create path and map variables
- String localVarPath = "/DeleteAccessKey";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuthSec", "BasicAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call deleteAccessKeyValidateBeforeCall(
- DeleteAccessKeyRequest deleteAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- return deleteAccessKeyCall(deleteAccessKeyRequest, _callback);
- }
-
- /**
- * @param deleteAccessKeyRequest (optional)
- * @return DeleteAccessKeyResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public DeleteAccessKeyResponse deleteAccessKey(DeleteAccessKeyRequest deleteAccessKeyRequest)
- throws ApiException {
- ApiResponse localVarResp =
- deleteAccessKeyWithHttpInfo(deleteAccessKeyRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param deleteAccessKeyRequest (optional)
- * @return ApiResponse<DeleteAccessKeyResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse deleteAccessKeyWithHttpInfo(
- DeleteAccessKeyRequest deleteAccessKeyRequest) throws ApiException {
- okhttp3.Call localVarCall = deleteAccessKeyValidateBeforeCall(deleteAccessKeyRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param deleteAccessKeyRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call deleteAccessKeyAsync(
- DeleteAccessKeyRequest deleteAccessKeyRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- deleteAccessKeyValidateBeforeCall(deleteAccessKeyRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
- /**
- * Build call for readAccessKeys
- *
- * @param readAccessKeysRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call readAccessKeysCall(
- ReadAccessKeysRequest readAccessKeysRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = readAccessKeysRequest;
-
- // create path and map variables
- String localVarPath = "/ReadAccessKeys";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuthSec", "BasicAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call readAccessKeysValidateBeforeCall(
- ReadAccessKeysRequest readAccessKeysRequest, final ApiCallback _callback)
- throws ApiException {
- return readAccessKeysCall(readAccessKeysRequest, _callback);
- }
-
- /**
- * @param readAccessKeysRequest (optional)
- * @return ReadAccessKeysResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ReadAccessKeysResponse readAccessKeys(ReadAccessKeysRequest readAccessKeysRequest)
- throws ApiException {
- ApiResponse localVarResp =
- readAccessKeysWithHttpInfo(readAccessKeysRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param readAccessKeysRequest (optional)
- * @return ApiResponse<ReadAccessKeysResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse readAccessKeysWithHttpInfo(
- ReadAccessKeysRequest readAccessKeysRequest) throws ApiException {
- okhttp3.Call localVarCall = readAccessKeysValidateBeforeCall(readAccessKeysRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param readAccessKeysRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call readAccessKeysAsync(
- ReadAccessKeysRequest readAccessKeysRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- readAccessKeysValidateBeforeCall(readAccessKeysRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
- /**
- * Build call for readSecretAccessKey
- *
- * @param readSecretAccessKeyRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call readSecretAccessKeyCall(
- ReadSecretAccessKeyRequest readSecretAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = readSecretAccessKeyRequest;
-
- // create path and map variables
- String localVarPath = "/ReadSecretAccessKey";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuthSec", "BasicAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call readSecretAccessKeyValidateBeforeCall(
- ReadSecretAccessKeyRequest readSecretAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- return readSecretAccessKeyCall(readSecretAccessKeyRequest, _callback);
- }
-
- /**
- * @param readSecretAccessKeyRequest (optional)
- * @return ReadSecretAccessKeyResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ReadSecretAccessKeyResponse readSecretAccessKey(
- ReadSecretAccessKeyRequest readSecretAccessKeyRequest) throws ApiException {
- ApiResponse localVarResp =
- readSecretAccessKeyWithHttpInfo(readSecretAccessKeyRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param readSecretAccessKeyRequest (optional)
- * @return ApiResponse<ReadSecretAccessKeyResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse readSecretAccessKeyWithHttpInfo(
- ReadSecretAccessKeyRequest readSecretAccessKeyRequest) throws ApiException {
- okhttp3.Call localVarCall =
- readSecretAccessKeyValidateBeforeCall(readSecretAccessKeyRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param readSecretAccessKeyRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call readSecretAccessKeyAsync(
- ReadSecretAccessKeyRequest readSecretAccessKeyRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- readSecretAccessKeyValidateBeforeCall(readSecretAccessKeyRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
- /**
- * Build call for updateAccessKey
- *
- * @param updateAccessKeyRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call updateAccessKeyCall(
- UpdateAccessKeyRequest updateAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = updateAccessKeyRequest;
-
- // create path and map variables
- String localVarPath = "/UpdateAccessKey";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuthSec", "BasicAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call updateAccessKeyValidateBeforeCall(
- UpdateAccessKeyRequest updateAccessKeyRequest, final ApiCallback _callback)
- throws ApiException {
- return updateAccessKeyCall(updateAccessKeyRequest, _callback);
- }
-
- /**
- * @param updateAccessKeyRequest (optional)
- * @return UpdateAccessKeyResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public UpdateAccessKeyResponse updateAccessKey(UpdateAccessKeyRequest updateAccessKeyRequest)
- throws ApiException {
- ApiResponse localVarResp =
- updateAccessKeyWithHttpInfo(updateAccessKeyRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param updateAccessKeyRequest (optional)
- * @return ApiResponse<UpdateAccessKeyResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse updateAccessKeyWithHttpInfo(
- UpdateAccessKeyRequest updateAccessKeyRequest) throws ApiException {
- okhttp3.Call localVarCall = updateAccessKeyValidateBeforeCall(updateAccessKeyRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param updateAccessKeyRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call updateAccessKeyAsync(
- UpdateAccessKeyRequest updateAccessKeyRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- updateAccessKeyValidateBeforeCall(updateAccessKeyRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
-}
diff --git a/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccountApi.java b/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccountApi.java
deleted file mode 100644
index 4d94da6e..00000000
--- a/src/main/java/io/github/outscale/osc_sdk_java/client/api/AccountApi.java
+++ /dev/null
@@ -1,758 +0,0 @@
-/*
- * 3DS OUTSCALE API
- * Welcome to the OUTSCALE API documentation.
The OUTSCALE API enables you to manage your resources in the OUTSCALE Cloud. This documentation describes the different actions available along with code examples.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Note that the OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but there are [differences in resource names](https://docs.outscale.com/en/userguide/About-the-APIs.html) between AWS and the OUTSCALE API.
You can also manage your resources using the [Cockpit](https://docs.outscale.com/en/userguide/About-Cockpit.html) web interface.
An OpenAPI description of the OUTSCALE API is also available in this [GitHub repository](https://github.com/outscale/osc-api).
# Authentication Schemes ### Access Key/Secret Key The main way to authenticate your requests to the OUTSCALE API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in [Signature of API Requests](https://docs.outscale.com/en/userguide/Signature-of-API-Requests.html).
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify your access key, secret key, and the Region of your account. > 2. You then specify the `--profile` option when executing OSC CLI commands. > > For more information, see [Installing and Configuring OSC CLI](https://docs.outscale.com/en/userguide/Installing-and-Configuring-OSC-CLI.html). See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see [About Access Keys](https://docs.outscale.com/en/userguide/About-Access-Keys.html). > If you try to sign requests with an invalid access key four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### Login/Password For certain API actions, you can also use basic authentication with the login (email address) and password of your TINA account.
This is useful only in special circumstances, for example if you do not know your access key/secret key and want to retrieve them programmatically.
In most cases, however, you can use the Cockpit web interface to retrieve them.
> For example, if you use OSC CLI: > 1. You need to create an **~/.osc/config.json** file to specify the Region of your account, but you leave the access key value and secret key value empty (`""`). > 2. You then specify the `--profile`, `--authentication-method`, `--login`, and `--password` options when executing OSC CLI commands. See the code samples in each section of this documentation for specific examples in different programming languages. > If you try to sign requests with an invalid password four times in a row, further authentication attempts will be prevented for 1 minute. This lockout time increases 1 minute every four failed attempts, for up to 10 minutes. ### No Authentication A few API actions do not require any authentication. They are indicated as such in this documentation.
### Other Security Mechanisms In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see [Managing Your API Accesses](https://docs.outscale.com/en/userguide/Managing-Your-API-Accesses.html).
# Error Codes Reference You can learn more about errors returned by the API in the dedicated [errors page](api-errors.html).
- *
- * The version of the OpenAPI document: 1.30.0
- * Contact: support@outscale.com
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-package io.github.outscale.osc_sdk_java.client.api;
-
-import com.google.gson.reflect.TypeToken;
-import io.github.outscale.osc_sdk_java.client.ApiCallback;
-import io.github.outscale.osc_sdk_java.client.ApiClient;
-import io.github.outscale.osc_sdk_java.client.ApiException;
-import io.github.outscale.osc_sdk_java.client.ApiResponse;
-import io.github.outscale.osc_sdk_java.client.Configuration;
-import io.github.outscale.osc_sdk_java.client.Pair;
-import io.github.outscale.osc_sdk_java.client.model.CheckAuthenticationRequest;
-import io.github.outscale.osc_sdk_java.client.model.CheckAuthenticationResponse;
-import io.github.outscale.osc_sdk_java.client.model.CreateAccountRequest;
-import io.github.outscale.osc_sdk_java.client.model.CreateAccountResponse;
-import io.github.outscale.osc_sdk_java.client.model.ReadAccountsRequest;
-import io.github.outscale.osc_sdk_java.client.model.ReadAccountsResponse;
-import io.github.outscale.osc_sdk_java.client.model.ReadConsumptionAccountRequest;
-import io.github.outscale.osc_sdk_java.client.model.ReadConsumptionAccountResponse;
-import io.github.outscale.osc_sdk_java.client.model.UpdateAccountRequest;
-import io.github.outscale.osc_sdk_java.client.model.UpdateAccountResponse;
-import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class AccountApi {
- private ApiClient localVarApiClient;
- private int localHostIndex;
- private String localCustomBaseUrl;
-
- public AccountApi() {
- this(Configuration.getDefaultApiClient());
- }
-
- public AccountApi(ApiClient apiClient) {
- this.localVarApiClient = apiClient;
- }
-
- public ApiClient getApiClient() {
- return localVarApiClient;
- }
-
- public void setApiClient(ApiClient apiClient) {
- this.localVarApiClient = apiClient;
- }
-
- public int getHostIndex() {
- return localHostIndex;
- }
-
- public void setHostIndex(int hostIndex) {
- this.localHostIndex = hostIndex;
- }
-
- public String getCustomBaseUrl() {
- return localCustomBaseUrl;
- }
-
- public void setCustomBaseUrl(String customBaseUrl) {
- this.localCustomBaseUrl = customBaseUrl;
- }
-
- /**
- * Build call for checkAuthentication
- *
- * @param checkAuthenticationRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call checkAuthenticationCall(
- CheckAuthenticationRequest checkAuthenticationRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = checkAuthenticationRequest;
-
- // create path and map variables
- String localVarPath = "/CheckAuthentication";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call checkAuthenticationValidateBeforeCall(
- CheckAuthenticationRequest checkAuthenticationRequest, final ApiCallback _callback)
- throws ApiException {
- return checkAuthenticationCall(checkAuthenticationRequest, _callback);
- }
-
- /**
- * @param checkAuthenticationRequest (optional)
- * @return CheckAuthenticationResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public CheckAuthenticationResponse checkAuthentication(
- CheckAuthenticationRequest checkAuthenticationRequest) throws ApiException {
- ApiResponse localVarResp =
- checkAuthenticationWithHttpInfo(checkAuthenticationRequest);
- return localVarResp.getData();
- }
-
- /**
- * @param checkAuthenticationRequest (optional)
- * @return ApiResponse<CheckAuthenticationResponse>
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public ApiResponse checkAuthenticationWithHttpInfo(
- CheckAuthenticationRequest checkAuthenticationRequest) throws ApiException {
- okhttp3.Call localVarCall =
- checkAuthenticationValidateBeforeCall(checkAuthenticationRequest, null);
- Type localVarReturnType = new TypeToken() {}.getType();
- return localVarApiClient.execute(localVarCall, localVarReturnType);
- }
-
- /**
- * (asynchronously)
- *
- * @param checkAuthenticationRequest (optional)
- * @param _callback The callback to be executed when the API call finishes
- * @return The request call
- * @throws ApiException If fail to process the API call, e.g. serializing the request body
- * object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call checkAuthenticationAsync(
- CheckAuthenticationRequest checkAuthenticationRequest,
- final ApiCallback _callback)
- throws ApiException {
-
- okhttp3.Call localVarCall =
- checkAuthenticationValidateBeforeCall(checkAuthenticationRequest, _callback);
- Type localVarReturnType = new TypeToken() {}.getType();
- localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
- return localVarCall;
- }
- /**
- * Build call for createAccount
- *
- * @param createAccountRequest (optional)
- * @param _callback Callback for upload/download progress
- * @return Call to execute
- * @throws ApiException If fail to serialize the request body object
- * @http.response.details
- *
- * | Status Code | Description | Response Headers |
- * | 200 | The HTTP 200 response (OK). | - |
- *
- */
- public okhttp3.Call createAccountCall(
- CreateAccountRequest createAccountRequest, final ApiCallback _callback)
- throws ApiException {
- String basePath = null;
- // Operation Servers
- String[] localBasePaths = new String[] {};
-
- // Determine Base Path to Use
- if (localCustomBaseUrl != null) {
- basePath = localCustomBaseUrl;
- } else if (localBasePaths.length > 0) {
- basePath = localBasePaths[localHostIndex];
- } else {
- basePath = null;
- }
-
- Object localVarPostBody = createAccountRequest;
-
- // create path and map variables
- String localVarPath = "/CreateAccount";
-
- List localVarQueryParams = new ArrayList();
- List localVarCollectionQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
- Map localVarCookieParams = new HashMap();
- Map localVarFormParams = new HashMap();
-
- final String[] localVarAccepts = {"application/json"};
- final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
- if (localVarAccept != null) {
- localVarHeaderParams.put("Accept", localVarAccept);
- }
-
- final String[] localVarContentTypes = {"application/json"};
- final String localVarContentType =
- localVarApiClient.selectHeaderContentType(localVarContentTypes);
- if (localVarContentType != null) {
- localVarHeaderParams.put("Content-Type", localVarContentType);
- }
-
- String[] localVarAuthNames = new String[] {"AWS4Auth", "ApiKeyAuth"};
- return localVarApiClient.buildCall(
- basePath,
- localVarPath,
- "POST",
- localVarQueryParams,
- localVarCollectionQueryParams,
- localVarPostBody,
- localVarHeaderParams,
- localVarCookieParams,
- localVarFormParams,
- localVarAuthNames,
- _callback);
- }
-
- @SuppressWarnings("rawtypes")
- private okhttp3.Call createAccountValidateBeforeCall(
- CreateAccountRequest createAccountRequest, final ApiCallback _callback)
- throws ApiException {
- return createAccountCall(createAccountRequest, _callback);
- }
-
- /**
- * @param createAccountRequest (optional)
- * @return CreateAccountResponse
- * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the
- * response body
- * @http.response.details
- *