github.com/free5gc/openapi@v1.0.8/Nudm_EventExposure/api_create_ee_subscription.go (about) 1 /* 2 * Nudm_EE 3 * 4 * Nudm Event Exposure Service 5 * 6 * API version: 1.0.1 7 * Generated by: OpenAPI Generator (https://openapi-generator.tech) 8 */ 9 10 package Nudm_EventExposure 11 12 import ( 13 "context" 14 "fmt" 15 "io/ioutil" 16 "net/http" 17 "net/url" 18 "strings" 19 20 "github.com/free5gc/openapi" 21 "github.com/free5gc/openapi/models" 22 ) 23 24 // Linger please 25 var ( 26 _ context.Context 27 ) 28 29 type CreateEESubscriptionApiService service 30 31 /* 32 CreateEESubscriptionApiService Subscribe 33 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 34 * @param ueIdentity Represents the scope of the UE for which the subscription is applied. Contains the GPSI of the user or the external group ID or any UE. 35 * @param eeSubscription 36 @return models.CreatedEeSubscription 37 */ 38 39 func (a *CreateEESubscriptionApiService) CreateEeSubscription(ctx context.Context, ueIdentity string, eeSubscription models.EeSubscription) (models.CreatedEeSubscription, *http.Response, error) { 40 var ( 41 localVarHTTPMethod = strings.ToUpper("Post") 42 localVarPostBody interface{} 43 localVarFormFileName string 44 localVarFileName string 45 localVarFileBytes []byte 46 localVarReturnValue models.CreatedEeSubscription 47 ) 48 49 // create path and map variables 50 localVarPath := a.client.cfg.BasePath() + "/{ueIdentity}/ee-subscriptions" 51 localVarPath = strings.Replace(localVarPath, "{"+"ueIdentity"+"}", fmt.Sprintf("%v", ueIdentity), -1) 52 53 localVarHeaderParams := make(map[string]string) 54 localVarQueryParams := url.Values{} 55 localVarFormParams := url.Values{} 56 57 localVarHTTPContentTypes := []string{"application/json"} 58 59 localVarHeaderParams["Content-Type"] = localVarHTTPContentTypes[0] // use the first content type specified in 'consumes' 60 61 // to determine the Accept header 62 localVarHTTPHeaderAccepts := []string{"application/json", "application/problem+json"} 63 64 // set Accept header 65 localVarHTTPHeaderAccept := openapi.SelectHeaderAccept(localVarHTTPHeaderAccepts) 66 if localVarHTTPHeaderAccept != "" { 67 localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept 68 } 69 70 // body params 71 localVarPostBody = &eeSubscription 72 73 r, err := openapi.PrepareRequest(ctx, a.client.cfg, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 74 if err != nil { 75 return localVarReturnValue, nil, err 76 } 77 78 localVarHTTPResponse, err := openapi.CallAPI(a.client.cfg, r) 79 if err != nil || localVarHTTPResponse == nil { 80 return localVarReturnValue, localVarHTTPResponse, err 81 } 82 83 localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body) 84 localVarHTTPResponse.Body.Close() 85 if err != nil { 86 return localVarReturnValue, localVarHTTPResponse, err 87 } 88 89 apiError := openapi.GenericOpenAPIError{ 90 RawBody: localVarBody, 91 ErrorStatus: localVarHTTPResponse.Status, 92 } 93 94 switch localVarHTTPResponse.StatusCode { 95 case 201: 96 err = openapi.Deserialize(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 97 if err != nil { 98 apiError.ErrorStatus = err.Error() 99 } 100 return localVarReturnValue, localVarHTTPResponse, nil 101 case 400: 102 var v models.ProblemDetails 103 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 104 if err != nil { 105 apiError.ErrorStatus = err.Error() 106 return localVarReturnValue, localVarHTTPResponse, apiError 107 } 108 apiError.ErrorModel = v 109 return localVarReturnValue, localVarHTTPResponse, apiError 110 case 403: 111 var v models.ProblemDetails 112 err = openapi.Deserialize(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) 113 if err != nil { 114 apiError.ErrorStatus = err.Error() 115 return localVarReturnValue, localVarHTTPResponse, apiError 116 } 117 apiError.ErrorModel = v 118 return localVarReturnValue, localVarHTTPResponse, apiError 119 case 404: 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 500: 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 501: 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 }