github.com/free5gc/openapi@v1.0.8/Namf_Communication/api_non_uen2_messages_collection_document.go (about)

     1  /*
     2   * Namf_Communication
     3   *
     4   * AMF Communication Service
     5   *
     6   * API version: 1.0.0
     7   * Generated by: OpenAPI Generator (https://openapi-generator.tech)
     8   */
     9  
    10  package Namf_Communication
    11  
    12  import (
    13  	"context"
    14  	"io/ioutil"
    15  	"net/http"
    16  	"net/url"
    17  	"strings"
    18  
    19  	"github.com/free5gc/openapi"
    20  	"github.com/free5gc/openapi/models"
    21  )
    22  
    23  // Linger please
    24  var (
    25  	_ context.Context
    26  )
    27  
    28  type NonUEN2MessagesCollectionDocumentApiService service
    29  
    30  /*
    31  NonUEN2MessagesCollectionDocumentApiService Namf_Communication Non UE N2 Message Transfer service Operation
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33  @return N2InformationTransferRspData
    34  */
    35  
    36  func (a *NonUEN2MessagesCollectionDocumentApiService) NonUeN2MessageTransfer(ctx context.Context, request models.NonUeN2MessageTransferRequest) (models.N2InformationTransferRspData, *http.Response, error) {
    37  	var (
    38  		localVarHttpMethod   = strings.ToUpper("Post")
    39  		localVarPostBody     interface{}
    40  		localVarFormFileName string
    41  		localVarFileName     string
    42  		localVarFileBytes    []byte
    43  		localVarReturnValue  models.N2InformationTransferRspData
    44  	)
    45  
    46  	// create path and map variables
    47  	localVarPath := a.client.cfg.BasePath() + "/non-ue-n2-messages/transfer"
    48  
    49  	localVarHeaderParams := make(map[string]string)
    50  	localVarQueryParams := url.Values{}
    51  	localVarFormParams := url.Values{}
    52  
    53  	// to determine is multipart request
    54  	if request.BinaryDataN2Information != nil {
    55  		localVarHeaderParams["Content-Type"] = "multipart/related"
    56  		localVarPostBody = &request
    57  	} else {
    58  		localVarHeaderParams["Content-Type"] = "application/json"
    59  		localVarPostBody = request.JsonData
    60  	}
    61  
    62  	// to determine the Accept header
    63  	localVarHttpHeaderAccepts := []string{"application/json", "application/problem+json"}
    64  
    65  	// set Accept header
    66  	localVarHttpHeaderAccept := openapi.SelectHeaderAccept(localVarHttpHeaderAccepts)
    67  	if localVarHttpHeaderAccept != "" {
    68  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    69  	}
    70  
    71  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    72  	if err != nil {
    73  		return localVarReturnValue, nil, err
    74  	}
    75  
    76  	localVarHttpResponse, err := openapi.CallAPI(a.client.cfg, r)
    77  	if err != nil || localVarHttpResponse == nil {
    78  		return localVarReturnValue, localVarHttpResponse, err
    79  	}
    80  
    81  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    82  	localVarHttpResponse.Body.Close()
    83  	if err != nil {
    84  		return localVarReturnValue, localVarHttpResponse, err
    85  	}
    86  
    87  	apiError := openapi.GenericOpenAPIError{
    88  		RawBody:     localVarBody,
    89  		ErrorStatus: localVarHttpResponse.Status,
    90  	}
    91  	switch localVarHttpResponse.StatusCode {
    92  	case 200:
    93  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
    94  		if err != nil {
    95  			apiError.ErrorStatus = err.Error()
    96  		}
    97  		return localVarReturnValue, localVarHttpResponse, nil
    98  	case 400:
    99  		var v models.N2InformationTransferError
   100  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   101  		if err != nil {
   102  			apiError.ErrorStatus = err.Error()
   103  			return localVarReturnValue, localVarHttpResponse, apiError
   104  		}
   105  		apiError.ErrorModel = v
   106  		return localVarReturnValue, localVarHttpResponse, apiError
   107  	case 403:
   108  		var v models.N2InformationTransferError
   109  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   110  		if err != nil {
   111  			apiError.ErrorStatus = err.Error()
   112  			return localVarReturnValue, localVarHttpResponse, apiError
   113  		}
   114  		apiError.ErrorModel = v
   115  		return localVarReturnValue, localVarHttpResponse, apiError
   116  	case 404:
   117  		var v models.N2InformationTransferError
   118  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   119  		if err != nil {
   120  			apiError.ErrorStatus = err.Error()
   121  			return localVarReturnValue, localVarHttpResponse, apiError
   122  		}
   123  		apiError.ErrorModel = v
   124  		return localVarReturnValue, localVarHttpResponse, apiError
   125  	case 411:
   126  		var v models.ProblemDetails
   127  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   128  		if err != nil {
   129  			apiError.ErrorStatus = err.Error()
   130  			return localVarReturnValue, localVarHttpResponse, apiError
   131  		}
   132  		apiError.ErrorModel = v
   133  		return localVarReturnValue, localVarHttpResponse, apiError
   134  	case 413:
   135  		var v models.ProblemDetails
   136  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   137  		if err != nil {
   138  			apiError.ErrorStatus = err.Error()
   139  			return localVarReturnValue, localVarHttpResponse, apiError
   140  		}
   141  		apiError.ErrorModel = v
   142  		return localVarReturnValue, localVarHttpResponse, apiError
   143  	case 415:
   144  		var v models.ProblemDetails
   145  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   146  		if err != nil {
   147  			apiError.ErrorStatus = err.Error()
   148  			return localVarReturnValue, localVarHttpResponse, apiError
   149  		}
   150  		apiError.ErrorModel = v
   151  		return localVarReturnValue, localVarHttpResponse, apiError
   152  	case 429:
   153  		var v models.ProblemDetails
   154  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   155  		if err != nil {
   156  			apiError.ErrorStatus = err.Error()
   157  			return localVarReturnValue, localVarHttpResponse, apiError
   158  		}
   159  		apiError.ErrorModel = v
   160  		return localVarReturnValue, localVarHttpResponse, apiError
   161  	case 500:
   162  		var v models.N2InformationTransferError
   163  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   164  		if err != nil {
   165  			apiError.ErrorStatus = err.Error()
   166  			return localVarReturnValue, localVarHttpResponse, apiError
   167  		}
   168  		apiError.ErrorModel = v
   169  		return localVarReturnValue, localVarHttpResponse, apiError
   170  	case 503:
   171  		var v models.N2InformationTransferError
   172  		err = openapi.Deserialize(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   173  		if err != nil {
   174  			apiError.ErrorStatus = err.Error()
   175  			return localVarReturnValue, localVarHttpResponse, apiError
   176  		}
   177  		apiError.ErrorModel = v
   178  		return localVarReturnValue, localVarHttpResponse, apiError
   179  	default:
   180  		return localVarReturnValue, localVarHttpResponse, openapi.ReportError("%d is not a valid status code in NonUeN2MessageTransfer", localVarHttpResponse.StatusCode)
   181  	}
   182  }