github.com/free5gc/openapi@v1.0.8/Nudm_SubscriberDataManagement/api_sms_subscription_data_retrieval.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/antihax/optional" 21 22 "github.com/free5gc/openapi" 23 "github.com/free5gc/openapi/models" 24 ) 25 26 // Linger please 27 var ( 28 _ context.Context 29 ) 30 31 type SMSSubscriptionDataRetrievalApiService service 32 33 /* 34 SMSSubscriptionDataRetrievalApiService retrieve a UE's SMS Subscription Data 35 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 36 * @param supi Identifier of the UE 37 * @param optional nil or *GetSmsDataParamOpts - Optional Parameters: 38 * @param "SupportedFeatures" (optional.String) - Supported Features 39 * @param "PlmnId" (optional.Interface of models.PlmnId) - 40 * @param "IfNoneMatch" (optional.String) - Validator for conditional requests, as described in RFC 7232, 3.2 41 * @param "IfModifiedSince" (optional.String) - Validator for conditional requests, as described in RFC 7232, 3.3 42 @return models.SmsSubscriptionData 43 */ 44 45 type GetSmsDataParamOpts struct { 46 SupportedFeatures optional.String 47 PlmnId optional.Interface 48 IfNoneMatch optional.String 49 IfModifiedSince optional.String 50 } 51 52 func (a *SMSSubscriptionDataRetrievalApiService) GetSmsData(ctx context.Context, supi string, localVarOptionals *GetSmsDataParamOpts) (models.SmsSubscriptionData, *http.Response, error) { 53 var ( 54 localVarHTTPMethod = strings.ToUpper("Get") 55 localVarPostBody interface{} 56 localVarFormFileName string 57 localVarFileName string 58 localVarFileBytes []byte 59 localVarReturnValue models.SmsSubscriptionData 60 ) 61 62 // create path and map variables 63 localVarPath := a.client.cfg.BasePath() + "/{supi}/sms-data" 64 localVarPath = strings.Replace(localVarPath, "{"+"supi"+"}", fmt.Sprintf("%v", supi), -1) 65 66 localVarHeaderParams := make(map[string]string) 67 localVarQueryParams := url.Values{} 68 localVarFormParams := url.Values{} 69 70 if localVarOptionals != nil && localVarOptionals.SupportedFeatures.IsSet() && localVarOptionals.SupportedFeatures.Value() != "" { 71 localVarQueryParams.Add("supported-features", openapi.ParameterToString(localVarOptionals.SupportedFeatures.Value(), "")) 72 } 73 if localVarOptionals != nil && localVarOptionals.PlmnId.IsSet() { 74 localVarQueryParams.Add("plmn-id", openapi.ParameterToString(localVarOptionals.PlmnId.Value(), "")) 75 } 76 77 localVarHTTPContentTypes := []string{"application/json"} 78 79 localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes' 80 81 // to determine the Accept header 82 localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"} 83 84 // set Accept header 85 localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts) 86 if localVarHTTPHeaderAccept != "" { 87 localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept 88 } 89 90 if localVarOptionals != nil && localVarOptionals.IfNoneMatch.IsSet() && localVarOptionals.IfNoneMatch.Value() != "" { 91 localVarHeaderParams["If-None-Match"] = openapi.ParameterToString(localVarOptionals.IfNoneMatch.Value(), "") 92 } 93 if localVarOptionals != nil && localVarOptionals.IfModifiedSince.IsSet() && localVarOptionals.IfModifiedSince.Value() != "" { 94 localVarHeaderParams["If-Modified-Since"] = openapi.ParameterToString(localVarOptionals.IfModifiedSince.Value(), "") 95 } 96 97 r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 98 if err != nil { 99 return localVarReturnValue, nil, err 100 } 101 102 localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r) 103 if err != nil || localVarHTTPResponse == nil { 104 return localVarReturnValue, localVarHTTPResponse, err 105 } 106 107 localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body) 108 localVarHTTPResponse.Body.Close() 109 if err != nil { 110 return localVarReturnValue, localVarHTTPResponse, err 111 } 112 113 apiError := openapi.GenericOpenAPIError{ 114 RawBody: localVarBody, 115 ErrorStatus: localVarHTTPResponse.Status, 116 } 117 118 switch localVarHTTPResponse.StatusCode { 119 case 200: 120 err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 121 if err != nil { 122 apiError.ErrorStatus = err.Error() 123 } 124 return localVarReturnValue, localVarHTTPResponse, nil 125 case 400: 126 var v models.ProblemDetails 127 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 128 if err != nil { 129 apiError.ErrorStatus = err.Error() 130 return localVarReturnValue, localVarHTTPResponse, apiError 131 } 132 apiError.ErrorModel = v 133 return localVarReturnValue, localVarHTTPResponse, apiError 134 case 404: 135 var v models.ProblemDetails 136 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 137 if err != nil { 138 apiError.ErrorStatus = err.Error() 139 return localVarReturnValue, localVarHTTPResponse, apiError 140 } 141 apiError.ErrorModel = v 142 return localVarReturnValue, localVarHTTPResponse, apiError 143 case 500: 144 var v models.ProblemDetails 145 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 146 if err != nil { 147 apiError.ErrorStatus = err.Error() 148 return localVarReturnValue, localVarHTTPResponse, apiError 149 } 150 apiError.ErrorModel = v 151 return localVarReturnValue, localVarHTTPResponse, apiError 152 case 503: 153 var v models.ProblemDetails 154 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 155 if err != nil { 156 apiError.ErrorStatus = err.Error() 157 return localVarReturnValue, localVarHTTPResponse, apiError 158 } 159 apiError.ErrorModel = v 160 return localVarReturnValue, localVarHTTPResponse, apiError 161 default: 162 return localVarReturnValue, localVarHTTPResponse, nil 163 } 164 }