github.com/vmware/go-vmware-nsxt@v0.0.0-20230223012718-d31b8a1ca05e/api_support_bundle.go (about)

     1  /*
     2   * NSX-T Manager API
     3   *
     4   * VMware NSX-T Manager REST API
     5   *
     6   * API version: 3.2.0.0.0
     7   * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
     8   */
     9  
    10  package nsxt
    11  
    12  import (
    13  	"context"
    14  	"io/ioutil"
    15  	"net/http"
    16  	"net/url"
    17  	"strings"
    18  
    19  	"github.com/antihax/optional"
    20  	"github.com/vmware/go-vmware-nsxt/supportbundle"
    21  )
    22  
    23  // Linger please
    24  var (
    25  	_ context.Context
    26  )
    27  
    28  type SupportBundleApiService service
    29  
    30  /*
    31  SupportBundleApiService Collect support bundles from registered cluster and fabric nodes
    32  Collect support bundles from registered cluster and fabric nodes.
    33   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34   * @param supportBundleRequest
    35   * @param optional nil or *SupportBundleApiCollectSupportBundlesCollectOpts - Optional Parameters:
    36       * @param "OverrideAsyncResponse" (optional.Bool) -  Override any existing support bundle async response
    37       * @param "RequireDeleteOrOverrideAsyncResponse" (optional.Bool) -  Suppress auto-deletion of generated support bundle
    38  
    39  @return SupportBundleResult
    40  */
    41  
    42  type SupportBundleApiCollectSupportBundlesCollectOpts struct {
    43  	OverrideAsyncResponse                optional.Bool
    44  	RequireDeleteOrOverrideAsyncResponse optional.Bool
    45  }
    46  
    47  func (a *SupportBundleApiService) CollectSupportBundlesCollect(ctx context.Context, supportBundleRequest supportbundle.SupportBundleRequest, localVarOptionals *SupportBundleApiCollectSupportBundlesCollectOpts) (supportbundle.SupportBundleResult, *http.Response, error) {
    48  	var (
    49  		localVarHttpMethod  = strings.ToUpper("Post")
    50  		localVarPostBody    interface{}
    51  		localVarFileName    string
    52  		localVarFileBytes   []byte
    53  		localVarReturnValue supportbundle.SupportBundleResult
    54  	)
    55  
    56  	// create path and map variables
    57  	localVarPath := a.client.cfg.BasePath + "/administration/support-bundles?action=collect"
    58  
    59  	localVarHeaderParams := make(map[string]string)
    60  	localVarQueryParams := url.Values{}
    61  	localVarFormParams := url.Values{}
    62  
    63  	if localVarOptionals != nil && localVarOptionals.OverrideAsyncResponse.IsSet() {
    64  		localVarQueryParams.Add("override_async_response", parameterToString(localVarOptionals.OverrideAsyncResponse.Value(), ""))
    65  	}
    66  	if localVarOptionals != nil && localVarOptionals.RequireDeleteOrOverrideAsyncResponse.IsSet() {
    67  		localVarQueryParams.Add("require_delete_or_override_async_response", parameterToString(localVarOptionals.RequireDeleteOrOverrideAsyncResponse.Value(), ""))
    68  	}
    69  	// to determine the Content-Type header
    70  	localVarHttpContentTypes := []string{"application/json"}
    71  
    72  	// set Content-Type header
    73  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    74  	if localVarHttpContentType != "" {
    75  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    76  	}
    77  
    78  	// to determine the Accept header
    79  	localVarHttpHeaderAccepts := []string{"application/json", "application/octet-stream"}
    80  
    81  	// set Accept header
    82  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    83  	if localVarHttpHeaderAccept != "" {
    84  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    85  	}
    86  	// body params
    87  	localVarPostBody = &supportBundleRequest
    88  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
    89  	if err != nil {
    90  		return localVarReturnValue, nil, err
    91  	}
    92  
    93  	localVarHttpResponse, err := a.client.callAPI(r)
    94  	if err != nil || localVarHttpResponse == nil {
    95  		return localVarReturnValue, localVarHttpResponse, err
    96  	}
    97  
    98  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    99  	localVarHttpResponse.Body.Close()
   100  	if err != nil {
   101  		return localVarReturnValue, localVarHttpResponse, err
   102  	}
   103  
   104  	if localVarHttpResponse.StatusCode < 300 {
   105  		// If we succeed, return the data, otherwise pass on to decode error.
   106  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   107  		return localVarReturnValue, localVarHttpResponse, err
   108  	}
   109  
   110  	if localVarHttpResponse.StatusCode >= 300 {
   111  		newErr := GenericSwaggerError{
   112  			body:  localVarBody,
   113  			error: localVarHttpResponse.Status,
   114  		}
   115  		var v ApiError
   116  		err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   117  		if err != nil {
   118  			newErr.error = err.Error()
   119  			return localVarReturnValue, localVarHttpResponse, newErr
   120  		}
   121  		newErr.model = v
   122  		return localVarReturnValue, localVarHttpResponse, newErr
   123  	}
   124  
   125  	return localVarReturnValue, localVarHttpResponse, nil
   126  }
   127  
   128  /*
   129  SupportBundleApiService Delete existing support bundles waiting to be downloaded
   130  Delete existing support bundles waiting to be downloaded.
   131   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   132  
   133  
   134  */
   135  func (a *SupportBundleApiService) DeleteSupportBundlesAsyncResponseDeleteAsyncResponse(ctx context.Context) (*http.Response, error) {
   136  	var (
   137  		localVarHttpMethod = strings.ToUpper("Post")
   138  		localVarPostBody   interface{}
   139  		localVarFileName   string
   140  		localVarFileBytes  []byte
   141  	)
   142  
   143  	// create path and map variables
   144  	localVarPath := a.client.cfg.BasePath + "/administration/support-bundles?action=delete_async_response"
   145  
   146  	localVarHeaderParams := make(map[string]string)
   147  	localVarQueryParams := url.Values{}
   148  	localVarFormParams := url.Values{}
   149  
   150  	// to determine the Content-Type header
   151  	localVarHttpContentTypes := []string{"application/json"}
   152  
   153  	// set Content-Type header
   154  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   155  	if localVarHttpContentType != "" {
   156  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   157  	}
   158  
   159  	// to determine the Accept header
   160  	localVarHttpHeaderAccepts := []string{"application/json"}
   161  
   162  	// set Accept header
   163  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   164  	if localVarHttpHeaderAccept != "" {
   165  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   166  	}
   167  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
   168  	if err != nil {
   169  		return nil, err
   170  	}
   171  
   172  	localVarHttpResponse, err := a.client.callAPI(r)
   173  	if err != nil || localVarHttpResponse == nil {
   174  		return localVarHttpResponse, err
   175  	}
   176  
   177  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   178  	localVarHttpResponse.Body.Close()
   179  	if err != nil {
   180  		return localVarHttpResponse, err
   181  	}
   182  
   183  	if localVarHttpResponse.StatusCode >= 300 {
   184  		newErr := GenericSwaggerError{
   185  			body:  localVarBody,
   186  			error: localVarHttpResponse.Status,
   187  		}
   188  		var v ApiError
   189  		err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   190  		if err != nil {
   191  			newErr.error = err.Error()
   192  			return localVarHttpResponse, newErr
   193  		}
   194  		newErr.model = v
   195  		return localVarHttpResponse, newErr
   196  	}
   197  
   198  	return localVarHttpResponse, nil
   199  }