github.com/free5gc/openapi@v1.0.8/Nnssf_NSSAIAvailability/api_notification.go (about)

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