github.com/free5gc/openapi@v1.0.8/Npcf_BDTPolicyControl/api_individual_bdt_policy_document.go (about)

     1  /*
     2   * Npcf_BDTPolicyControl Service API
     3   *
     4   * The Npcf_BDTPolicyControl Service is used by an NF service consumer to retrieve background data transfer policies from the PCF and to update the PCF with the background data transfer policy selected by the NF service consumer.
     5   *
     6   * API version: 1.0.0
     7   * Generated by: OpenAPI Generator (https://openapi-generator.tech)
     8   */
     9  
    10  package Npcf_BDTPolicyControl
    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 IndividualBDTPolicyDocumentApiService service
    30  
    31  /*
    32   IndividualBDTPolicyDocumentApiService Read an Individual BDT policy
    33    * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34    * @param bdtPolicyId String identifying the individual BDT policy resource in the PCF.
    35   @return models.BdtPolicy
    36  */
    37  
    38  func (a *IndividualBDTPolicyDocumentApiService) GetBDTPolicy(ctx context.Context, bdtPolicyId string) (models.BdtPolicy, *http.Response, error) {
    39  	var (
    40  		localVarHTTPMethod   = strings.ToUpper("Get")
    41  		localVarPostBody     interface{}
    42  		localVarFormFileName string
    43  		localVarFileName     string
    44  		localVarFileBytes    []byte
    45  		localVarReturnValue  models.BdtPolicy
    46  	)
    47  
    48  	// create path and map variables
    49  	localVarPath := a.client.cfg.BasePath() + "/bdtpolicies/{bdtPolicyId}"
    50  	localVarPath = strings.Replace(localVarPath, "{"+"bdtPolicyId"+"}", fmt.Sprintf("%v", bdtPolicyId), -1)
    51  
    52  	localVarHeaderParams := make(map[string]string)
    53  	localVarQueryParams := url.Values{}
    54  	localVarFormParams := url.Values{}
    55  
    56  	localVarHTTPContentTypes := []string{"application/json"}
    57  
    58  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
    59  
    60  	// to determine the Accept header
    61  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
    62  
    63  	// set Accept header
    64  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
    65  	if localVarHTTPHeaderAccept != "" {
    66  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
    67  	}
    68  
    69  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    70  	if err != nil {
    71  		return localVarReturnValue, nil, err
    72  	}
    73  
    74  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    75  	if err != nil || localVarHTTPResponse == nil {
    76  		return localVarReturnValue, localVarHTTPResponse, err
    77  	}
    78  
    79  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
    80  	localVarHTTPResponse.Body.Close()
    81  	if err != nil {
    82  		return localVarReturnValue, localVarHTTPResponse, err
    83  	}
    84  
    85  	apiError := openapi.GenericOpenAPIError{
    86  		RawBody:     localVarBody,
    87  		ErrorStatus: localVarHTTPResponse.Status,
    88  	}
    89  
    90  	switch localVarHTTPResponse.StatusCode {
    91  	case 200:
    92  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    93  		if err != nil {
    94  			apiError.ErrorStatus = err.Error()
    95  		}
    96  		return localVarReturnValue, localVarHTTPResponse, nil
    97  	case 400:
    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 localVarReturnValue, localVarHTTPResponse, apiError
   103  		}
   104  		apiError.ErrorModel = v
   105  		return localVarReturnValue, localVarHTTPResponse, apiError
   106  	case 401:
   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 localVarReturnValue, localVarHTTPResponse, apiError
   112  		}
   113  		apiError.ErrorModel = v
   114  		return localVarReturnValue, localVarHTTPResponse, apiError
   115  	case 403:
   116  		var v models.ProblemDetails
   117  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   118  		if err != nil {
   119  			apiError.ErrorStatus = err.Error()
   120  			return localVarReturnValue, localVarHTTPResponse, apiError
   121  		}
   122  		apiError.ErrorModel = v
   123  		return localVarReturnValue, localVarHTTPResponse, apiError
   124  	case 404:
   125  		var v models.ProblemDetails
   126  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   127  		if err != nil {
   128  			apiError.ErrorStatus = err.Error()
   129  			return localVarReturnValue, localVarHTTPResponse, apiError
   130  		}
   131  		apiError.ErrorModel = v
   132  		return localVarReturnValue, localVarHTTPResponse, apiError
   133  	case 406:
   134  		return localVarReturnValue, localVarHTTPResponse, nil
   135  	case 429:
   136  		var v models.ProblemDetails
   137  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   138  		if err != nil {
   139  			apiError.ErrorStatus = err.Error()
   140  			return localVarReturnValue, localVarHTTPResponse, apiError
   141  		}
   142  		apiError.ErrorModel = v
   143  		return localVarReturnValue, localVarHTTPResponse, apiError
   144  	case 500:
   145  		var v models.ProblemDetails
   146  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   147  		if err != nil {
   148  			apiError.ErrorStatus = err.Error()
   149  			return localVarReturnValue, localVarHTTPResponse, apiError
   150  		}
   151  		apiError.ErrorModel = v
   152  		return localVarReturnValue, localVarHTTPResponse, apiError
   153  	case 503:
   154  		var v models.ProblemDetails
   155  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   156  		if err != nil {
   157  			apiError.ErrorStatus = err.Error()
   158  			return localVarReturnValue, localVarHTTPResponse, apiError
   159  		}
   160  		apiError.ErrorModel = v
   161  		return localVarReturnValue, localVarHTTPResponse, apiError
   162  	default:
   163  		return localVarReturnValue, localVarHTTPResponse, nil
   164  	}
   165  }
   166  
   167  /*
   168   IndividualBDTPolicyDocumentApiService Update an Individual BDT policy
   169    * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   170    * @param bdtPolicyId String identifying the individual BDT policy resource in the PCF.
   171    * @param bdtPolicyDataPatch Contains modification instruction to be performed on the BdtPolicy data structure to select a transfer policy.
   172   @return models.BdtPolicy
   173  */
   174  
   175  func (a *IndividualBDTPolicyDocumentApiService) UpdateBDTPolicy(ctx context.Context, bdtPolicyId string, bdtPolicyDataPatch models.BdtPolicyDataPatch) (models.BdtPolicy, *http.Response, error) {
   176  	var (
   177  		localVarHTTPMethod   = strings.ToUpper("Patch")
   178  		localVarPostBody     interface{}
   179  		localVarFormFileName string
   180  		localVarFileName     string
   181  		localVarFileBytes    []byte
   182  		localVarReturnValue  models.BdtPolicy
   183  	)
   184  
   185  	// create path and map variables
   186  	localVarPath := a.client.cfg.BasePath() + "/bdtpolicies/{bdtPolicyId}"
   187  	localVarPath = strings.Replace(localVarPath, "{"+"bdtPolicyId"+"}", fmt.Sprintf("%v", bdtPolicyId), -1)
   188  
   189  	localVarHeaderParams := make(map[string]string)
   190  	localVarQueryParams := url.Values{}
   191  	localVarFormParams := url.Values{}
   192  
   193  	localVarHTTPContentTypes := []string{"application/merge-patch+json"}
   194  
   195  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   196  
   197  	// to determine the Accept header
   198  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
   199  
   200  	// set Accept header
   201  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   202  	if localVarHTTPHeaderAccept != "" {
   203  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   204  	}
   205  
   206  	// body params
   207  	localVarPostBody = &bdtPolicyDataPatch
   208  
   209  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   210  	if err != nil {
   211  		return localVarReturnValue, nil, err
   212  	}
   213  
   214  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   215  	if err != nil || localVarHTTPResponse == nil {
   216  		return localVarReturnValue, localVarHTTPResponse, err
   217  	}
   218  
   219  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   220  	localVarHTTPResponse.Body.Close()
   221  	if err != nil {
   222  		return localVarReturnValue, localVarHTTPResponse, err
   223  	}
   224  
   225  	apiError := openapi.GenericOpenAPIError{
   226  		RawBody:     localVarBody,
   227  		ErrorStatus: localVarHTTPResponse.Status,
   228  	}
   229  
   230  	switch localVarHTTPResponse.StatusCode {
   231  	case 200:
   232  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   233  		if err != nil {
   234  			apiError.ErrorStatus = err.Error()
   235  		}
   236  		return localVarReturnValue, localVarHTTPResponse, nil
   237  	case 204:
   238  		return localVarReturnValue, localVarHTTPResponse, nil
   239  	case 400:
   240  		var v models.ProblemDetails
   241  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   242  		if err != nil {
   243  			apiError.ErrorStatus = err.Error()
   244  			return localVarReturnValue, localVarHTTPResponse, apiError
   245  		}
   246  		apiError.ErrorModel = v
   247  		return localVarReturnValue, localVarHTTPResponse, apiError
   248  	case 401:
   249  		var v models.ProblemDetails
   250  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   251  		if err != nil {
   252  			apiError.ErrorStatus = err.Error()
   253  			return localVarReturnValue, localVarHTTPResponse, apiError
   254  		}
   255  		apiError.ErrorModel = v
   256  		return localVarReturnValue, localVarHTTPResponse, apiError
   257  	case 403:
   258  		var v models.ProblemDetails
   259  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   260  		if err != nil {
   261  			apiError.ErrorStatus = err.Error()
   262  			return localVarReturnValue, localVarHTTPResponse, apiError
   263  		}
   264  		apiError.ErrorModel = v
   265  		return localVarReturnValue, localVarHTTPResponse, apiError
   266  	case 404:
   267  		var v models.ProblemDetails
   268  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   269  		if err != nil {
   270  			apiError.ErrorStatus = err.Error()
   271  			return localVarReturnValue, localVarHTTPResponse, apiError
   272  		}
   273  		apiError.ErrorModel = v
   274  		return localVarReturnValue, localVarHTTPResponse, apiError
   275  	case 411:
   276  		var v models.ProblemDetails
   277  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   278  		if err != nil {
   279  			apiError.ErrorStatus = err.Error()
   280  			return localVarReturnValue, localVarHTTPResponse, apiError
   281  		}
   282  		apiError.ErrorModel = v
   283  		return localVarReturnValue, localVarHTTPResponse, apiError
   284  	case 413:
   285  		var v models.ProblemDetails
   286  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   287  		if err != nil {
   288  			apiError.ErrorStatus = err.Error()
   289  			return localVarReturnValue, localVarHTTPResponse, apiError
   290  		}
   291  		apiError.ErrorModel = v
   292  		return localVarReturnValue, localVarHTTPResponse, apiError
   293  	case 415:
   294  		var v models.ProblemDetails
   295  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   296  		if err != nil {
   297  			apiError.ErrorStatus = err.Error()
   298  			return localVarReturnValue, localVarHTTPResponse, apiError
   299  		}
   300  		apiError.ErrorModel = v
   301  		return localVarReturnValue, localVarHTTPResponse, apiError
   302  	case 429:
   303  		var v models.ProblemDetails
   304  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   305  		if err != nil {
   306  			apiError.ErrorStatus = err.Error()
   307  			return localVarReturnValue, localVarHTTPResponse, apiError
   308  		}
   309  		apiError.ErrorModel = v
   310  		return localVarReturnValue, localVarHTTPResponse, apiError
   311  	case 500:
   312  		var v models.ProblemDetails
   313  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   314  		if err != nil {
   315  			apiError.ErrorStatus = err.Error()
   316  			return localVarReturnValue, localVarHTTPResponse, apiError
   317  		}
   318  		apiError.ErrorModel = v
   319  		return localVarReturnValue, localVarHTTPResponse, apiError
   320  	case 503:
   321  		var v models.ProblemDetails
   322  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   323  		if err != nil {
   324  			apiError.ErrorStatus = err.Error()
   325  			return localVarReturnValue, localVarHTTPResponse, apiError
   326  		}
   327  		apiError.ErrorModel = v
   328  		return localVarReturnValue, localVarHTTPResponse, apiError
   329  	default:
   330  		return localVarReturnValue, localVarHTTPResponse, nil
   331  	}
   332  }