github.com/free5gc/openapi@v1.0.8/Nudr_DataRepository/api_influence_data_subscriptions_collection.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  	"github.com/free5gc/openapi"
    14  	"github.com/free5gc/openapi/models"
    15  
    16  	"context"
    17  	"io/ioutil"
    18  	"net/http"
    19  	"net/url"
    20  	"strings"
    21  
    22  	"github.com/antihax/optional"
    23  )
    24  
    25  // Linger please
    26  var (
    27  	_ context.Context
    28  )
    29  
    30  type InfluenceDataSubscriptionsCollectionApiService service
    31  
    32  /*
    33  InfluenceDataSubscriptionsCollectionApiService
    34   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    35   * @param optional nil or *ApplicationDataInfluenceDataSubsToNotifyGetParamOpts - Optional Parameters:
    36   * @param "Dnn" (optional.String) -  Identifies a DNN.
    37   * @param "Snssai" (optional.Interface of models.Snssai) -  Identifies a slice.
    38   * @param "InternalGroupId" (optional.String) -  Identifies a group of users.
    39   * @param "Supi" (optional.String) -  Identifies a user.
    40  @return []models.TrafficInfluSub
    41  */
    42  
    43  type ApplicationDataInfluenceDataSubsToNotifyGetParamOpts struct {
    44  	Dnn             optional.String
    45  	Snssai          optional.Interface
    46  	InternalGroupId optional.String
    47  	Supi            optional.String
    48  }
    49  
    50  func (a *InfluenceDataSubscriptionsCollectionApiService) ApplicationDataInfluenceDataSubsToNotifyGet(ctx context.Context, localVarOptionals *ApplicationDataInfluenceDataSubsToNotifyGetParamOpts) ([]models.TrafficInfluSub, *http.Response, error) {
    51  	var (
    52  		localVarHTTPMethod   = strings.ToUpper("Get")
    53  		localVarPostBody     interface{}
    54  		localVarFormFileName string
    55  		localVarFileName     string
    56  		localVarFileBytes    []byte
    57  		localVarReturnValue  []models.TrafficInfluSub
    58  	)
    59  
    60  	// create path and map variables
    61  	localVarPath := a.client.cfg.BasePath() + "/application-data/influenceData/subs-to-notify"
    62  
    63  	localVarHeaderParams := make(map[string]string)
    64  	localVarQueryParams := url.Values{}
    65  	localVarFormParams := url.Values{}
    66  
    67  	if localVarOptionals != nil && localVarOptionals.Dnn.IsSet() && localVarOptionals.Dnn.Value() != "" {
    68  		localVarQueryParams.Add("dnn", openapi.ParameterToString(localVarOptionals.Dnn.Value(), ""))
    69  	}
    70  	if localVarOptionals != nil && localVarOptionals.Snssai.IsSet() && localVarOptionals.Snssai.Value() != "" {
    71  		localVarQueryParams.Add("snssai", openapi.ParameterToString(localVarOptionals.Snssai.Value(), ""))
    72  	}
    73  	if localVarOptionals != nil && localVarOptionals.InternalGroupId.IsSet() && localVarOptionals.InternalGroupId.Value() != "" {
    74  		localVarQueryParams.Add("internal-Group-Id", openapi.ParameterToString(localVarOptionals.InternalGroupId.Value(), ""))
    75  	}
    76  	if localVarOptionals != nil && localVarOptionals.Supi.IsSet() && localVarOptionals.Supi.Value() != "" {
    77  		localVarQueryParams.Add("supi", openapi.ParameterToString(localVarOptionals.Supi.Value(), ""))
    78  	}
    79  
    80  	localVarHTTPContentTypes := []string{"application/json"}
    81  
    82  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
    83  
    84  	// to determine the Accept header
    85  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
    86  
    87  	// set Accept header
    88  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
    89  	if localVarHTTPHeaderAccept != "" {
    90  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
    91  	}
    92  
    93  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    94  	if err != nil {
    95  		return localVarReturnValue, nil, err
    96  	}
    97  
    98  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
    99  	if err != nil || localVarHTTPResponse == nil {
   100  		return localVarReturnValue, localVarHTTPResponse, err
   101  	}
   102  
   103  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   104  	localVarHTTPResponse.Body.Close()
   105  	if err != nil {
   106  		return localVarReturnValue, localVarHTTPResponse, err
   107  	}
   108  
   109  	apiError := openapi.GenericOpenAPIError{
   110  		RawBody:     localVarBody,
   111  		ErrorStatus: localVarHTTPResponse.Status,
   112  	}
   113  
   114  	switch localVarHTTPResponse.StatusCode {
   115  	case 200:
   116  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   117  		if err != nil {
   118  			apiError.ErrorStatus = err.Error()
   119  		}
   120  		return localVarReturnValue, localVarHTTPResponse, nil
   121  	case 400:
   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 401:
   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  	case 403:
   140  		var v models.ProblemDetails
   141  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   142  		if err != nil {
   143  			apiError.ErrorStatus = err.Error()
   144  			return localVarReturnValue, localVarHTTPResponse, apiError
   145  		}
   146  		apiError.ErrorModel = v
   147  		return localVarReturnValue, localVarHTTPResponse, apiError
   148  	case 404:
   149  		var v models.ProblemDetails
   150  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   151  		if err != nil {
   152  			apiError.ErrorStatus = err.Error()
   153  			return localVarReturnValue, localVarHTTPResponse, apiError
   154  		}
   155  		apiError.ErrorModel = v
   156  		return localVarReturnValue, localVarHTTPResponse, apiError
   157  	case 406:
   158  		return localVarReturnValue, localVarHTTPResponse, nil
   159  	case 414:
   160  		var v models.ProblemDetails
   161  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   162  		if err != nil {
   163  			apiError.ErrorStatus = err.Error()
   164  			return localVarReturnValue, localVarHTTPResponse, apiError
   165  		}
   166  		apiError.ErrorModel = v
   167  		return localVarReturnValue, localVarHTTPResponse, apiError
   168  	case 429:
   169  		var v models.ProblemDetails
   170  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   171  		if err != nil {
   172  			apiError.ErrorStatus = err.Error()
   173  			return localVarReturnValue, localVarHTTPResponse, apiError
   174  		}
   175  		apiError.ErrorModel = v
   176  		return localVarReturnValue, localVarHTTPResponse, apiError
   177  	case 500:
   178  		var v models.ProblemDetails
   179  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   180  		if err != nil {
   181  			apiError.ErrorStatus = err.Error()
   182  			return localVarReturnValue, localVarHTTPResponse, apiError
   183  		}
   184  		apiError.ErrorModel = v
   185  		return localVarReturnValue, localVarHTTPResponse, apiError
   186  	case 503:
   187  		var v models.ProblemDetails
   188  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   189  		if err != nil {
   190  			apiError.ErrorStatus = err.Error()
   191  			return localVarReturnValue, localVarHTTPResponse, apiError
   192  		}
   193  		apiError.ErrorModel = v
   194  		return localVarReturnValue, localVarHTTPResponse, apiError
   195  	default:
   196  		return localVarReturnValue, localVarHTTPResponse, nil
   197  	}
   198  }
   199  
   200  /*
   201  InfluenceDataSubscriptionsCollectionApiService
   202   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   203   * @param trafficInfluSub
   204  @return models.TrafficInfluSub
   205  */
   206  
   207  func (a *InfluenceDataSubscriptionsCollectionApiService) ApplicationDataInfluenceDataSubsToNotifyPost(ctx context.Context, trafficInfluSub models.TrafficInfluSub) (models.TrafficInfluSub, *http.Response, error) {
   208  	var (
   209  		localVarHTTPMethod   = strings.ToUpper("Post")
   210  		localVarPostBody     interface{}
   211  		localVarFormFileName string
   212  		localVarFileName     string
   213  		localVarFileBytes    []byte
   214  		localVarReturnValue  models.TrafficInfluSub
   215  	)
   216  
   217  	// create path and map variables
   218  	localVarPath := a.client.cfg.BasePath() + "/application-data/influenceData/subs-to-notify"
   219  
   220  	localVarHeaderParams := make(map[string]string)
   221  	localVarQueryParams := url.Values{}
   222  	localVarFormParams := url.Values{}
   223  
   224  	localVarHTTPContentTypes := []string{"application/json"}
   225  
   226  	localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes'
   227  
   228  	// to determine the Accept header
   229  	localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"}
   230  
   231  	// set Accept header
   232  	localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts)
   233  	if localVarHTTPHeaderAccept != "" {
   234  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
   235  	}
   236  
   237  	// body params
   238  	localVarPostBody = &trafficInfluSub
   239  
   240  	r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   241  	if err != nil {
   242  		return localVarReturnValue, nil, err
   243  	}
   244  
   245  	localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r)
   246  	if err != nil || localVarHTTPResponse == nil {
   247  		return localVarReturnValue, localVarHTTPResponse, err
   248  	}
   249  
   250  	localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
   251  	localVarHTTPResponse.Body.Close()
   252  	if err != nil {
   253  		return localVarReturnValue, localVarHTTPResponse, err
   254  	}
   255  
   256  	apiError := openapi.GenericOpenAPIError{
   257  		RawBody:     localVarBody,
   258  		ErrorStatus: localVarHTTPResponse.Status,
   259  	}
   260  
   261  	switch localVarHTTPResponse.StatusCode {
   262  	case 201:
   263  		err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   264  		if err != nil {
   265  			apiError.ErrorStatus = err.Error()
   266  		}
   267  		return localVarReturnValue, localVarHTTPResponse, nil
   268  	case 400:
   269  		var v models.ProblemDetails
   270  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   271  		if err != nil {
   272  			apiError.ErrorStatus = err.Error()
   273  			return localVarReturnValue, localVarHTTPResponse, apiError
   274  		}
   275  		apiError.ErrorModel = v
   276  		return localVarReturnValue, localVarHTTPResponse, apiError
   277  	case 401:
   278  		var v models.ProblemDetails
   279  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   280  		if err != nil {
   281  			apiError.ErrorStatus = err.Error()
   282  			return localVarReturnValue, localVarHTTPResponse, apiError
   283  		}
   284  		apiError.ErrorModel = v
   285  		return localVarReturnValue, localVarHTTPResponse, apiError
   286  	case 403:
   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  	case 404:
   296  		var v models.ProblemDetails
   297  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   298  		if err != nil {
   299  			apiError.ErrorStatus = err.Error()
   300  			return localVarReturnValue, localVarHTTPResponse, apiError
   301  		}
   302  		apiError.ErrorModel = v
   303  		return localVarReturnValue, localVarHTTPResponse, apiError
   304  	case 411:
   305  		var v models.ProblemDetails
   306  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   307  		if err != nil {
   308  			apiError.ErrorStatus = err.Error()
   309  			return localVarReturnValue, localVarHTTPResponse, apiError
   310  		}
   311  		apiError.ErrorModel = v
   312  		return localVarReturnValue, localVarHTTPResponse, apiError
   313  	case 413:
   314  		var v models.ProblemDetails
   315  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   316  		if err != nil {
   317  			apiError.ErrorStatus = err.Error()
   318  			return localVarReturnValue, localVarHTTPResponse, apiError
   319  		}
   320  		apiError.ErrorModel = v
   321  		return localVarReturnValue, localVarHTTPResponse, apiError
   322  	case 415:
   323  		var v models.ProblemDetails
   324  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   325  		if err != nil {
   326  			apiError.ErrorStatus = err.Error()
   327  			return localVarReturnValue, localVarHTTPResponse, apiError
   328  		}
   329  		apiError.ErrorModel = v
   330  		return localVarReturnValue, localVarHTTPResponse, apiError
   331  	case 429:
   332  		var v models.ProblemDetails
   333  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   334  		if err != nil {
   335  			apiError.ErrorStatus = err.Error()
   336  			return localVarReturnValue, localVarHTTPResponse, apiError
   337  		}
   338  		apiError.ErrorModel = v
   339  		return localVarReturnValue, localVarHTTPResponse, apiError
   340  	case 500:
   341  		var v models.ProblemDetails
   342  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   343  		if err != nil {
   344  			apiError.ErrorStatus = err.Error()
   345  			return localVarReturnValue, localVarHTTPResponse, apiError
   346  		}
   347  		apiError.ErrorModel = v
   348  		return localVarReturnValue, localVarHTTPResponse, apiError
   349  	case 503:
   350  		var v models.ProblemDetails
   351  		err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
   352  		if err != nil {
   353  			apiError.ErrorStatus = err.Error()
   354  			return localVarReturnValue, localVarHTTPResponse, apiError
   355  		}
   356  		apiError.ErrorModel = v
   357  		return localVarReturnValue, localVarHTTPResponse, apiError
   358  	default:
   359  		return localVarReturnValue, localVarHTTPResponse, nil
   360  	}
   361  }