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