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

main.java.com.nutanix.net.java.client.api.Layer2StretchStatsApi Maven / Gradle / Ivy

package com.nutanix.net.java.client.api;

import com.nutanix.net.java.client.ApiClient;




import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.HashSet;
import java.util.Set;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.HttpClientErrorException;
import org.springframework.web.util.UriComponentsBuilder;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.core.io.FileSystemResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;

@javax.annotation.Generated(value = "com.nutanix.swagger.codegen.generators.JavaClientSDKGenerator", date = "2023-08-18T03:03:05.126Z[Etc/UTC]")@Component("com.nutanix.net.java.client.api.Layer2StretchStatsApi")
public class Layer2StretchStatsApi {
    private ApiClient apiClient;
	private final Set headersToSkip;

    public Layer2StretchStatsApi() {
        this(new ApiClient());
    }

    @Autowired
    public Layer2StretchStatsApi(ApiClient apiClient) {
        this.apiClient = apiClient;
        this.headersToSkip = new HashSet<>(Arrays.asList("authorization", "cookie", "ntnx-request-id", "host", "user-agent"));
    }

    public ApiClient getApiClient() {
        return apiClient;
    }

    public void setApiClient(ApiClient apiClient) {
        this.apiClient = apiClient;
    }

    /**
     * Get Layer2Stretch statistics. Requires Prism Central >= pc.2022.9.
     * 

200 - Get Layer2Stretch statistics response *

4XX - Client error response *

5XX - Server error response * @param extId The UUID of the Layer2Stretch configuration. * @param $startTime The start time of the period for which stats should be reported. The value should be in extended ISO-8601 format. For example, start time of 2022-04-23T01:23:45.678+09:00 would consider all stats starting at 1:23:45.678 on the 23rd of April 2022. Details around ISO-8601 format can be found at https://www.iso.org/standard/70907.html * @param $endTime The end time of the period for which stats should be reported. The value should be in extended ISO-8601 format. For example, end time of 2022-04-23T013:23:45.678+09:00 would consider all stats till 13:23:45 .678 on the 23rd of April 2022. Details around ISO-8601 format can be found at https://www.iso.org/standard/70907.html * @param $samplingInterval The sampling interval in seconds at which statistical data should be collected For example, do you want performance statistics every 30 seconds? Every 60 seconds? * @param $statType The $statType parameter * @param $page A URL query parameter that specifies the page number of the result set. Must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range will lead to no results being returned. * @param $limit A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided a default value of 50 records will be returned in the result set. * @param $select A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. If a $select expression consists of a single select item that is an asterisk (i.e. *), then all properties on the matching resource will be returned. - entityUuid - extId - links - rtt - statType - tenantId - throughputRxKbps - throughputTxKbps * @param args Additional arguments * @return com.nutanix.dp1.net.networking.v4.stats.Layer2StretchStatsApiResponse * @throws RestClientException if an error occurs while attempting to invoke the API */ public com.nutanix.dp1.net.networking.v4.stats.Layer2StretchStatsApiResponse getLayer2StretchStats(String extId, String $startTime, String $endTime, Integer $samplingInterval, com.nutanix.dp1.net.common.v1.stats.DownSamplingOperator $statType, Integer $page, Integer $limit, String $select, HashMap ... args) throws RestClientException { // Check for optional argument map HashMap argMap = args.length > 0 ? args[0] : new HashMap(); Object postBody = null; // verify the required parameter 'extId' is set if (extId == null) { throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'extId' when calling getLayer2StretchStats"); } // create path and map variables final Map uriVariables = new HashMap(); uriVariables.put("extId", extId); String path = UriComponentsBuilder.fromPath("/api/networking/v4.0.b1/stats/layer2-stretches/{extId}").buildAndExpand(uriVariables).toUriString(); final MultiValueMap queryParams = new LinkedMultiValueMap(); final HttpHeaders headerParams = new HttpHeaders(); final MultiValueMap formParams = new LinkedMultiValueMap(); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$startTime", $startTime)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$endTime", $endTime)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$samplingInterval", $samplingInterval)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$statType", $statType)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$page", $page)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$limit", $limit)); queryParams.putAll(apiClient.parameterToMultiValueMap(null, "$select", $select)); argMap.forEach((key, value) -> { if (!this.headersToSkip.contains(key.toLowerCase())) { String stringValue = apiClient.parameterToString(value); if (stringValue != null && !stringValue.trim().isEmpty()) { headerParams.add(key, apiClient.parameterToString(value)); } } }); final String[] accepts = { "application/json" }; final List accept = apiClient.selectHeaderAccept(accepts); final String[] contentTypes = { }; final MediaType contentType = apiClient.selectHeaderContentType(contentTypes); String[] authNames = new String[] { "basicAuthScheme" }; ParameterizedTypeReference returnType = new ParameterizedTypeReference() {}; return apiClient.invokeAPI(path, HttpMethod.GET, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy