/* * 3DS OUTSCALE API * * Welcome to the 3DS OUTSCALE's API documentation.

The 3DS OUTSCALE API enables you to manage your resources in the 3DS OUTSCALE Cloud. This documentation describes the different actions available along with code examples.

Note that the 3DS OUTSCALE Cloud is compatible with Amazon Web Services (AWS) APIs, but some resources have different names in AWS than in the 3DS OUTSCALE API. You can find a list of the differences [here](https://wiki.outscale.net/display/EN/3DS+OUTSCALE+APIs+Reference).

You can also manage your resources using the [Cockpit](https://wiki.outscale.net/display/EN/About+Cockpit) web interface. * * API version: 1.2 * Contact: support@outscale.com * Generated by: OpenAPI Generator (https://openapi-generator.tech) */ package osc import ( _context "context" _ioutil "io/ioutil" _nethttp "net/http" _neturl "net/url" "github.com/antihax/optional" ) // Linger please var ( _ _context.Context ) // ClientGatewayApiService ClientGatewayApi service type ClientGatewayApiService service // CreateClientGatewayOpts Optional parameters for the method 'CreateClientGateway' type CreateClientGatewayOpts struct { CreateClientGatewayRequest optional.Interface } /* CreateClientGateway Method for CreateClientGateway * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). * @param optional nil or *CreateClientGatewayOpts - Optional Parameters: * @param "CreateClientGatewayRequest" (optional.Interface of CreateClientGatewayRequest) - @return CreateClientGatewayResponse */ func (a *ClientGatewayApiService) CreateClientGateway(ctx _context.Context, localVarOptionals *CreateClientGatewayOpts) (CreateClientGatewayResponse, *_nethttp.Response, error) { var ( localVarHTTPMethod = _nethttp.MethodPost localVarPostBody interface{} localVarFormFileName string localVarFileName string localVarFileBytes []byte localVarReturnValue CreateClientGatewayResponse ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/CreateClientGateway" localVarHeaderParams := make(map[string]string) localVarQueryParams := _neturl.Values{} localVarFormParams := _neturl.Values{} // to determine the Content-Type header localVarHTTPContentTypes := []string{"application/json"} // set Content-Type header localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) if localVarHTTPContentType != "" { localVarHeaderParams["Content-Type"] = localVarHTTPContentType } // to determine the Accept header localVarHTTPHeaderAccepts := []string{"application/json"} // set Accept header localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) if localVarHTTPHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept } // body params if localVarOptionals != nil && localVarOptionals.CreateClientGatewayRequest.IsSet() { localVarOptionalCreateClientGatewayRequest, localVarOptionalCreateClientGatewayRequestok := localVarOptionals.CreateClientGatewayRequest.Value().(CreateClientGatewayRequest) if !localVarOptionalCreateClientGatewayRequestok { return localVarReturnValue, nil, reportError("createClientGatewayRequest should be CreateClientGatewayRequest") } localVarPostBody = &localVarOptionalCreateClientGatewayRequest } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) if err != nil { return localVarReturnValue, nil, err } localVarHTTPResponse, err := a.client.callAPI(r) if err != nil || localVarHTTPResponse == nil { return localVarReturnValue, localVarHTTPResponse, err } localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) localVarHTTPResponse.Body.Close() if err != nil { return localVarReturnValue, localVarHTTPResponse, err } if localVarHTTPResponse.StatusCode >= 300 { newErr := GenericOpenAPIError{ body: localVarBody, error: localVarHTTPResponse.Status, } if localVarHTTPResponse.StatusCode == 200 { var v CreateClientGatewayResponse err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr.error = err.Error() return localVarReturnValue, localVarHTTPResponse, newErr } newErr.model = v } return localVarReturnValue, localVarHTTPResponse, newErr } err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr := GenericOpenAPIError{ body: localVarBody, error: err.Error(), } return localVarReturnValue, localVarHTTPResponse, newErr } return localVarReturnValue, localVarHTTPResponse, nil } // DeleteClientGatewayOpts Optional parameters for the method 'DeleteClientGateway' type DeleteClientGatewayOpts struct { DeleteClientGatewayRequest optional.Interface } /* DeleteClientGateway Method for DeleteClientGateway * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). * @param optional nil or *DeleteClientGatewayOpts - Optional Parameters: * @param "DeleteClientGatewayRequest" (optional.Interface of DeleteClientGatewayRequest) - @return DeleteClientGatewayResponse */ func (a *ClientGatewayApiService) DeleteClientGateway(ctx _context.Context, localVarOptionals *DeleteClientGatewayOpts) (DeleteClientGatewayResponse, *_nethttp.Response, error) { var ( localVarHTTPMethod = _nethttp.MethodPost localVarPostBody interface{} localVarFormFileName string localVarFileName string localVarFileBytes []byte localVarReturnValue DeleteClientGatewayResponse ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/DeleteClientGateway" localVarHeaderParams := make(map[string]string) localVarQueryParams := _neturl.Values{} localVarFormParams := _neturl.Values{} // to determine the Content-Type header localVarHTTPContentTypes := []string{"application/json"} // set Content-Type header localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) if localVarHTTPContentType != "" { localVarHeaderParams["Content-Type"] = localVarHTTPContentType } // to determine the Accept header localVarHTTPHeaderAccepts := []string{"application/json"} // set Accept header localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) if localVarHTTPHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept } // body params if localVarOptionals != nil && localVarOptionals.DeleteClientGatewayRequest.IsSet() { localVarOptionalDeleteClientGatewayRequest, localVarOptionalDeleteClientGatewayRequestok := localVarOptionals.DeleteClientGatewayRequest.Value().(DeleteClientGatewayRequest) if !localVarOptionalDeleteClientGatewayRequestok { return localVarReturnValue, nil, reportError("deleteClientGatewayRequest should be DeleteClientGatewayRequest") } localVarPostBody = &localVarOptionalDeleteClientGatewayRequest } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) if err != nil { return localVarReturnValue, nil, err } localVarHTTPResponse, err := a.client.callAPI(r) if err != nil || localVarHTTPResponse == nil { return localVarReturnValue, localVarHTTPResponse, err } localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) localVarHTTPResponse.Body.Close() if err != nil { return localVarReturnValue, localVarHTTPResponse, err } if localVarHTTPResponse.StatusCode >= 300 { newErr := GenericOpenAPIError{ body: localVarBody, error: localVarHTTPResponse.Status, } if localVarHTTPResponse.StatusCode == 200 { var v DeleteClientGatewayResponse err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr.error = err.Error() return localVarReturnValue, localVarHTTPResponse, newErr } newErr.model = v } return localVarReturnValue, localVarHTTPResponse, newErr } err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr := GenericOpenAPIError{ body: localVarBody, error: err.Error(), } return localVarReturnValue, localVarHTTPResponse, newErr } return localVarReturnValue, localVarHTTPResponse, nil } // ReadClientGatewaysOpts Optional parameters for the method 'ReadClientGateways' type ReadClientGatewaysOpts struct { ReadClientGatewaysRequest optional.Interface } /* ReadClientGateways Method for ReadClientGateways * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). * @param optional nil or *ReadClientGatewaysOpts - Optional Parameters: * @param "ReadClientGatewaysRequest" (optional.Interface of ReadClientGatewaysRequest) - @return ReadClientGatewaysResponse */ func (a *ClientGatewayApiService) ReadClientGateways(ctx _context.Context, localVarOptionals *ReadClientGatewaysOpts) (ReadClientGatewaysResponse, *_nethttp.Response, error) { var ( localVarHTTPMethod = _nethttp.MethodPost localVarPostBody interface{} localVarFormFileName string localVarFileName string localVarFileBytes []byte localVarReturnValue ReadClientGatewaysResponse ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/ReadClientGateways" localVarHeaderParams := make(map[string]string) localVarQueryParams := _neturl.Values{} localVarFormParams := _neturl.Values{} // to determine the Content-Type header localVarHTTPContentTypes := []string{"application/json"} // set Content-Type header localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) if localVarHTTPContentType != "" { localVarHeaderParams["Content-Type"] = localVarHTTPContentType } // to determine the Accept header localVarHTTPHeaderAccepts := []string{"application/json"} // set Accept header localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) if localVarHTTPHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept } // body params if localVarOptionals != nil && localVarOptionals.ReadClientGatewaysRequest.IsSet() { localVarOptionalReadClientGatewaysRequest, localVarOptionalReadClientGatewaysRequestok := localVarOptionals.ReadClientGatewaysRequest.Value().(ReadClientGatewaysRequest) if !localVarOptionalReadClientGatewaysRequestok { return localVarReturnValue, nil, reportError("readClientGatewaysRequest should be ReadClientGatewaysRequest") } localVarPostBody = &localVarOptionalReadClientGatewaysRequest } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) if err != nil { return localVarReturnValue, nil, err } localVarHTTPResponse, err := a.client.callAPI(r) if err != nil || localVarHTTPResponse == nil { return localVarReturnValue, localVarHTTPResponse, err } localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) localVarHTTPResponse.Body.Close() if err != nil { return localVarReturnValue, localVarHTTPResponse, err } if localVarHTTPResponse.StatusCode >= 300 { newErr := GenericOpenAPIError{ body: localVarBody, error: localVarHTTPResponse.Status, } if localVarHTTPResponse.StatusCode == 200 { var v ReadClientGatewaysResponse err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr.error = err.Error() return localVarReturnValue, localVarHTTPResponse, newErr } newErr.model = v } return localVarReturnValue, localVarHTTPResponse, newErr } err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr := GenericOpenAPIError{ body: localVarBody, error: err.Error(), } return localVarReturnValue, localVarHTTPResponse, newErr } return localVarReturnValue, localVarHTTPResponse, nil }