github.com/free5gc/openapi@v1.0.8/Nudr_DataRepository/api_amf3_gpp_access_registration_document.go (about)

     1  /*
     2   * Nudr_DataRepository API OpenAPI file
     3   *
     4   * Unified Data Repository Service
     5   *
     6   * API version: 1.0.0
     7   * Generated by: OpenAPI Generator (https://openapi-generator.tech)
     8   */
     9  
    10  package Nudr_DataRepository
    11  
    12  import (
    13  	"context"
    14  	"fmt"
    15  	"io/ioutil"
    16  	"net/http"
    17  	"net/url"
    18  	"strings"
    19  
    20  	"github.com/antihax/optional"
    21  
    22  	"github.com/free5gc/openapi"
    23  	"github.com/free5gc/openapi/models"
    24  )
    25  
    26  // Linger please
    27  var (
    28  	_ context.Context
    29  )
    30  
    31  type AMF3GPPAccessRegistrationDocumentApiService service
    32  
    33  /*
    34  AMF3GPPAccessRegistrationDocumentApiService To modify the AMF context data of a UE using 3gpp access in the UDR
    35   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    36   * @param ueId UE id
    37   * @param patchItem
    38  */
    39  
    40  func (a *AMF3GPPAccessRegistrationDocumentApiService) AmfContext3gpp(ctx context.Context, ueId string, patchItem []models.PatchItem) (*http.Response, error) {
    41  	var (
    42  		localVarHTTPMethod   = strings.ToUpper("Patch")
    43  		localVarPostBody     interface{}
    44  		localVarFormFileName string
    45  		localVarFileName     string
    46  		localVarFileBytes    []byte
    47  	)
    48  
    49  	// create path and map variables
    50  	localVarPath := a.client.cfg.BasePath() + "/subscription-data/{ueId}/context-data/amf-3gpp-access"
    51  	localVarPath = strings.Replace(localVarPath, "{"+"ueId"+"}", fmt.Sprintf("%v", ueId), -1)
    52  
    53  	localVarHeaderParams := make(map[string]string)
    54  	localVarQueryParams := url.Values{}
    55  	localVarFormParams := url.Values{}
    56  
    57  	localVarHTTPContentTypes := []string{"application/json-patch+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/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 = &patchItem
    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 nil, err
    76  	}
    77  
    78  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    79  	if err != nil || localVarHTTPResponse == nil {
    80  		return localVarHTTPResponse, err
    81  	}
    82  
    83  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
    84  	localVarHTTPResponse.Body.Close()
    85  	if err != nil {
    86  		return localVarHTTPResponse, err
    87  	}
    88  
    89  	apiError := openapi.GenericOpenAPIError{
    90  		RawBody:     localVarBody,
    91  		ErrorStatus: localVarHTTPResponse.Status,
    92  	}
    93  
    94  	switch localVarHTTPResponse.StatusCode {
    95  	case 204:
    96  		return localVarHTTPResponse, nil
    97  	case 403:
    98  		var v models.ProblemDetails
    99  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   100  		if err != nil {
   101  			apiError.ErrorStatus = err.Error()
   102  			return localVarHTTPResponse, apiError
   103  		}
   104  		apiError.ErrorModel = v
   105  		return localVarHTTPResponse, apiError
   106  	default:
   107  		var v models.ProblemDetails
   108  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   109  		if err != nil {
   110  			apiError.ErrorStatus = err.Error()
   111  			return localVarHTTPResponse, apiError
   112  		}
   113  		apiError.ErrorModel = v
   114  		return localVarHTTPResponse, apiError
   115  	}
   116  }
   117  
   118  /*
   119  AMF3GPPAccessRegistrationDocumentApiService To store the AMF context data of a UE using 3gpp access in the UDR
   120   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   121   * @param ueId UE id
   122   * @param optional nil or *CreateAmfContext3gppParamOpts - Optional Parameters:
   123   * @param "Amf3GppAccessRegistration" (optional.Interface of Amf3GppAccessRegistration) -
   124  */
   125  
   126  type CreateAmfContext3gppParamOpts struct {
   127  	Amf3GppAccessRegistration optional.Interface
   128  }
   129  
   130  func (a *AMF3GPPAccessRegistrationDocumentApiService) CreateAmfContext3gpp(ctx context.Context, ueId string, localVarOptionals *CreateAmfContext3gppParamOpts) (*http.Response, error) {
   131  	var (
   132  		localVarHTTPMethod   = strings.ToUpper("Put")
   133  		localVarPostBody     interface{}
   134  		localVarFormFileName string
   135  		localVarFileName     string
   136  		localVarFileBytes    []byte
   137  	)
   138  
   139  	// create path and map variables
   140  	localVarPath := a.client.cfg.BasePath() + "/subscription-data/{ueId}/context-data/amf-3gpp-access"
   141  	localVarPath = strings.Replace(localVarPath, "{"+"ueId"+"}", fmt.Sprintf("%v", ueId), -1)
   142  
   143  	localVarHeaderParams := make(map[string]string)
   144  	localVarQueryParams := url.Values{}
   145  	localVarFormParams := url.Values{}
   146  
   147  	localVarHTTPContentTypes := []string{"application/json"}
   148  
   149  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   150  
   151  	// to determine the Accept header
   152  	localVarHTTPHeaderAccepts := []string{"application/problem+json"}
   153  
   154  	// set Accept header
   155  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   156  	if localVarHTTPHeaderAccept != "" {
   157  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   158  	}
   159  
   160  	// body params
   161  	if localVarOptionals != nil && localVarOptionals.Amf3GppAccessRegistration.IsSet() {
   162  		localVarOptionalAmf3GppAccessRegistration, localVarOptionalAmf3GppAccessRegistrationok := localVarOptionals.Amf3GppAccessRegistration.Value().(models.Amf3GppAccessRegistration)
   163  		if !localVarOptionalAmf3GppAccessRegistrationok {
   164  			return nil, openapi.ReportError("amf3GppAccessRegistration should be Amf3GppAccessRegistration")
   165  		}
   166  		localVarPostBody = &localVarOptionalAmf3GppAccessRegistration
   167  	}
   168  
   169  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   170  	if err != nil {
   171  		return nil, err
   172  	}
   173  
   174  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   175  	if err != nil || localVarHTTPResponse == nil {
   176  		return localVarHTTPResponse, err
   177  	}
   178  
   179  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   180  	localVarHTTPResponse.Body.Close()
   181  	if err != nil {
   182  		return localVarHTTPResponse, err
   183  	}
   184  
   185  	apiError := openapi.GenericOpenAPIError{
   186  		RawBody:     localVarBody,
   187  		ErrorStatus: localVarHTTPResponse.Status,
   188  	}
   189  
   190  	switch localVarHTTPResponse.StatusCode {
   191  	case 204:
   192  		return localVarHTTPResponse, nil
   193  	default:
   194  		var v models.ProblemDetails
   195  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   196  		if err != nil {
   197  			apiError.ErrorStatus = err.Error()
   198  			return localVarHTTPResponse, apiError
   199  		}
   200  		apiError.ErrorModel = v
   201  		return localVarHTTPResponse, apiError
   202  	}
   203  }
   204  
   205  /*
   206  AMF3GPPAccessRegistrationDocumentApiService Retrieves the AMF context data of a UE using 3gpp access
   207   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   208   * @param ueId UE id
   209   * @param optional nil or *QueryAmfContext3gppParamOpts - Optional Parameters:
   210   * @param "Fields" (optional.Interface of []string) -  attributes to be retrieved
   211   * @param "SupportedFeatures" (optional.String) -  Supported Features
   212  @return models.Amf3GppAccessRegistration
   213  */
   214  
   215  type QueryAmfContext3gppParamOpts struct {
   216  	Fields            optional.Interface
   217  	SupportedFeatures optional.String
   218  }
   219  
   220  func (a *AMF3GPPAccessRegistrationDocumentApiService) QueryAmfContext3gpp(ctx context.Context, ueId string, localVarOptionals *QueryAmfContext3gppParamOpts) (models.Amf3GppAccessRegistration, *http.Response, error) {
   221  	var (
   222  		localVarHTTPMethod   = strings.ToUpper("Get")
   223  		localVarPostBody     interface{}
   224  		localVarFormFileName string
   225  		localVarFileName     string
   226  		localVarFileBytes    []byte
   227  		localVarReturnValue  models.Amf3GppAccessRegistration
   228  	)
   229  
   230  	// create path and map variables
   231  	localVarPath := a.client.cfg.BasePath() + "/subscription-data/{ueId}/context-data/amf-3gpp-access"
   232  	localVarPath = strings.Replace(localVarPath, "{"+"ueId"+"}", fmt.Sprintf("%v", ueId), -1)
   233  
   234  	localVarHeaderParams := make(map[string]string)
   235  	localVarQueryParams := url.Values{}
   236  	localVarFormParams := url.Values{}
   237  
   238  	if localVarOptionals != nil && localVarOptionals.Fields.IsSet() {
   239  		localVarQueryParams.Add("fields", openapi.ParameterToString(localVarOptionals.Fields.Value(), "csv"))
   240  	}
   241  	if localVarOptionals != nil && localVarOptionals.SupportedFeatures.IsSet() && localVarOptionals.SupportedFeatures.Value() != "" {
   242  		localVarQueryParams.Add("supported-features", openapi.ParameterToString(localVarOptionals.SupportedFeatures.Value(), ""))
   243  	}
   244  
   245  	localVarHTTPContentTypes := []string{"application/json"}
   246  
   247  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   248  
   249  	// to determine the Accept header
   250  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
   251  
   252  	// set Accept header
   253  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   254  	if localVarHTTPHeaderAccept != "" {
   255  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   256  	}
   257  
   258  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   259  	if err != nil {
   260  		return localVarReturnValue, nil, err
   261  	}
   262  
   263  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   264  	if err != nil || localVarHTTPResponse == nil {
   265  		return localVarReturnValue, localVarHTTPResponse, err
   266  	}
   267  
   268  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   269  	localVarHTTPResponse.Body.Close()
   270  	if err != nil {
   271  		return localVarReturnValue, localVarHTTPResponse, err
   272  	}
   273  
   274  	apiError := openapi.GenericOpenAPIError{
   275  		RawBody:     localVarBody,
   276  		ErrorStatus: localVarHTTPResponse.Status,
   277  	}
   278  
   279  	switch localVarHTTPResponse.StatusCode {
   280  	case 200:
   281  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   282  		if err != nil {
   283  			apiError.ErrorStatus = err.Error()
   284  		}
   285  		return localVarReturnValue, localVarHTTPResponse, nil
   286  	default:
   287  		var v models.ProblemDetails
   288  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   289  		if err != nil {
   290  			apiError.ErrorStatus = err.Error()
   291  			return localVarReturnValue, localVarHTTPResponse, apiError
   292  		}
   293  		apiError.ErrorModel = v
   294  		return localVarReturnValue, localVarHTTPResponse, apiError
   295  	}
   296  }