github.com/free5gc/openapi@v1.0.8/Npcf_SMPolicyControl/api_dafult_notify_callback.go (about)

     1  package Npcf_SMPolicyControl
     2  
     3  import (
     4  	"context"
     5  	"io/ioutil"
     6  	"net/http"
     7  	"net/url"
     8  	"strings"
     9  
    10  	"github.com/free5gc/openapi"
    11  	"github.com/free5gc/openapi/models"
    12  )
    13  
    14  type DefaultCallbackApi service
    15  
    16  /*
    17  SMNotification
    18   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    19   * @param smPolicyContextData
    20  @return SmPolicyDecision
    21  */
    22  
    23  func (a *DefaultCallbackApi) SmPolicyUpdateNotification(ctx context.Context, notificationUri string, request models.SmPolicyNotification) (interface{}, *http.Response, error) {
    24  	var (
    25  		localVarHTTPMethod   = strings.ToUpper("Post")
    26  		localVarPostBody     interface{}
    27  		localVarFormFileName string
    28  		localVarFileName     string
    29  		localVarFileBytes    []byte
    30  		localVarReturnValue  interface{} // PartialSuccessReport or UeCampingRep
    31  	)
    32  
    33  	// create path and map variables
    34  	localVarPath := notificationUri + "/update"
    35  	localVarHeaderParams := make(map[string]string)
    36  	localVarQueryParams := url.Values{}
    37  	localVarFormParams := url.Values{}
    38  
    39  	localVarHTTPContentTypes := []string{"application/json"}
    40  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
    41  
    42  	// to determine the Accept header
    43  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
    44  
    45  	// set Accept header
    46  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
    47  	if localVarHTTPHeaderAccept != "" {
    48  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
    49  	}
    50  
    51  	// body params
    52  	localVarPostBody = &request
    53  
    54  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    55  	if err != nil {
    56  		return localVarReturnValue, nil, err
    57  	}
    58  
    59  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    60  	if err != nil || localVarHTTPResponse == nil {
    61  		return localVarReturnValue, localVarHTTPResponse, err
    62  	}
    63  
    64  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
    65  	localVarHTTPResponse.Body.Close()
    66  	if err != nil {
    67  		return localVarReturnValue, localVarHTTPResponse, err
    68  	}
    69  
    70  	apiError := openapi.GenericOpenAPIError{
    71  		RawBody:     localVarBody,
    72  		ErrorStatus: localVarHTTPResponse.Status,
    73  	}
    74  
    75  	switch localVarHTTPResponse.StatusCode {
    76  	case 200:
    77  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    78  		if err != nil {
    79  			apiError.ErrorStatus = err.Error()
    80  		}
    81  		return localVarReturnValue, localVarHTTPResponse, nil
    82  	case 204:
    83  		return localVarReturnValue, localVarHTTPResponse, nil
    84  	case 400:
    85  		var v models.ErrorReport
    86  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    87  		if err != nil {
    88  			apiError.ErrorStatus = err.Error()
    89  			return localVarReturnValue, localVarHTTPResponse, apiError
    90  		}
    91  		apiError.ErrorModel = v
    92  		return localVarReturnValue, localVarHTTPResponse, apiError
    93  	case 401:
    94  		var v models.ProblemDetails
    95  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
    96  		if err != nil {
    97  			apiError.ErrorStatus = err.Error()
    98  			return localVarReturnValue, localVarHTTPResponse, apiError
    99  		}
   100  		apiError.ErrorModel = v
   101  		return localVarReturnValue, localVarHTTPResponse, apiError
   102  	case 403:
   103  		var v models.ProblemDetails
   104  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   105  		if err != nil {
   106  			apiError.ErrorStatus = err.Error()
   107  			return localVarReturnValue, localVarHTTPResponse, apiError
   108  		}
   109  		apiError.ErrorModel = v
   110  		return localVarReturnValue, localVarHTTPResponse, apiError
   111  	case 404:
   112  		return localVarReturnValue, localVarHTTPResponse, nil
   113  	case 411:
   114  		var v models.ProblemDetails
   115  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   116  		if err != nil {
   117  			apiError.ErrorStatus = err.Error()
   118  			return localVarReturnValue, localVarHTTPResponse, apiError
   119  		}
   120  		apiError.ErrorModel = v
   121  		return localVarReturnValue, localVarHTTPResponse, apiError
   122  	case 413:
   123  		var v models.ProblemDetails
   124  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   125  		if err != nil {
   126  			apiError.ErrorStatus = err.Error()
   127  			return localVarReturnValue, localVarHTTPResponse, apiError
   128  		}
   129  		apiError.ErrorModel = v
   130  		return localVarReturnValue, localVarHTTPResponse, apiError
   131  	case 415:
   132  		var v models.ProblemDetails
   133  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   134  		if err != nil {
   135  			apiError.ErrorStatus = err.Error()
   136  			return localVarReturnValue, localVarHTTPResponse, apiError
   137  		}
   138  		apiError.ErrorModel = v
   139  		return localVarReturnValue, localVarHTTPResponse, apiError
   140  	case 429:
   141  		var v models.ProblemDetails
   142  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   143  		if err != nil {
   144  			apiError.ErrorStatus = err.Error()
   145  			return localVarReturnValue, localVarHTTPResponse, apiError
   146  		}
   147  		apiError.ErrorModel = v
   148  		return localVarReturnValue, localVarHTTPResponse, apiError
   149  	case 500:
   150  		var v models.ProblemDetails
   151  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   152  		if err != nil {
   153  			apiError.ErrorStatus = err.Error()
   154  			return localVarReturnValue, localVarHTTPResponse, apiError
   155  		}
   156  		apiError.ErrorModel = v
   157  		return localVarReturnValue, localVarHTTPResponse, apiError
   158  	case 503:
   159  		var v models.ProblemDetails
   160  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   161  		if err != nil {
   162  			apiError.ErrorStatus = err.Error()
   163  			return localVarReturnValue, localVarHTTPResponse, apiError
   164  		}
   165  		apiError.ErrorModel = v
   166  		return localVarReturnValue, localVarHTTPResponse, apiError
   167  	default:
   168  		return localVarReturnValue, localVarHTTPResponse, nil
   169  	}
   170  }
   171  
   172  func (a *DefaultCallbackApi) SmPolicyControlTerminationRequestNotification(ctx context.Context, notificationUri string, request models.TerminationNotification) (*http.Response, error) {
   173  	var (
   174  		localVarHTTPMethod   = strings.ToUpper("Post")
   175  		localVarPostBody     interface{}
   176  		localVarFormFileName string
   177  		localVarFileName     string
   178  		localVarFileBytes    []byte
   179  	)
   180  
   181  	// create path and map variables
   182  	localVarPath := notificationUri + "/terminate"
   183  	localVarHeaderParams := make(map[string]string)
   184  	localVarQueryParams := url.Values{}
   185  	localVarFormParams := url.Values{}
   186  
   187  	localVarHTTPContentTypes := []string{"application/json"}
   188  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   189  
   190  	// to determine the Accept header
   191  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
   192  
   193  	// set Accept header
   194  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   195  	if localVarHTTPHeaderAccept != "" {
   196  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   197  	}
   198  
   199  	// body params
   200  	localVarPostBody = &request
   201  
   202  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   203  	if err != nil {
   204  		return nil, err
   205  	}
   206  
   207  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   208  	if err != nil || localVarHTTPResponse == nil {
   209  		return localVarHTTPResponse, err
   210  	}
   211  
   212  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   213  	localVarHTTPResponse.Body.Close()
   214  	if err != nil {
   215  		return localVarHTTPResponse, err
   216  	}
   217  
   218  	apiError := openapi.GenericOpenAPIError{
   219  		RawBody:     localVarBody,
   220  		ErrorStatus: localVarHTTPResponse.Status,
   221  	}
   222  
   223  	switch localVarHTTPResponse.StatusCode {
   224  	case 204:
   225  		return localVarHTTPResponse, nil
   226  	case 400:
   227  		var v models.ProblemDetails
   228  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   229  		if err != nil {
   230  			apiError.ErrorStatus = err.Error()
   231  			return localVarHTTPResponse, apiError
   232  		}
   233  		apiError.ErrorModel = v
   234  		return localVarHTTPResponse, apiError
   235  	case 401:
   236  		var v models.ProblemDetails
   237  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   238  		if err != nil {
   239  			apiError.ErrorStatus = err.Error()
   240  			return localVarHTTPResponse, apiError
   241  		}
   242  		apiError.ErrorModel = v
   243  		return localVarHTTPResponse, apiError
   244  	case 403:
   245  		var v models.ProblemDetails
   246  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   247  		if err != nil {
   248  			apiError.ErrorStatus = err.Error()
   249  			return localVarHTTPResponse, apiError
   250  		}
   251  		apiError.ErrorModel = v
   252  		return localVarHTTPResponse, apiError
   253  	case 404:
   254  		return localVarHTTPResponse, nil
   255  	case 411:
   256  		var v models.ProblemDetails
   257  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   258  		if err != nil {
   259  			apiError.ErrorStatus = err.Error()
   260  			return localVarHTTPResponse, apiError
   261  		}
   262  		apiError.ErrorModel = v
   263  		return localVarHTTPResponse, apiError
   264  	case 413:
   265  		var v models.ProblemDetails
   266  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   267  		if err != nil {
   268  			apiError.ErrorStatus = err.Error()
   269  			return localVarHTTPResponse, apiError
   270  		}
   271  		apiError.ErrorModel = v
   272  		return localVarHTTPResponse, apiError
   273  	case 415:
   274  		var v models.ProblemDetails
   275  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   276  		if err != nil {
   277  			apiError.ErrorStatus = err.Error()
   278  			return localVarHTTPResponse, apiError
   279  		}
   280  		apiError.ErrorModel = v
   281  		return localVarHTTPResponse, apiError
   282  	case 429:
   283  		var v models.ProblemDetails
   284  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   285  		if err != nil {
   286  			apiError.ErrorStatus = err.Error()
   287  			return localVarHTTPResponse, apiError
   288  		}
   289  		apiError.ErrorModel = v
   290  		return localVarHTTPResponse, apiError
   291  	case 500:
   292  		var v models.ProblemDetails
   293  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   294  		if err != nil {
   295  			apiError.ErrorStatus = err.Error()
   296  			return localVarHTTPResponse, apiError
   297  		}
   298  		apiError.ErrorModel = v
   299  		return localVarHTTPResponse, apiError
   300  	case 503:
   301  		var v models.ProblemDetails
   302  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   303  		if err != nil {
   304  			apiError.ErrorStatus = err.Error()
   305  			return localVarHTTPResponse, apiError
   306  		}
   307  		apiError.ErrorModel = v
   308  		return localVarHTTPResponse, apiError
   309  	default:
   310  		return localVarHTTPResponse, nil
   311  	}
   312  }