github.com/free5gc/openapi@v1.0.8/Nudm_SubscriberDataManagement/api_subscription_modification.go (about)

     1  /*
     2   * Nudm_SDM
     3   *
     4   * Nudm Subscriber Data Management Service
     5   *
     6   * API version: 2.0.0
     7   * Generated by: OpenAPI Generator (https://openapi-generator.tech)
     8   */
     9  
    10  package Nudm_SubscriberDataManagement
    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 SubscriptionModificationApiService service
    30  
    31  /*
    32  SubscriptionModificationApiService modify the subscription
    33   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34   * @param supi SUPI of the user
    35   * @param subscriptionId Id of the SDM Subscription
    36   * @param sdmSubsModification
    37  @return models.SdmSubscription
    38  */
    39  
    40  func (a *SubscriptionModificationApiService) Modify(ctx context.Context, supi string, subscriptionId string, sdmSubsModification models.SdmSubsModification) (models.SdmSubscription, *http.Response, error) {
    41  	var (
    42  		localVarHTTPMethod   = strings.ToUpper("Patch")
    43  		localVarPostBody     interface{}
    44  		localVarFormFileName string
    45  		localVarFileName     string
    46  		localVarFileBytes    []byte
    47  		localVarReturnValue  models.SdmSubscription
    48  	)
    49  
    50  	// create path and map variables
    51  	localVarPath := a.client.cfg.BasePath() + "/{supi}/sdm-subscriptions/{subscriptionId}"
    52  	localVarPath = strings.Replace(localVarPath, "{"+"supi"+"}", fmt.Sprintf("%v", supi), -1)
    53  	localVarPath = strings.Replace(localVarPath, "{"+"subscriptionId"+"}", fmt.Sprintf("%v", subscriptionId), -1)
    54  
    55  	localVarHeaderParams := make(map[string]string)
    56  	localVarQueryParams := url.Values{}
    57  	localVarFormParams := url.Values{}
    58  
    59  	localVarHTTPContentTypes := []string{"application/merge-patch+json"}
    60  
    61  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
    62  
    63  	// to determine the Accept header
    64  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
    65  
    66  	// set Accept header
    67  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
    68  	if localVarHTTPHeaderAccept != "" {
    69  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
    70  	}
    71  
    72  	// body params
    73  	localVarPostBody = &sdmSubsModification
    74  
    75  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    76  	if err != nil {
    77  		return localVarReturnValue, nil, err
    78  	}
    79  
    80  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    81  	if err != nil || localVarHTTPResponse == nil {
    82  		return localVarReturnValue, localVarHTTPResponse, err
    83  	}
    84  
    85  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
    86  	localVarHTTPResponse.Body.Close()
    87  	if err != nil {
    88  		return localVarReturnValue, localVarHTTPResponse, err
    89  	}
    90  
    91  	apiError := openapi.GenericOpenAPIError{
    92  		RawBody:     localVarBody,
    93  		ErrorStatus: localVarHTTPResponse.Status,
    94  	}
    95  
    96  	switch localVarHTTPResponse.StatusCode {
    97  	case 200:
    98  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    99  		if err != nil {
   100  			apiError.ErrorStatus = err.Error()
   101  		}
   102  		return localVarReturnValue, localVarHTTPResponse, nil
   103  	case 400:
   104  		var v models.ProblemDetails
   105  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   106  		if err != nil {
   107  			apiError.ErrorStatus = err.Error()
   108  			return localVarReturnValue, localVarHTTPResponse, apiError
   109  		}
   110  		apiError.ErrorModel = v
   111  		return localVarReturnValue, localVarHTTPResponse, apiError
   112  	case 404:
   113  		var v models.ProblemDetails
   114  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   115  		if err != nil {
   116  			apiError.ErrorStatus = err.Error()
   117  			return localVarReturnValue, localVarHTTPResponse, apiError
   118  		}
   119  		apiError.ErrorModel = v
   120  		return localVarReturnValue, localVarHTTPResponse, apiError
   121  	case 500:
   122  		var v models.ProblemDetails
   123  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   124  		if err != nil {
   125  			apiError.ErrorStatus = err.Error()
   126  			return localVarReturnValue, localVarHTTPResponse, apiError
   127  		}
   128  		apiError.ErrorModel = v
   129  		return localVarReturnValue, localVarHTTPResponse, apiError
   130  	case 503:
   131  		var v models.ProblemDetails
   132  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   133  		if err != nil {
   134  			apiError.ErrorStatus = err.Error()
   135  			return localVarReturnValue, localVarHTTPResponse, apiError
   136  		}
   137  		apiError.ErrorModel = v
   138  		return localVarReturnValue, localVarHTTPResponse, apiError
   139  	default:
   140  		return localVarReturnValue, localVarHTTPResponse, nil
   141  	}
   142  }
   143  
   144  /*
   145  SubscriptionModificationApiService modify the subscription
   146   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   147   * @param subscriptionId Id of the SDM Subscription
   148   * @param sdmSubsModification
   149  @return models.SdmSubscription
   150  */
   151  
   152  func (a *SubscriptionModificationApiService) ModifyForSharedData(ctx context.Context, subscriptionId string, sdmSubsModification models.SdmSubsModification) (models.SdmSubscription, *http.Response, error) {
   153  	var (
   154  		localVarHTTPMethod   = strings.ToUpper("Patch")
   155  		localVarPostBody     interface{}
   156  		localVarFormFileName string
   157  		localVarFileName     string
   158  		localVarFileBytes    []byte
   159  		localVarReturnValue  models.SdmSubscription
   160  	)
   161  
   162  	// create path and map variables
   163  	localVarPath := a.client.cfg.BasePath() + "/shared-data-subscriptions/{subscriptionId}"
   164  	localVarPath = strings.Replace(localVarPath, "{"+"subscriptionId"+"}", fmt.Sprintf("%v", subscriptionId), -1)
   165  
   166  	localVarHeaderParams := make(map[string]string)
   167  	localVarQueryParams := url.Values{}
   168  	localVarFormParams := url.Values{}
   169  
   170  	localVarHTTPContentTypes := []string{"application/merge-patch+json"}
   171  
   172  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   173  
   174  	// to determine the Accept header
   175  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
   176  
   177  	// set Accept header
   178  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   179  	if localVarHTTPHeaderAccept != "" {
   180  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   181  	}
   182  
   183  	// body params
   184  	localVarPostBody = &sdmSubsModification
   185  
   186  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   187  	if err != nil {
   188  		return localVarReturnValue, nil, err
   189  	}
   190  
   191  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   192  	if err != nil || localVarHTTPResponse == nil {
   193  		return localVarReturnValue, localVarHTTPResponse, err
   194  	}
   195  
   196  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   197  	localVarHTTPResponse.Body.Close()
   198  	if err != nil {
   199  		return localVarReturnValue, localVarHTTPResponse, err
   200  	}
   201  
   202  	apiError := openapi.GenericOpenAPIError{
   203  		RawBody:     localVarBody,
   204  		ErrorStatus: localVarHTTPResponse.Status,
   205  	}
   206  
   207  	switch localVarHTTPResponse.StatusCode {
   208  	case 200:
   209  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   210  		if err != nil {
   211  			apiError.ErrorStatus = err.Error()
   212  		}
   213  		return localVarReturnValue, localVarHTTPResponse, nil
   214  	case 400:
   215  		var v models.ProblemDetails
   216  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   217  		if err != nil {
   218  			apiError.ErrorStatus = err.Error()
   219  			return localVarReturnValue, localVarHTTPResponse, apiError
   220  		}
   221  		apiError.ErrorModel = v
   222  		return localVarReturnValue, localVarHTTPResponse, apiError
   223  	case 404:
   224  		var v models.ProblemDetails
   225  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   226  		if err != nil {
   227  			apiError.ErrorStatus = err.Error()
   228  			return localVarReturnValue, localVarHTTPResponse, apiError
   229  		}
   230  		apiError.ErrorModel = v
   231  		return localVarReturnValue, localVarHTTPResponse, apiError
   232  	case 500:
   233  		var v models.ProblemDetails
   234  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   235  		if err != nil {
   236  			apiError.ErrorStatus = err.Error()
   237  			return localVarReturnValue, localVarHTTPResponse, apiError
   238  		}
   239  		apiError.ErrorModel = v
   240  		return localVarReturnValue, localVarHTTPResponse, apiError
   241  	case 503:
   242  		var v models.ProblemDetails
   243  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   244  		if err != nil {
   245  			apiError.ErrorStatus = err.Error()
   246  			return localVarReturnValue, localVarHTTPResponse, apiError
   247  		}
   248  		apiError.ErrorModel = v
   249  		return localVarReturnValue, localVarHTTPResponse, apiError
   250  	default:
   251  		return localVarReturnValue, localVarHTTPResponse, nil
   252  	}
   253  }