github.com/grpc-ecosystem/grpc-gateway/v2@v2.19.1/examples/internal/clients/abe/api_snake_enum_service.go (about) 1 /* 2 * A Bit of Everything 3 * 4 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) 5 * 6 * API version: 1.0 7 * Contact: none@example.com 8 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) 9 */ 10 11 package abe 12 13 import ( 14 "context" 15 "io/ioutil" 16 "net/http" 17 "net/url" 18 "strings" 19 "fmt" 20 ) 21 22 // Linger please 23 var ( 24 _ context.Context 25 ) 26 27 type SnakeEnumServiceApiService service 28 29 /* 30 SnakeEnumServiceApiService 31 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 32 * @param who 33 * @param what 34 * @param where 35 36 @return ExamplepbSnakeEnumResponse 37 */ 38 func (a *SnakeEnumServiceApiService) SnakeEnumServiceSnakeEnum(ctx context.Context, who string, what string, where string) (ExamplepbSnakeEnumResponse, *http.Response, error) { 39 var ( 40 localVarHttpMethod = strings.ToUpper("Get") 41 localVarPostBody interface{} 42 localVarFileName string 43 localVarFileBytes []byte 44 localVarReturnValue ExamplepbSnakeEnumResponse 45 ) 46 47 // create path and map variables 48 localVarPath := a.client.cfg.BasePath + "/v1/example/snake/{who}/{what}/{where}" 49 localVarPath = strings.Replace(localVarPath, "{"+"who"+"}", fmt.Sprintf("%v", who), -1) 50 localVarPath = strings.Replace(localVarPath, "{"+"what"+"}", fmt.Sprintf("%v", what), -1) 51 localVarPath = strings.Replace(localVarPath, "{"+"where"+"}", fmt.Sprintf("%v", where), -1) 52 53 localVarHeaderParams := make(map[string]string) 54 localVarQueryParams := url.Values{} 55 localVarFormParams := url.Values{} 56 57 // to determine the Content-Type header 58 localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"} 59 60 // set Content-Type header 61 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 62 if localVarHttpContentType != "" { 63 localVarHeaderParams["Content-Type"] = localVarHttpContentType 64 } 65 66 // to determine the Accept header 67 localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"} 68 69 // set Accept header 70 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 71 if localVarHttpHeaderAccept != "" { 72 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 73 } 74 if ctx != nil { 75 // API Key Authentication 76 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 77 var key string 78 if auth.Prefix != "" { 79 key = auth.Prefix + " " + auth.Key 80 } else { 81 key = auth.Key 82 } 83 localVarHeaderParams["X-API-Key"] = key 84 85 } 86 } 87 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 88 if err != nil { 89 return localVarReturnValue, nil, err 90 } 91 92 localVarHttpResponse, err := a.client.callAPI(r) 93 if err != nil || localVarHttpResponse == nil { 94 return localVarReturnValue, localVarHttpResponse, err 95 } 96 97 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 98 localVarHttpResponse.Body.Close() 99 if err != nil { 100 return localVarReturnValue, localVarHttpResponse, err 101 } 102 103 if localVarHttpResponse.StatusCode < 300 { 104 // If we succeed, return the data, otherwise pass on to decode error. 105 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 106 if err == nil { 107 return localVarReturnValue, localVarHttpResponse, err 108 } 109 } 110 111 if localVarHttpResponse.StatusCode >= 300 { 112 newErr := GenericSwaggerError{ 113 body: localVarBody, 114 error: localVarHttpResponse.Status, 115 } 116 117 if localVarHttpResponse.StatusCode == 200 { 118 var v ExamplepbSnakeEnumResponse 119 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 120 if err != nil { 121 newErr.error = err.Error() 122 return localVarReturnValue, localVarHttpResponse, newErr 123 } 124 newErr.model = v 125 return localVarReturnValue, localVarHttpResponse, newErr 126 } 127 128 if localVarHttpResponse.StatusCode == 403 { 129 var v interface{} 130 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 131 if err != nil { 132 newErr.error = err.Error() 133 return localVarReturnValue, localVarHttpResponse, newErr 134 } 135 newErr.model = v 136 return localVarReturnValue, localVarHttpResponse, newErr 137 } 138 139 if localVarHttpResponse.StatusCode == 404 { 140 var v string 141 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 142 if err != nil { 143 newErr.error = err.Error() 144 return localVarReturnValue, localVarHttpResponse, newErr 145 } 146 newErr.model = v 147 return localVarReturnValue, localVarHttpResponse, newErr 148 } 149 150 if localVarHttpResponse.StatusCode == 418 { 151 var v ExamplepbNumericEnum 152 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 153 if err != nil { 154 newErr.error = err.Error() 155 return localVarReturnValue, localVarHttpResponse, newErr 156 } 157 newErr.model = v 158 return localVarReturnValue, localVarHttpResponse, newErr 159 } 160 161 if localVarHttpResponse.StatusCode == 500 { 162 var v ExamplepbErrorResponse 163 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 164 if err != nil { 165 newErr.error = err.Error() 166 return localVarReturnValue, localVarHttpResponse, newErr 167 } 168 newErr.model = v 169 return localVarReturnValue, localVarHttpResponse, newErr 170 } 171 172 if localVarHttpResponse.StatusCode == 0 { 173 var v RpcStatus 174 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 175 if err != nil { 176 newErr.error = err.Error() 177 return localVarReturnValue, localVarHttpResponse, newErr 178 } 179 newErr.model = v 180 return localVarReturnValue, localVarHttpResponse, newErr 181 } 182 183 return localVarReturnValue, localVarHttpResponse, newErr 184 } 185 186 return localVarReturnValue, localVarHttpResponse, nil 187 }