github.com/free5gc/openapi@v1.0.8/Nudm_UEAuthentication/api_generate_auth_data.go (about)

     1  /*
     2   * NudmUEAU
     3   *
     4   * UDM UE Authentication Service
     5   *
     6   * API version: 1.0.0
     7   * Generated by: OpenAPI Generator (https://openapi-generator.tech)
     8   */
     9  
    10  package Nudm_UEAuthentication
    11  
    12  import (
    13  	"context"
    14  	"fmt"
    15  	"io/ioutil"
    16  	"net/http"
    17  	"net/url"
    18  	"strings"
    19  
    20  	"github.com/free5gc/openapi"
    21  	"github.com/free5gc/openapi/models"
    22  )
    23  
    24  // Linger please
    25  var (
    26  	_ context.Context
    27  )
    28  
    29  type GenerateAuthDataApiService service
    30  
    31  /*
    32  GenerateAuthDataApiService Generate authentication data for the UE
    33   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34   * @param supiOrSuci SUPI or SUCI of the user
    35   * @param authenticationInfoRequest
    36  @return models.AuthenticationInfoResult
    37  */
    38  
    39  func (a *GenerateAuthDataApiService) GenerateAuthData(ctx context.Context, supiOrSuci string, authenticationInfoRequest models.AuthenticationInfoRequest) (models.AuthenticationInfoResult, *http.Response, error) {
    40  	var (
    41  		localVarHTTPMethod   = strings.ToUpper("Post")
    42  		localVarPostBody     interface{}
    43  		localVarFormFileName string
    44  		localVarFileName     string
    45  		localVarFileBytes    []byte
    46  		localVarReturnValue  models.AuthenticationInfoResult
    47  	)
    48  
    49  	// create path and map variables
    50  	localVarPath := a.client.cfg.BasePath() + "/{supiOrSuci}/security-information/generate-auth-data"
    51  	localVarPath = strings.Replace(localVarPath, "{"+"supiOrSuci"+"}", fmt.Sprintf("%v", supiOrSuci), -1)
    52  
    53  	localVarHeaderParams := make(map[string]string)
    54  	localVarQueryParams := url.Values{}
    55  	localVarFormParams := url.Values{}
    56  
    57  	localVarHTTPContentTypes := []string{"application/json"}
    58  
    59  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
    60  
    61  	// to determine the Accept header
    62  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
    63  
    64  	// set Accept header
    65  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
    66  	if localVarHTTPHeaderAccept != "" {
    67  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
    68  	}
    69  
    70  	// body params
    71  	localVarPostBody = &authenticationInfoRequest
    72  
    73  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    74  	if err != nil {
    75  		return localVarReturnValue, nil, err
    76  	}
    77  
    78  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    79  	if err != nil || localVarHTTPResponse == nil {
    80  		return localVarReturnValue, localVarHTTPResponse, err
    81  	}
    82  
    83  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
    84  	localVarHTTPResponse.Body.Close()
    85  	if err != nil {
    86  		return localVarReturnValue, localVarHTTPResponse, err
    87  	}
    88  
    89  	apiError := openapi.GenericOpenAPIError{
    90  		RawBody:     localVarBody,
    91  		ErrorStatus: localVarHTTPResponse.Status,
    92  	}
    93  
    94  	switch localVarHTTPResponse.StatusCode {
    95  	case 200:
    96  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    97  		if err != nil {
    98  			apiError.ErrorStatus = err.Error()
    99  		}
   100  		return localVarReturnValue, localVarHTTPResponse, nil
   101  	case 400:
   102  		var v models.ProblemDetails
   103  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   104  		if err != nil {
   105  			apiError.ErrorStatus = err.Error()
   106  			return localVarReturnValue, localVarHTTPResponse, apiError
   107  		}
   108  		apiError.ErrorModel = v
   109  		return localVarReturnValue, localVarHTTPResponse, apiError
   110  	case 403:
   111  		var v models.ProblemDetails
   112  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   113  		if err != nil {
   114  			apiError.ErrorStatus = err.Error()
   115  			return localVarReturnValue, localVarHTTPResponse, apiError
   116  		}
   117  		apiError.ErrorModel = v
   118  		return localVarReturnValue, localVarHTTPResponse, apiError
   119  	case 404:
   120  		var v models.ProblemDetails
   121  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   122  		if err != nil {
   123  			apiError.ErrorStatus = err.Error()
   124  			return localVarReturnValue, localVarHTTPResponse, apiError
   125  		}
   126  		apiError.ErrorModel = v
   127  		return localVarReturnValue, localVarHTTPResponse, apiError
   128  	case 500:
   129  		var v models.ProblemDetails
   130  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   131  		if err != nil {
   132  			apiError.ErrorStatus = err.Error()
   133  			return localVarReturnValue, localVarHTTPResponse, apiError
   134  		}
   135  		apiError.ErrorModel = v
   136  		return localVarReturnValue, localVarHTTPResponse, apiError
   137  	case 501:
   138  		var v models.ProblemDetails
   139  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   140  		if err != nil {
   141  			apiError.ErrorStatus = err.Error()
   142  			return localVarReturnValue, localVarHTTPResponse, apiError
   143  		}
   144  		apiError.ErrorModel = v
   145  		return localVarReturnValue, localVarHTTPResponse, apiError
   146  	case 503:
   147  		var v models.ProblemDetails
   148  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   149  		if err != nil {
   150  			apiError.ErrorStatus = err.Error()
   151  			return localVarReturnValue, localVarHTTPResponse, apiError
   152  		}
   153  		apiError.ErrorModel = v
   154  		return localVarReturnValue, localVarHTTPResponse, apiError
   155  	default:
   156  		return localVarReturnValue, localVarHTTPResponse, nil
   157  	}
   158  }