...

Source file src/github.com/grpc-ecosystem/grpc-gateway/examples/internal/clients/abe/api_a_bit_of_everything_service.go

Documentation: github.com/grpc-ecosystem/grpc-gateway/examples/internal/clients/abe

     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  	"github.com/antihax/optional"
    21  )
    22  
    23  // Linger please
    24  var (
    25  	_ context.Context
    26  )
    27  
    28  type ABitOfEverythingServiceApiService service
    29  
    30  /* 
    31  ABitOfEverythingServiceApiService
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33   * @param value
    34  
    35  @return interface{}
    36  */
    37  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCheckExternalNestedPathEnum(ctx context.Context, value string) (interface{}, *http.Response, error) {
    38  	var (
    39  		localVarHttpMethod = strings.ToUpper("Get")
    40  		localVarPostBody   interface{}
    41  		localVarFileName   string
    42  		localVarFileBytes  []byte
    43  		localVarReturnValue interface{}
    44  	)
    45  
    46  	// create path and map variables
    47  	localVarPath := a.client.cfg.BasePath + "/v2/{value}:check"
    48  	localVarPath = strings.Replace(localVarPath, "{"+"value"+"}", fmt.Sprintf("%v", value), -1)
    49  
    50  	localVarHeaderParams := make(map[string]string)
    51  	localVarQueryParams := url.Values{}
    52  	localVarFormParams := url.Values{}
    53  
    54  	// to determine the Content-Type header
    55  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
    56  
    57  	// set Content-Type header
    58  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    59  	if localVarHttpContentType != "" {
    60  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    61  	}
    62  
    63  	// to determine the Accept header
    64  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
    65  
    66  	// set Accept header
    67  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    68  	if localVarHttpHeaderAccept != "" {
    69  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    70  	}
    71  	if ctx != nil {
    72  		// API Key Authentication
    73  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
    74  			var key string
    75  			if auth.Prefix != "" {
    76  				key = auth.Prefix + " " + auth.Key
    77  			} else {
    78  				key = auth.Key
    79  			}
    80  			localVarHeaderParams["X-API-Key"] = key
    81  			
    82  		}
    83  	}
    84  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
    85  	if err != nil {
    86  		return localVarReturnValue, nil, err
    87  	}
    88  
    89  	localVarHttpResponse, err := a.client.callAPI(r)
    90  	if err != nil || localVarHttpResponse == nil {
    91  		return localVarReturnValue, localVarHttpResponse, err
    92  	}
    93  
    94  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    95  	localVarHttpResponse.Body.Close()
    96  	if err != nil {
    97  		return localVarReturnValue, localVarHttpResponse, err
    98  	}
    99  
   100  	if localVarHttpResponse.StatusCode < 300 {
   101  		// If we succeed, return the data, otherwise pass on to decode error.
   102  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   103  		if err == nil { 
   104  			return localVarReturnValue, localVarHttpResponse, err
   105  		}
   106  	}
   107  
   108  	if localVarHttpResponse.StatusCode >= 300 {
   109  		newErr := GenericSwaggerError{
   110  			body: localVarBody,
   111  			error: localVarHttpResponse.Status,
   112  		}
   113  		
   114  		if localVarHttpResponse.StatusCode == 200 {
   115  			var v interface{}
   116  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   117  				if err != nil {
   118  					newErr.error = err.Error()
   119  					return localVarReturnValue, localVarHttpResponse, newErr
   120  				}
   121  				newErr.model = v
   122  				return localVarReturnValue, localVarHttpResponse, newErr
   123  		}
   124  		
   125  		if localVarHttpResponse.StatusCode == 403 {
   126  			var v interface{}
   127  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   128  				if err != nil {
   129  					newErr.error = err.Error()
   130  					return localVarReturnValue, localVarHttpResponse, newErr
   131  				}
   132  				newErr.model = v
   133  				return localVarReturnValue, localVarHttpResponse, newErr
   134  		}
   135  		
   136  		if localVarHttpResponse.StatusCode == 404 {
   137  			var v string
   138  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   139  				if err != nil {
   140  					newErr.error = err.Error()
   141  					return localVarReturnValue, localVarHttpResponse, newErr
   142  				}
   143  				newErr.model = v
   144  				return localVarReturnValue, localVarHttpResponse, newErr
   145  		}
   146  		
   147  		if localVarHttpResponse.StatusCode == 418 {
   148  			var v ExamplepbNumericEnum
   149  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   150  				if err != nil {
   151  					newErr.error = err.Error()
   152  					return localVarReturnValue, localVarHttpResponse, newErr
   153  				}
   154  				newErr.model = v
   155  				return localVarReturnValue, localVarHttpResponse, newErr
   156  		}
   157  		
   158  		if localVarHttpResponse.StatusCode == 500 {
   159  			var v ExamplepbErrorResponse
   160  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   161  				if err != nil {
   162  					newErr.error = err.Error()
   163  					return localVarReturnValue, localVarHttpResponse, newErr
   164  				}
   165  				newErr.model = v
   166  				return localVarReturnValue, localVarHttpResponse, newErr
   167  		}
   168  		
   169  		if localVarHttpResponse.StatusCode == 0 {
   170  			var v RuntimeError
   171  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   172  				if err != nil {
   173  					newErr.error = err.Error()
   174  					return localVarReturnValue, localVarHttpResponse, newErr
   175  				}
   176  				newErr.model = v
   177  				return localVarReturnValue, localVarHttpResponse, newErr
   178  		}
   179  		
   180  		return localVarReturnValue, localVarHttpResponse, newErr
   181  	}
   182  
   183  	return localVarReturnValue, localVarHttpResponse, nil
   184  }
   185  
   186  /* 
   187  ABitOfEverythingServiceApiService
   188   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   189   * @param singleNestedName name is nested field.
   190   * @param floatValue Float value field
   191   * @param optional nil or *ABitOfEverythingServiceCheckGetQueryParamsOpts - Optional Parameters:
   192       * @param "SingleNestedAmount" (optional.Int64) - 
   193       * @param "SingleNestedOk" (optional.String) -  DeepEnum description.   - FALSE: FALSE is false.  - TRUE: TRUE is true.
   194       * @param "Uuid" (optional.String) - 
   195       * @param "DoubleValue" (optional.Float64) - 
   196       * @param "Int64Value" (optional.String) - 
   197       * @param "Uint64Value" (optional.String) - 
   198       * @param "Int32Value" (optional.Int32) - 
   199       * @param "Fixed64Value" (optional.String) - 
   200       * @param "Fixed32Value" (optional.Int64) - 
   201       * @param "BoolValue" (optional.Bool) - 
   202       * @param "StringValue" (optional.String) - 
   203       * @param "BytesValue" (optional.String) - 
   204       * @param "Uint32Value" (optional.Int64) - 
   205       * @param "EnumValue" (optional.String) -   - ZERO: ZERO means 0  - ONE: ONE means 1
   206       * @param "PathEnumValue" (optional.String) - 
   207       * @param "NestedPathEnumValue" (optional.String) - 
   208       * @param "Sfixed32Value" (optional.Int32) - 
   209       * @param "Sfixed64Value" (optional.String) - 
   210       * @param "Sint32Value" (optional.Int32) - 
   211       * @param "Sint64Value" (optional.String) - 
   212       * @param "RepeatedStringValue" (optional.Interface of []string) - 
   213       * @param "OneofString" (optional.String) - 
   214       * @param "NonConventionalNameValue" (optional.String) - 
   215       * @param "TimestampValue" (optional.Time) - 
   216       * @param "RepeatedEnumValue" (optional.Interface of []string) -  repeated enum value. it is comma-separated in query.   - ZERO: ZERO means 0  - ONE: ONE means 1
   217       * @param "RepeatedEnumAnnotation" (optional.Interface of []string) -  Repeated numeric enum title. Repeated numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   218       * @param "EnumValueAnnotation" (optional.String) -  Numeric enum title. Numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   219       * @param "RepeatedStringAnnotation" (optional.Interface of []string) -  Repeated string title. Repeated string description.
   220       * @param "NestedAnnotationAmount" (optional.Int64) - 
   221       * @param "NestedAnnotationOk" (optional.String) -  DeepEnum description.   - FALSE: FALSE is false.  - TRUE: TRUE is true.
   222       * @param "Int64OverrideType" (optional.Int64) - 
   223  
   224  @return ExamplepbABitOfEverything
   225  */
   226  
   227  type ABitOfEverythingServiceCheckGetQueryParamsOpts struct { 
   228  	SingleNestedAmount optional.Int64
   229  	SingleNestedOk optional.String
   230  	Uuid optional.String
   231  	DoubleValue optional.Float64
   232  	Int64Value optional.String
   233  	Uint64Value optional.String
   234  	Int32Value optional.Int32
   235  	Fixed64Value optional.String
   236  	Fixed32Value optional.Int64
   237  	BoolValue optional.Bool
   238  	StringValue optional.String
   239  	BytesValue optional.String
   240  	Uint32Value optional.Int64
   241  	EnumValue optional.String
   242  	PathEnumValue optional.String
   243  	NestedPathEnumValue optional.String
   244  	Sfixed32Value optional.Int32
   245  	Sfixed64Value optional.String
   246  	Sint32Value optional.Int32
   247  	Sint64Value optional.String
   248  	RepeatedStringValue optional.Interface
   249  	OneofString optional.String
   250  	NonConventionalNameValue optional.String
   251  	TimestampValue optional.Time
   252  	RepeatedEnumValue optional.Interface
   253  	RepeatedEnumAnnotation optional.Interface
   254  	EnumValueAnnotation optional.String
   255  	RepeatedStringAnnotation optional.Interface
   256  	NestedAnnotationAmount optional.Int64
   257  	NestedAnnotationOk optional.String
   258  	Int64OverrideType optional.Int64
   259  }
   260  
   261  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCheckGetQueryParams(ctx context.Context, singleNestedName string, floatValue float32, localVarOptionals *ABitOfEverythingServiceCheckGetQueryParamsOpts) (ExamplepbABitOfEverything, *http.Response, error) {
   262  	var (
   263  		localVarHttpMethod = strings.ToUpper("Get")
   264  		localVarPostBody   interface{}
   265  		localVarFileName   string
   266  		localVarFileBytes  []byte
   267  		localVarReturnValue ExamplepbABitOfEverything
   268  	)
   269  
   270  	// create path and map variables
   271  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/params/get/{single_nested.name}"
   272  	localVarPath = strings.Replace(localVarPath, "{"+"single_nested.name"+"}", fmt.Sprintf("%v", singleNestedName), -1)
   273  
   274  	localVarHeaderParams := make(map[string]string)
   275  	localVarQueryParams := url.Values{}
   276  	localVarFormParams := url.Values{}
   277  
   278  	if localVarOptionals != nil && localVarOptionals.SingleNestedAmount.IsSet() {
   279  		localVarQueryParams.Add("single_nested.amount", parameterToString(localVarOptionals.SingleNestedAmount.Value(), ""))
   280  	}
   281  	if localVarOptionals != nil && localVarOptionals.SingleNestedOk.IsSet() {
   282  		localVarQueryParams.Add("single_nested.ok", parameterToString(localVarOptionals.SingleNestedOk.Value(), ""))
   283  	}
   284  	if localVarOptionals != nil && localVarOptionals.Uuid.IsSet() {
   285  		localVarQueryParams.Add("uuid", parameterToString(localVarOptionals.Uuid.Value(), ""))
   286  	}
   287  	localVarQueryParams.Add("float_value", parameterToString(floatValue, ""))
   288  	if localVarOptionals != nil && localVarOptionals.DoubleValue.IsSet() {
   289  		localVarQueryParams.Add("double_value", parameterToString(localVarOptionals.DoubleValue.Value(), ""))
   290  	}
   291  	if localVarOptionals != nil && localVarOptionals.Int64Value.IsSet() {
   292  		localVarQueryParams.Add("int64_value", parameterToString(localVarOptionals.Int64Value.Value(), ""))
   293  	}
   294  	if localVarOptionals != nil && localVarOptionals.Uint64Value.IsSet() {
   295  		localVarQueryParams.Add("uint64_value", parameterToString(localVarOptionals.Uint64Value.Value(), ""))
   296  	}
   297  	if localVarOptionals != nil && localVarOptionals.Int32Value.IsSet() {
   298  		localVarQueryParams.Add("int32_value", parameterToString(localVarOptionals.Int32Value.Value(), ""))
   299  	}
   300  	if localVarOptionals != nil && localVarOptionals.Fixed64Value.IsSet() {
   301  		localVarQueryParams.Add("fixed64_value", parameterToString(localVarOptionals.Fixed64Value.Value(), ""))
   302  	}
   303  	if localVarOptionals != nil && localVarOptionals.Fixed32Value.IsSet() {
   304  		localVarQueryParams.Add("fixed32_value", parameterToString(localVarOptionals.Fixed32Value.Value(), ""))
   305  	}
   306  	if localVarOptionals != nil && localVarOptionals.BoolValue.IsSet() {
   307  		localVarQueryParams.Add("bool_value", parameterToString(localVarOptionals.BoolValue.Value(), ""))
   308  	}
   309  	if localVarOptionals != nil && localVarOptionals.StringValue.IsSet() {
   310  		localVarQueryParams.Add("string_value", parameterToString(localVarOptionals.StringValue.Value(), ""))
   311  	}
   312  	if localVarOptionals != nil && localVarOptionals.BytesValue.IsSet() {
   313  		localVarQueryParams.Add("bytes_value", parameterToString(localVarOptionals.BytesValue.Value(), ""))
   314  	}
   315  	if localVarOptionals != nil && localVarOptionals.Uint32Value.IsSet() {
   316  		localVarQueryParams.Add("uint32_value", parameterToString(localVarOptionals.Uint32Value.Value(), ""))
   317  	}
   318  	if localVarOptionals != nil && localVarOptionals.EnumValue.IsSet() {
   319  		localVarQueryParams.Add("enum_value", parameterToString(localVarOptionals.EnumValue.Value(), ""))
   320  	}
   321  	if localVarOptionals != nil && localVarOptionals.PathEnumValue.IsSet() {
   322  		localVarQueryParams.Add("path_enum_value", parameterToString(localVarOptionals.PathEnumValue.Value(), ""))
   323  	}
   324  	if localVarOptionals != nil && localVarOptionals.NestedPathEnumValue.IsSet() {
   325  		localVarQueryParams.Add("nested_path_enum_value", parameterToString(localVarOptionals.NestedPathEnumValue.Value(), ""))
   326  	}
   327  	if localVarOptionals != nil && localVarOptionals.Sfixed32Value.IsSet() {
   328  		localVarQueryParams.Add("sfixed32_value", parameterToString(localVarOptionals.Sfixed32Value.Value(), ""))
   329  	}
   330  	if localVarOptionals != nil && localVarOptionals.Sfixed64Value.IsSet() {
   331  		localVarQueryParams.Add("sfixed64_value", parameterToString(localVarOptionals.Sfixed64Value.Value(), ""))
   332  	}
   333  	if localVarOptionals != nil && localVarOptionals.Sint32Value.IsSet() {
   334  		localVarQueryParams.Add("sint32_value", parameterToString(localVarOptionals.Sint32Value.Value(), ""))
   335  	}
   336  	if localVarOptionals != nil && localVarOptionals.Sint64Value.IsSet() {
   337  		localVarQueryParams.Add("sint64_value", parameterToString(localVarOptionals.Sint64Value.Value(), ""))
   338  	}
   339  	if localVarOptionals != nil && localVarOptionals.RepeatedStringValue.IsSet() {
   340  		localVarQueryParams.Add("repeated_string_value", parameterToString(localVarOptionals.RepeatedStringValue.Value(), "multi"))
   341  	}
   342  	if localVarOptionals != nil && localVarOptionals.OneofString.IsSet() {
   343  		localVarQueryParams.Add("oneof_string", parameterToString(localVarOptionals.OneofString.Value(), ""))
   344  	}
   345  	if localVarOptionals != nil && localVarOptionals.NonConventionalNameValue.IsSet() {
   346  		localVarQueryParams.Add("nonConventionalNameValue", parameterToString(localVarOptionals.NonConventionalNameValue.Value(), ""))
   347  	}
   348  	if localVarOptionals != nil && localVarOptionals.TimestampValue.IsSet() {
   349  		localVarQueryParams.Add("timestamp_value", parameterToString(localVarOptionals.TimestampValue.Value(), ""))
   350  	}
   351  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumValue.IsSet() {
   352  		localVarQueryParams.Add("repeated_enum_value", parameterToString(localVarOptionals.RepeatedEnumValue.Value(), "multi"))
   353  	}
   354  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumAnnotation.IsSet() {
   355  		localVarQueryParams.Add("repeated_enum_annotation", parameterToString(localVarOptionals.RepeatedEnumAnnotation.Value(), "multi"))
   356  	}
   357  	if localVarOptionals != nil && localVarOptionals.EnumValueAnnotation.IsSet() {
   358  		localVarQueryParams.Add("enum_value_annotation", parameterToString(localVarOptionals.EnumValueAnnotation.Value(), ""))
   359  	}
   360  	if localVarOptionals != nil && localVarOptionals.RepeatedStringAnnotation.IsSet() {
   361  		localVarQueryParams.Add("repeated_string_annotation", parameterToString(localVarOptionals.RepeatedStringAnnotation.Value(), "multi"))
   362  	}
   363  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationAmount.IsSet() {
   364  		localVarQueryParams.Add("nested_annotation.amount", parameterToString(localVarOptionals.NestedAnnotationAmount.Value(), ""))
   365  	}
   366  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationOk.IsSet() {
   367  		localVarQueryParams.Add("nested_annotation.ok", parameterToString(localVarOptionals.NestedAnnotationOk.Value(), ""))
   368  	}
   369  	if localVarOptionals != nil && localVarOptionals.Int64OverrideType.IsSet() {
   370  		localVarQueryParams.Add("int64_override_type", parameterToString(localVarOptionals.Int64OverrideType.Value(), ""))
   371  	}
   372  	// to determine the Content-Type header
   373  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
   374  
   375  	// set Content-Type header
   376  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   377  	if localVarHttpContentType != "" {
   378  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   379  	}
   380  
   381  	// to determine the Accept header
   382  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
   383  
   384  	// set Accept header
   385  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   386  	if localVarHttpHeaderAccept != "" {
   387  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   388  	}
   389  	if ctx != nil {
   390  		// API Key Authentication
   391  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
   392  			var key string
   393  			if auth.Prefix != "" {
   394  				key = auth.Prefix + " " + auth.Key
   395  			} else {
   396  				key = auth.Key
   397  			}
   398  			localVarHeaderParams["X-API-Key"] = key
   399  			
   400  		}
   401  	}
   402  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
   403  	if err != nil {
   404  		return localVarReturnValue, nil, err
   405  	}
   406  
   407  	localVarHttpResponse, err := a.client.callAPI(r)
   408  	if err != nil || localVarHttpResponse == nil {
   409  		return localVarReturnValue, localVarHttpResponse, err
   410  	}
   411  
   412  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   413  	localVarHttpResponse.Body.Close()
   414  	if err != nil {
   415  		return localVarReturnValue, localVarHttpResponse, err
   416  	}
   417  
   418  	if localVarHttpResponse.StatusCode < 300 {
   419  		// If we succeed, return the data, otherwise pass on to decode error.
   420  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   421  		if err == nil { 
   422  			return localVarReturnValue, localVarHttpResponse, err
   423  		}
   424  	}
   425  
   426  	if localVarHttpResponse.StatusCode >= 300 {
   427  		newErr := GenericSwaggerError{
   428  			body: localVarBody,
   429  			error: localVarHttpResponse.Status,
   430  		}
   431  		
   432  		if localVarHttpResponse.StatusCode == 200 {
   433  			var v ExamplepbABitOfEverything
   434  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   435  				if err != nil {
   436  					newErr.error = err.Error()
   437  					return localVarReturnValue, localVarHttpResponse, newErr
   438  				}
   439  				newErr.model = v
   440  				return localVarReturnValue, localVarHttpResponse, newErr
   441  		}
   442  		
   443  		if localVarHttpResponse.StatusCode == 403 {
   444  			var v interface{}
   445  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   446  				if err != nil {
   447  					newErr.error = err.Error()
   448  					return localVarReturnValue, localVarHttpResponse, newErr
   449  				}
   450  				newErr.model = v
   451  				return localVarReturnValue, localVarHttpResponse, newErr
   452  		}
   453  		
   454  		if localVarHttpResponse.StatusCode == 404 {
   455  			var v string
   456  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   457  				if err != nil {
   458  					newErr.error = err.Error()
   459  					return localVarReturnValue, localVarHttpResponse, newErr
   460  				}
   461  				newErr.model = v
   462  				return localVarReturnValue, localVarHttpResponse, newErr
   463  		}
   464  		
   465  		if localVarHttpResponse.StatusCode == 418 {
   466  			var v ExamplepbNumericEnum
   467  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   468  				if err != nil {
   469  					newErr.error = err.Error()
   470  					return localVarReturnValue, localVarHttpResponse, newErr
   471  				}
   472  				newErr.model = v
   473  				return localVarReturnValue, localVarHttpResponse, newErr
   474  		}
   475  		
   476  		if localVarHttpResponse.StatusCode == 500 {
   477  			var v ExamplepbErrorResponse
   478  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   479  				if err != nil {
   480  					newErr.error = err.Error()
   481  					return localVarReturnValue, localVarHttpResponse, newErr
   482  				}
   483  				newErr.model = v
   484  				return localVarReturnValue, localVarHttpResponse, newErr
   485  		}
   486  		
   487  		if localVarHttpResponse.StatusCode == 0 {
   488  			var v RuntimeError
   489  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   490  				if err != nil {
   491  					newErr.error = err.Error()
   492  					return localVarReturnValue, localVarHttpResponse, newErr
   493  				}
   494  				newErr.model = v
   495  				return localVarReturnValue, localVarHttpResponse, newErr
   496  		}
   497  		
   498  		return localVarReturnValue, localVarHttpResponse, newErr
   499  	}
   500  
   501  	return localVarReturnValue, localVarHttpResponse, nil
   502  }
   503  
   504  /* 
   505  ABitOfEverythingServiceApiService
   506   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   507   * @param singleNestedOk DeepEnum description.
   508   * @param floatValue Float value field
   509   * @param optional nil or *ABitOfEverythingServiceCheckNestedEnumGetQueryParamsOpts - Optional Parameters:
   510       * @param "SingleNestedName" (optional.String) -  name is nested field.
   511       * @param "SingleNestedAmount" (optional.Int64) - 
   512       * @param "Uuid" (optional.String) - 
   513       * @param "DoubleValue" (optional.Float64) - 
   514       * @param "Int64Value" (optional.String) - 
   515       * @param "Uint64Value" (optional.String) - 
   516       * @param "Int32Value" (optional.Int32) - 
   517       * @param "Fixed64Value" (optional.String) - 
   518       * @param "Fixed32Value" (optional.Int64) - 
   519       * @param "BoolValue" (optional.Bool) - 
   520       * @param "StringValue" (optional.String) - 
   521       * @param "BytesValue" (optional.String) - 
   522       * @param "Uint32Value" (optional.Int64) - 
   523       * @param "EnumValue" (optional.String) -   - ZERO: ZERO means 0  - ONE: ONE means 1
   524       * @param "PathEnumValue" (optional.String) - 
   525       * @param "NestedPathEnumValue" (optional.String) - 
   526       * @param "Sfixed32Value" (optional.Int32) - 
   527       * @param "Sfixed64Value" (optional.String) - 
   528       * @param "Sint32Value" (optional.Int32) - 
   529       * @param "Sint64Value" (optional.String) - 
   530       * @param "RepeatedStringValue" (optional.Interface of []string) - 
   531       * @param "OneofString" (optional.String) - 
   532       * @param "NonConventionalNameValue" (optional.String) - 
   533       * @param "TimestampValue" (optional.Time) - 
   534       * @param "RepeatedEnumValue" (optional.Interface of []string) -  repeated enum value. it is comma-separated in query.   - ZERO: ZERO means 0  - ONE: ONE means 1
   535       * @param "RepeatedEnumAnnotation" (optional.Interface of []string) -  Repeated numeric enum title. Repeated numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   536       * @param "EnumValueAnnotation" (optional.String) -  Numeric enum title. Numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   537       * @param "RepeatedStringAnnotation" (optional.Interface of []string) -  Repeated string title. Repeated string description.
   538       * @param "NestedAnnotationName" (optional.String) -  name is nested field.
   539       * @param "NestedAnnotationAmount" (optional.Int64) - 
   540       * @param "Int64OverrideType" (optional.Int64) - 
   541  
   542  @return ExamplepbABitOfEverything
   543  */
   544  
   545  type ABitOfEverythingServiceCheckNestedEnumGetQueryParamsOpts struct { 
   546  	SingleNestedName optional.String
   547  	SingleNestedAmount optional.Int64
   548  	Uuid optional.String
   549  	DoubleValue optional.Float64
   550  	Int64Value optional.String
   551  	Uint64Value optional.String
   552  	Int32Value optional.Int32
   553  	Fixed64Value optional.String
   554  	Fixed32Value optional.Int64
   555  	BoolValue optional.Bool
   556  	StringValue optional.String
   557  	BytesValue optional.String
   558  	Uint32Value optional.Int64
   559  	EnumValue optional.String
   560  	PathEnumValue optional.String
   561  	NestedPathEnumValue optional.String
   562  	Sfixed32Value optional.Int32
   563  	Sfixed64Value optional.String
   564  	Sint32Value optional.Int32
   565  	Sint64Value optional.String
   566  	RepeatedStringValue optional.Interface
   567  	OneofString optional.String
   568  	NonConventionalNameValue optional.String
   569  	TimestampValue optional.Time
   570  	RepeatedEnumValue optional.Interface
   571  	RepeatedEnumAnnotation optional.Interface
   572  	EnumValueAnnotation optional.String
   573  	RepeatedStringAnnotation optional.Interface
   574  	NestedAnnotationName optional.String
   575  	NestedAnnotationAmount optional.Int64
   576  	Int64OverrideType optional.Int64
   577  }
   578  
   579  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCheckNestedEnumGetQueryParams(ctx context.Context, singleNestedOk string, floatValue float32, localVarOptionals *ABitOfEverythingServiceCheckNestedEnumGetQueryParamsOpts) (ExamplepbABitOfEverything, *http.Response, error) {
   580  	var (
   581  		localVarHttpMethod = strings.ToUpper("Get")
   582  		localVarPostBody   interface{}
   583  		localVarFileName   string
   584  		localVarFileBytes  []byte
   585  		localVarReturnValue ExamplepbABitOfEverything
   586  	)
   587  
   588  	// create path and map variables
   589  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/params/get/nested_enum/{single_nested.ok}"
   590  	localVarPath = strings.Replace(localVarPath, "{"+"single_nested.ok"+"}", fmt.Sprintf("%v", singleNestedOk), -1)
   591  
   592  	localVarHeaderParams := make(map[string]string)
   593  	localVarQueryParams := url.Values{}
   594  	localVarFormParams := url.Values{}
   595  
   596  	if localVarOptionals != nil && localVarOptionals.SingleNestedName.IsSet() {
   597  		localVarQueryParams.Add("single_nested.name", parameterToString(localVarOptionals.SingleNestedName.Value(), ""))
   598  	}
   599  	if localVarOptionals != nil && localVarOptionals.SingleNestedAmount.IsSet() {
   600  		localVarQueryParams.Add("single_nested.amount", parameterToString(localVarOptionals.SingleNestedAmount.Value(), ""))
   601  	}
   602  	if localVarOptionals != nil && localVarOptionals.Uuid.IsSet() {
   603  		localVarQueryParams.Add("uuid", parameterToString(localVarOptionals.Uuid.Value(), ""))
   604  	}
   605  	localVarQueryParams.Add("float_value", parameterToString(floatValue, ""))
   606  	if localVarOptionals != nil && localVarOptionals.DoubleValue.IsSet() {
   607  		localVarQueryParams.Add("double_value", parameterToString(localVarOptionals.DoubleValue.Value(), ""))
   608  	}
   609  	if localVarOptionals != nil && localVarOptionals.Int64Value.IsSet() {
   610  		localVarQueryParams.Add("int64_value", parameterToString(localVarOptionals.Int64Value.Value(), ""))
   611  	}
   612  	if localVarOptionals != nil && localVarOptionals.Uint64Value.IsSet() {
   613  		localVarQueryParams.Add("uint64_value", parameterToString(localVarOptionals.Uint64Value.Value(), ""))
   614  	}
   615  	if localVarOptionals != nil && localVarOptionals.Int32Value.IsSet() {
   616  		localVarQueryParams.Add("int32_value", parameterToString(localVarOptionals.Int32Value.Value(), ""))
   617  	}
   618  	if localVarOptionals != nil && localVarOptionals.Fixed64Value.IsSet() {
   619  		localVarQueryParams.Add("fixed64_value", parameterToString(localVarOptionals.Fixed64Value.Value(), ""))
   620  	}
   621  	if localVarOptionals != nil && localVarOptionals.Fixed32Value.IsSet() {
   622  		localVarQueryParams.Add("fixed32_value", parameterToString(localVarOptionals.Fixed32Value.Value(), ""))
   623  	}
   624  	if localVarOptionals != nil && localVarOptionals.BoolValue.IsSet() {
   625  		localVarQueryParams.Add("bool_value", parameterToString(localVarOptionals.BoolValue.Value(), ""))
   626  	}
   627  	if localVarOptionals != nil && localVarOptionals.StringValue.IsSet() {
   628  		localVarQueryParams.Add("string_value", parameterToString(localVarOptionals.StringValue.Value(), ""))
   629  	}
   630  	if localVarOptionals != nil && localVarOptionals.BytesValue.IsSet() {
   631  		localVarQueryParams.Add("bytes_value", parameterToString(localVarOptionals.BytesValue.Value(), ""))
   632  	}
   633  	if localVarOptionals != nil && localVarOptionals.Uint32Value.IsSet() {
   634  		localVarQueryParams.Add("uint32_value", parameterToString(localVarOptionals.Uint32Value.Value(), ""))
   635  	}
   636  	if localVarOptionals != nil && localVarOptionals.EnumValue.IsSet() {
   637  		localVarQueryParams.Add("enum_value", parameterToString(localVarOptionals.EnumValue.Value(), ""))
   638  	}
   639  	if localVarOptionals != nil && localVarOptionals.PathEnumValue.IsSet() {
   640  		localVarQueryParams.Add("path_enum_value", parameterToString(localVarOptionals.PathEnumValue.Value(), ""))
   641  	}
   642  	if localVarOptionals != nil && localVarOptionals.NestedPathEnumValue.IsSet() {
   643  		localVarQueryParams.Add("nested_path_enum_value", parameterToString(localVarOptionals.NestedPathEnumValue.Value(), ""))
   644  	}
   645  	if localVarOptionals != nil && localVarOptionals.Sfixed32Value.IsSet() {
   646  		localVarQueryParams.Add("sfixed32_value", parameterToString(localVarOptionals.Sfixed32Value.Value(), ""))
   647  	}
   648  	if localVarOptionals != nil && localVarOptionals.Sfixed64Value.IsSet() {
   649  		localVarQueryParams.Add("sfixed64_value", parameterToString(localVarOptionals.Sfixed64Value.Value(), ""))
   650  	}
   651  	if localVarOptionals != nil && localVarOptionals.Sint32Value.IsSet() {
   652  		localVarQueryParams.Add("sint32_value", parameterToString(localVarOptionals.Sint32Value.Value(), ""))
   653  	}
   654  	if localVarOptionals != nil && localVarOptionals.Sint64Value.IsSet() {
   655  		localVarQueryParams.Add("sint64_value", parameterToString(localVarOptionals.Sint64Value.Value(), ""))
   656  	}
   657  	if localVarOptionals != nil && localVarOptionals.RepeatedStringValue.IsSet() {
   658  		localVarQueryParams.Add("repeated_string_value", parameterToString(localVarOptionals.RepeatedStringValue.Value(), "multi"))
   659  	}
   660  	if localVarOptionals != nil && localVarOptionals.OneofString.IsSet() {
   661  		localVarQueryParams.Add("oneof_string", parameterToString(localVarOptionals.OneofString.Value(), ""))
   662  	}
   663  	if localVarOptionals != nil && localVarOptionals.NonConventionalNameValue.IsSet() {
   664  		localVarQueryParams.Add("nonConventionalNameValue", parameterToString(localVarOptionals.NonConventionalNameValue.Value(), ""))
   665  	}
   666  	if localVarOptionals != nil && localVarOptionals.TimestampValue.IsSet() {
   667  		localVarQueryParams.Add("timestamp_value", parameterToString(localVarOptionals.TimestampValue.Value(), ""))
   668  	}
   669  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumValue.IsSet() {
   670  		localVarQueryParams.Add("repeated_enum_value", parameterToString(localVarOptionals.RepeatedEnumValue.Value(), "multi"))
   671  	}
   672  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumAnnotation.IsSet() {
   673  		localVarQueryParams.Add("repeated_enum_annotation", parameterToString(localVarOptionals.RepeatedEnumAnnotation.Value(), "multi"))
   674  	}
   675  	if localVarOptionals != nil && localVarOptionals.EnumValueAnnotation.IsSet() {
   676  		localVarQueryParams.Add("enum_value_annotation", parameterToString(localVarOptionals.EnumValueAnnotation.Value(), ""))
   677  	}
   678  	if localVarOptionals != nil && localVarOptionals.RepeatedStringAnnotation.IsSet() {
   679  		localVarQueryParams.Add("repeated_string_annotation", parameterToString(localVarOptionals.RepeatedStringAnnotation.Value(), "multi"))
   680  	}
   681  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationName.IsSet() {
   682  		localVarQueryParams.Add("nested_annotation.name", parameterToString(localVarOptionals.NestedAnnotationName.Value(), ""))
   683  	}
   684  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationAmount.IsSet() {
   685  		localVarQueryParams.Add("nested_annotation.amount", parameterToString(localVarOptionals.NestedAnnotationAmount.Value(), ""))
   686  	}
   687  	if localVarOptionals != nil && localVarOptionals.Int64OverrideType.IsSet() {
   688  		localVarQueryParams.Add("int64_override_type", parameterToString(localVarOptionals.Int64OverrideType.Value(), ""))
   689  	}
   690  	// to determine the Content-Type header
   691  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
   692  
   693  	// set Content-Type header
   694  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   695  	if localVarHttpContentType != "" {
   696  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   697  	}
   698  
   699  	// to determine the Accept header
   700  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
   701  
   702  	// set Accept header
   703  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   704  	if localVarHttpHeaderAccept != "" {
   705  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   706  	}
   707  	if ctx != nil {
   708  		// API Key Authentication
   709  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
   710  			var key string
   711  			if auth.Prefix != "" {
   712  				key = auth.Prefix + " " + auth.Key
   713  			} else {
   714  				key = auth.Key
   715  			}
   716  			localVarHeaderParams["X-API-Key"] = key
   717  			
   718  		}
   719  	}
   720  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
   721  	if err != nil {
   722  		return localVarReturnValue, nil, err
   723  	}
   724  
   725  	localVarHttpResponse, err := a.client.callAPI(r)
   726  	if err != nil || localVarHttpResponse == nil {
   727  		return localVarReturnValue, localVarHttpResponse, err
   728  	}
   729  
   730  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   731  	localVarHttpResponse.Body.Close()
   732  	if err != nil {
   733  		return localVarReturnValue, localVarHttpResponse, err
   734  	}
   735  
   736  	if localVarHttpResponse.StatusCode < 300 {
   737  		// If we succeed, return the data, otherwise pass on to decode error.
   738  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   739  		if err == nil { 
   740  			return localVarReturnValue, localVarHttpResponse, err
   741  		}
   742  	}
   743  
   744  	if localVarHttpResponse.StatusCode >= 300 {
   745  		newErr := GenericSwaggerError{
   746  			body: localVarBody,
   747  			error: localVarHttpResponse.Status,
   748  		}
   749  		
   750  		if localVarHttpResponse.StatusCode == 200 {
   751  			var v ExamplepbABitOfEverything
   752  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   753  				if err != nil {
   754  					newErr.error = err.Error()
   755  					return localVarReturnValue, localVarHttpResponse, newErr
   756  				}
   757  				newErr.model = v
   758  				return localVarReturnValue, localVarHttpResponse, newErr
   759  		}
   760  		
   761  		if localVarHttpResponse.StatusCode == 403 {
   762  			var v interface{}
   763  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   764  				if err != nil {
   765  					newErr.error = err.Error()
   766  					return localVarReturnValue, localVarHttpResponse, newErr
   767  				}
   768  				newErr.model = v
   769  				return localVarReturnValue, localVarHttpResponse, newErr
   770  		}
   771  		
   772  		if localVarHttpResponse.StatusCode == 404 {
   773  			var v string
   774  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   775  				if err != nil {
   776  					newErr.error = err.Error()
   777  					return localVarReturnValue, localVarHttpResponse, newErr
   778  				}
   779  				newErr.model = v
   780  				return localVarReturnValue, localVarHttpResponse, newErr
   781  		}
   782  		
   783  		if localVarHttpResponse.StatusCode == 418 {
   784  			var v ExamplepbNumericEnum
   785  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   786  				if err != nil {
   787  					newErr.error = err.Error()
   788  					return localVarReturnValue, localVarHttpResponse, newErr
   789  				}
   790  				newErr.model = v
   791  				return localVarReturnValue, localVarHttpResponse, newErr
   792  		}
   793  		
   794  		if localVarHttpResponse.StatusCode == 500 {
   795  			var v ExamplepbErrorResponse
   796  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   797  				if err != nil {
   798  					newErr.error = err.Error()
   799  					return localVarReturnValue, localVarHttpResponse, newErr
   800  				}
   801  				newErr.model = v
   802  				return localVarReturnValue, localVarHttpResponse, newErr
   803  		}
   804  		
   805  		if localVarHttpResponse.StatusCode == 0 {
   806  			var v RuntimeError
   807  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
   808  				if err != nil {
   809  					newErr.error = err.Error()
   810  					return localVarReturnValue, localVarHttpResponse, newErr
   811  				}
   812  				newErr.model = v
   813  				return localVarReturnValue, localVarHttpResponse, newErr
   814  		}
   815  		
   816  		return localVarReturnValue, localVarHttpResponse, newErr
   817  	}
   818  
   819  	return localVarReturnValue, localVarHttpResponse, nil
   820  }
   821  
   822  /* 
   823  ABitOfEverythingServiceApiService
   824   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   825   * @param stringValue
   826   * @param body
   827   * @param floatValue Float value field
   828   * @param optional nil or *ABitOfEverythingServiceCheckPostQueryParamsOpts - Optional Parameters:
   829       * @param "Uuid" (optional.String) - 
   830       * @param "DoubleValue" (optional.Float64) - 
   831       * @param "Int64Value" (optional.String) - 
   832       * @param "Uint64Value" (optional.String) - 
   833       * @param "Int32Value" (optional.Int32) - 
   834       * @param "Fixed64Value" (optional.String) - 
   835       * @param "Fixed32Value" (optional.Int64) - 
   836       * @param "BoolValue" (optional.Bool) - 
   837       * @param "BytesValue" (optional.String) - 
   838       * @param "Uint32Value" (optional.Int64) - 
   839       * @param "EnumValue" (optional.String) -   - ZERO: ZERO means 0  - ONE: ONE means 1
   840       * @param "PathEnumValue" (optional.String) - 
   841       * @param "NestedPathEnumValue" (optional.String) - 
   842       * @param "Sfixed32Value" (optional.Int32) - 
   843       * @param "Sfixed64Value" (optional.String) - 
   844       * @param "Sint32Value" (optional.Int32) - 
   845       * @param "Sint64Value" (optional.String) - 
   846       * @param "RepeatedStringValue" (optional.Interface of []string) - 
   847       * @param "OneofString" (optional.String) - 
   848       * @param "NonConventionalNameValue" (optional.String) - 
   849       * @param "TimestampValue" (optional.Time) - 
   850       * @param "RepeatedEnumValue" (optional.Interface of []string) -  repeated enum value. it is comma-separated in query.   - ZERO: ZERO means 0  - ONE: ONE means 1
   851       * @param "RepeatedEnumAnnotation" (optional.Interface of []string) -  Repeated numeric enum title. Repeated numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   852       * @param "EnumValueAnnotation" (optional.String) -  Numeric enum title. Numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
   853       * @param "RepeatedStringAnnotation" (optional.Interface of []string) -  Repeated string title. Repeated string description.
   854       * @param "NestedAnnotationName" (optional.String) -  name is nested field.
   855       * @param "NestedAnnotationAmount" (optional.Int64) - 
   856       * @param "NestedAnnotationOk" (optional.String) -  DeepEnum description.   - FALSE: FALSE is false.  - TRUE: TRUE is true.
   857       * @param "Int64OverrideType" (optional.Int64) - 
   858  
   859  @return ExamplepbABitOfEverything
   860  */
   861  
   862  type ABitOfEverythingServiceCheckPostQueryParamsOpts struct { 
   863  	Uuid optional.String
   864  	DoubleValue optional.Float64
   865  	Int64Value optional.String
   866  	Uint64Value optional.String
   867  	Int32Value optional.Int32
   868  	Fixed64Value optional.String
   869  	Fixed32Value optional.Int64
   870  	BoolValue optional.Bool
   871  	BytesValue optional.String
   872  	Uint32Value optional.Int64
   873  	EnumValue optional.String
   874  	PathEnumValue optional.String
   875  	NestedPathEnumValue optional.String
   876  	Sfixed32Value optional.Int32
   877  	Sfixed64Value optional.String
   878  	Sint32Value optional.Int32
   879  	Sint64Value optional.String
   880  	RepeatedStringValue optional.Interface
   881  	OneofString optional.String
   882  	NonConventionalNameValue optional.String
   883  	TimestampValue optional.Time
   884  	RepeatedEnumValue optional.Interface
   885  	RepeatedEnumAnnotation optional.Interface
   886  	EnumValueAnnotation optional.String
   887  	RepeatedStringAnnotation optional.Interface
   888  	NestedAnnotationName optional.String
   889  	NestedAnnotationAmount optional.Int64
   890  	NestedAnnotationOk optional.String
   891  	Int64OverrideType optional.Int64
   892  }
   893  
   894  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCheckPostQueryParams(ctx context.Context, stringValue string, body ABitOfEverythingNested, floatValue float32, localVarOptionals *ABitOfEverythingServiceCheckPostQueryParamsOpts) (ExamplepbABitOfEverything, *http.Response, error) {
   895  	var (
   896  		localVarHttpMethod = strings.ToUpper("Post")
   897  		localVarPostBody   interface{}
   898  		localVarFileName   string
   899  		localVarFileBytes  []byte
   900  		localVarReturnValue ExamplepbABitOfEverything
   901  	)
   902  
   903  	// create path and map variables
   904  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/params/post/{string_value}"
   905  	localVarPath = strings.Replace(localVarPath, "{"+"string_value"+"}", fmt.Sprintf("%v", stringValue), -1)
   906  
   907  	localVarHeaderParams := make(map[string]string)
   908  	localVarQueryParams := url.Values{}
   909  	localVarFormParams := url.Values{}
   910  
   911  	if localVarOptionals != nil && localVarOptionals.Uuid.IsSet() {
   912  		localVarQueryParams.Add("uuid", parameterToString(localVarOptionals.Uuid.Value(), ""))
   913  	}
   914  	localVarQueryParams.Add("float_value", parameterToString(floatValue, ""))
   915  	if localVarOptionals != nil && localVarOptionals.DoubleValue.IsSet() {
   916  		localVarQueryParams.Add("double_value", parameterToString(localVarOptionals.DoubleValue.Value(), ""))
   917  	}
   918  	if localVarOptionals != nil && localVarOptionals.Int64Value.IsSet() {
   919  		localVarQueryParams.Add("int64_value", parameterToString(localVarOptionals.Int64Value.Value(), ""))
   920  	}
   921  	if localVarOptionals != nil && localVarOptionals.Uint64Value.IsSet() {
   922  		localVarQueryParams.Add("uint64_value", parameterToString(localVarOptionals.Uint64Value.Value(), ""))
   923  	}
   924  	if localVarOptionals != nil && localVarOptionals.Int32Value.IsSet() {
   925  		localVarQueryParams.Add("int32_value", parameterToString(localVarOptionals.Int32Value.Value(), ""))
   926  	}
   927  	if localVarOptionals != nil && localVarOptionals.Fixed64Value.IsSet() {
   928  		localVarQueryParams.Add("fixed64_value", parameterToString(localVarOptionals.Fixed64Value.Value(), ""))
   929  	}
   930  	if localVarOptionals != nil && localVarOptionals.Fixed32Value.IsSet() {
   931  		localVarQueryParams.Add("fixed32_value", parameterToString(localVarOptionals.Fixed32Value.Value(), ""))
   932  	}
   933  	if localVarOptionals != nil && localVarOptionals.BoolValue.IsSet() {
   934  		localVarQueryParams.Add("bool_value", parameterToString(localVarOptionals.BoolValue.Value(), ""))
   935  	}
   936  	if localVarOptionals != nil && localVarOptionals.BytesValue.IsSet() {
   937  		localVarQueryParams.Add("bytes_value", parameterToString(localVarOptionals.BytesValue.Value(), ""))
   938  	}
   939  	if localVarOptionals != nil && localVarOptionals.Uint32Value.IsSet() {
   940  		localVarQueryParams.Add("uint32_value", parameterToString(localVarOptionals.Uint32Value.Value(), ""))
   941  	}
   942  	if localVarOptionals != nil && localVarOptionals.EnumValue.IsSet() {
   943  		localVarQueryParams.Add("enum_value", parameterToString(localVarOptionals.EnumValue.Value(), ""))
   944  	}
   945  	if localVarOptionals != nil && localVarOptionals.PathEnumValue.IsSet() {
   946  		localVarQueryParams.Add("path_enum_value", parameterToString(localVarOptionals.PathEnumValue.Value(), ""))
   947  	}
   948  	if localVarOptionals != nil && localVarOptionals.NestedPathEnumValue.IsSet() {
   949  		localVarQueryParams.Add("nested_path_enum_value", parameterToString(localVarOptionals.NestedPathEnumValue.Value(), ""))
   950  	}
   951  	if localVarOptionals != nil && localVarOptionals.Sfixed32Value.IsSet() {
   952  		localVarQueryParams.Add("sfixed32_value", parameterToString(localVarOptionals.Sfixed32Value.Value(), ""))
   953  	}
   954  	if localVarOptionals != nil && localVarOptionals.Sfixed64Value.IsSet() {
   955  		localVarQueryParams.Add("sfixed64_value", parameterToString(localVarOptionals.Sfixed64Value.Value(), ""))
   956  	}
   957  	if localVarOptionals != nil && localVarOptionals.Sint32Value.IsSet() {
   958  		localVarQueryParams.Add("sint32_value", parameterToString(localVarOptionals.Sint32Value.Value(), ""))
   959  	}
   960  	if localVarOptionals != nil && localVarOptionals.Sint64Value.IsSet() {
   961  		localVarQueryParams.Add("sint64_value", parameterToString(localVarOptionals.Sint64Value.Value(), ""))
   962  	}
   963  	if localVarOptionals != nil && localVarOptionals.RepeatedStringValue.IsSet() {
   964  		localVarQueryParams.Add("repeated_string_value", parameterToString(localVarOptionals.RepeatedStringValue.Value(), "multi"))
   965  	}
   966  	if localVarOptionals != nil && localVarOptionals.OneofString.IsSet() {
   967  		localVarQueryParams.Add("oneof_string", parameterToString(localVarOptionals.OneofString.Value(), ""))
   968  	}
   969  	if localVarOptionals != nil && localVarOptionals.NonConventionalNameValue.IsSet() {
   970  		localVarQueryParams.Add("nonConventionalNameValue", parameterToString(localVarOptionals.NonConventionalNameValue.Value(), ""))
   971  	}
   972  	if localVarOptionals != nil && localVarOptionals.TimestampValue.IsSet() {
   973  		localVarQueryParams.Add("timestamp_value", parameterToString(localVarOptionals.TimestampValue.Value(), ""))
   974  	}
   975  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumValue.IsSet() {
   976  		localVarQueryParams.Add("repeated_enum_value", parameterToString(localVarOptionals.RepeatedEnumValue.Value(), "multi"))
   977  	}
   978  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumAnnotation.IsSet() {
   979  		localVarQueryParams.Add("repeated_enum_annotation", parameterToString(localVarOptionals.RepeatedEnumAnnotation.Value(), "multi"))
   980  	}
   981  	if localVarOptionals != nil && localVarOptionals.EnumValueAnnotation.IsSet() {
   982  		localVarQueryParams.Add("enum_value_annotation", parameterToString(localVarOptionals.EnumValueAnnotation.Value(), ""))
   983  	}
   984  	if localVarOptionals != nil && localVarOptionals.RepeatedStringAnnotation.IsSet() {
   985  		localVarQueryParams.Add("repeated_string_annotation", parameterToString(localVarOptionals.RepeatedStringAnnotation.Value(), "multi"))
   986  	}
   987  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationName.IsSet() {
   988  		localVarQueryParams.Add("nested_annotation.name", parameterToString(localVarOptionals.NestedAnnotationName.Value(), ""))
   989  	}
   990  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationAmount.IsSet() {
   991  		localVarQueryParams.Add("nested_annotation.amount", parameterToString(localVarOptionals.NestedAnnotationAmount.Value(), ""))
   992  	}
   993  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationOk.IsSet() {
   994  		localVarQueryParams.Add("nested_annotation.ok", parameterToString(localVarOptionals.NestedAnnotationOk.Value(), ""))
   995  	}
   996  	if localVarOptionals != nil && localVarOptionals.Int64OverrideType.IsSet() {
   997  		localVarQueryParams.Add("int64_override_type", parameterToString(localVarOptionals.Int64OverrideType.Value(), ""))
   998  	}
   999  	// to determine the Content-Type header
  1000  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1001  
  1002  	// set Content-Type header
  1003  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1004  	if localVarHttpContentType != "" {
  1005  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1006  	}
  1007  
  1008  	// to determine the Accept header
  1009  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1010  
  1011  	// set Accept header
  1012  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1013  	if localVarHttpHeaderAccept != "" {
  1014  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1015  	}
  1016  	// body params
  1017  	localVarPostBody = &body
  1018  	if ctx != nil {
  1019  		// API Key Authentication
  1020  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1021  			var key string
  1022  			if auth.Prefix != "" {
  1023  				key = auth.Prefix + " " + auth.Key
  1024  			} else {
  1025  				key = auth.Key
  1026  			}
  1027  			localVarHeaderParams["X-API-Key"] = key
  1028  			
  1029  		}
  1030  	}
  1031  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1032  	if err != nil {
  1033  		return localVarReturnValue, nil, err
  1034  	}
  1035  
  1036  	localVarHttpResponse, err := a.client.callAPI(r)
  1037  	if err != nil || localVarHttpResponse == nil {
  1038  		return localVarReturnValue, localVarHttpResponse, err
  1039  	}
  1040  
  1041  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1042  	localVarHttpResponse.Body.Close()
  1043  	if err != nil {
  1044  		return localVarReturnValue, localVarHttpResponse, err
  1045  	}
  1046  
  1047  	if localVarHttpResponse.StatusCode < 300 {
  1048  		// If we succeed, return the data, otherwise pass on to decode error.
  1049  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1050  		if err == nil { 
  1051  			return localVarReturnValue, localVarHttpResponse, err
  1052  		}
  1053  	}
  1054  
  1055  	if localVarHttpResponse.StatusCode >= 300 {
  1056  		newErr := GenericSwaggerError{
  1057  			body: localVarBody,
  1058  			error: localVarHttpResponse.Status,
  1059  		}
  1060  		
  1061  		if localVarHttpResponse.StatusCode == 200 {
  1062  			var v ExamplepbABitOfEverything
  1063  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1064  				if err != nil {
  1065  					newErr.error = err.Error()
  1066  					return localVarReturnValue, localVarHttpResponse, newErr
  1067  				}
  1068  				newErr.model = v
  1069  				return localVarReturnValue, localVarHttpResponse, newErr
  1070  		}
  1071  		
  1072  		if localVarHttpResponse.StatusCode == 403 {
  1073  			var v interface{}
  1074  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1075  				if err != nil {
  1076  					newErr.error = err.Error()
  1077  					return localVarReturnValue, localVarHttpResponse, newErr
  1078  				}
  1079  				newErr.model = v
  1080  				return localVarReturnValue, localVarHttpResponse, newErr
  1081  		}
  1082  		
  1083  		if localVarHttpResponse.StatusCode == 404 {
  1084  			var v string
  1085  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1086  				if err != nil {
  1087  					newErr.error = err.Error()
  1088  					return localVarReturnValue, localVarHttpResponse, newErr
  1089  				}
  1090  				newErr.model = v
  1091  				return localVarReturnValue, localVarHttpResponse, newErr
  1092  		}
  1093  		
  1094  		if localVarHttpResponse.StatusCode == 418 {
  1095  			var v ExamplepbNumericEnum
  1096  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1097  				if err != nil {
  1098  					newErr.error = err.Error()
  1099  					return localVarReturnValue, localVarHttpResponse, newErr
  1100  				}
  1101  				newErr.model = v
  1102  				return localVarReturnValue, localVarHttpResponse, newErr
  1103  		}
  1104  		
  1105  		if localVarHttpResponse.StatusCode == 500 {
  1106  			var v ExamplepbErrorResponse
  1107  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1108  				if err != nil {
  1109  					newErr.error = err.Error()
  1110  					return localVarReturnValue, localVarHttpResponse, newErr
  1111  				}
  1112  				newErr.model = v
  1113  				return localVarReturnValue, localVarHttpResponse, newErr
  1114  		}
  1115  		
  1116  		if localVarHttpResponse.StatusCode == 0 {
  1117  			var v RuntimeError
  1118  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1119  				if err != nil {
  1120  					newErr.error = err.Error()
  1121  					return localVarReturnValue, localVarHttpResponse, newErr
  1122  				}
  1123  				newErr.model = v
  1124  				return localVarReturnValue, localVarHttpResponse, newErr
  1125  		}
  1126  		
  1127  		return localVarReturnValue, localVarHttpResponse, newErr
  1128  	}
  1129  
  1130  	return localVarReturnValue, localVarHttpResponse, nil
  1131  }
  1132  
  1133  /* 
  1134  ABitOfEverythingServiceApiService Create a new ABitOfEverything
  1135  This API creates a new ABitOfEverything
  1136   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1137   * @param floatValue Float value field
  1138   * @param doubleValue
  1139   * @param int64Value
  1140   * @param uint64Value
  1141   * @param int32Value
  1142   * @param fixed64Value
  1143   * @param fixed32Value
  1144   * @param boolValue
  1145   * @param stringValue
  1146   * @param uint32Value
  1147   * @param sfixed32Value
  1148   * @param sfixed64Value
  1149   * @param sint32Value
  1150   * @param sint64Value
  1151   * @param nonConventionalNameValue
  1152   * @param enumValue
  1153   * @param pathEnumValue
  1154   * @param nestedPathEnumValue
  1155   * @param enumValueAnnotation Numeric enum description.
  1156  
  1157  @return ExamplepbABitOfEverything
  1158  */
  1159  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCreate(ctx context.Context, floatValue float32, doubleValue float64, int64Value string, uint64Value string, int32Value int32, fixed64Value string, fixed32Value int64, boolValue bool, stringValue string, uint32Value int64, sfixed32Value int32, sfixed64Value string, sint32Value int32, sint64Value string, nonConventionalNameValue string, enumValue string, pathEnumValue string, nestedPathEnumValue string, enumValueAnnotation string) (ExamplepbABitOfEverything, *http.Response, error) {
  1160  	var (
  1161  		localVarHttpMethod = strings.ToUpper("Post")
  1162  		localVarPostBody   interface{}
  1163  		localVarFileName   string
  1164  		localVarFileBytes  []byte
  1165  		localVarReturnValue ExamplepbABitOfEverything
  1166  	)
  1167  
  1168  	// create path and map variables
  1169  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{enum_value_annotation}"
  1170  	localVarPath = strings.Replace(localVarPath, "{"+"float_value"+"}", fmt.Sprintf("%v", floatValue), -1)
  1171  	localVarPath = strings.Replace(localVarPath, "{"+"double_value"+"}", fmt.Sprintf("%v", doubleValue), -1)
  1172  	localVarPath = strings.Replace(localVarPath, "{"+"int64_value"+"}", fmt.Sprintf("%v", int64Value), -1)
  1173  	localVarPath = strings.Replace(localVarPath, "{"+"uint64_value"+"}", fmt.Sprintf("%v", uint64Value), -1)
  1174  	localVarPath = strings.Replace(localVarPath, "{"+"int32_value"+"}", fmt.Sprintf("%v", int32Value), -1)
  1175  	localVarPath = strings.Replace(localVarPath, "{"+"fixed64_value"+"}", fmt.Sprintf("%v", fixed64Value), -1)
  1176  	localVarPath = strings.Replace(localVarPath, "{"+"fixed32_value"+"}", fmt.Sprintf("%v", fixed32Value), -1)
  1177  	localVarPath = strings.Replace(localVarPath, "{"+"bool_value"+"}", fmt.Sprintf("%v", boolValue), -1)
  1178  	localVarPath = strings.Replace(localVarPath, "{"+"string_value"+"}", fmt.Sprintf("%v", stringValue), -1)
  1179  	localVarPath = strings.Replace(localVarPath, "{"+"uint32_value"+"}", fmt.Sprintf("%v", uint32Value), -1)
  1180  	localVarPath = strings.Replace(localVarPath, "{"+"sfixed32_value"+"}", fmt.Sprintf("%v", sfixed32Value), -1)
  1181  	localVarPath = strings.Replace(localVarPath, "{"+"sfixed64_value"+"}", fmt.Sprintf("%v", sfixed64Value), -1)
  1182  	localVarPath = strings.Replace(localVarPath, "{"+"sint32_value"+"}", fmt.Sprintf("%v", sint32Value), -1)
  1183  	localVarPath = strings.Replace(localVarPath, "{"+"sint64_value"+"}", fmt.Sprintf("%v", sint64Value), -1)
  1184  	localVarPath = strings.Replace(localVarPath, "{"+"nonConventionalNameValue"+"}", fmt.Sprintf("%v", nonConventionalNameValue), -1)
  1185  	localVarPath = strings.Replace(localVarPath, "{"+"enum_value"+"}", fmt.Sprintf("%v", enumValue), -1)
  1186  	localVarPath = strings.Replace(localVarPath, "{"+"path_enum_value"+"}", fmt.Sprintf("%v", pathEnumValue), -1)
  1187  	localVarPath = strings.Replace(localVarPath, "{"+"nested_path_enum_value"+"}", fmt.Sprintf("%v", nestedPathEnumValue), -1)
  1188  	localVarPath = strings.Replace(localVarPath, "{"+"enum_value_annotation"+"}", fmt.Sprintf("%v", enumValueAnnotation), -1)
  1189  
  1190  	localVarHeaderParams := make(map[string]string)
  1191  	localVarQueryParams := url.Values{}
  1192  	localVarFormParams := url.Values{}
  1193  
  1194  	// to determine the Content-Type header
  1195  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1196  
  1197  	// set Content-Type header
  1198  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1199  	if localVarHttpContentType != "" {
  1200  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1201  	}
  1202  
  1203  	// to determine the Accept header
  1204  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1205  
  1206  	// set Accept header
  1207  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1208  	if localVarHttpHeaderAccept != "" {
  1209  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1210  	}
  1211  	if ctx != nil {
  1212  		// API Key Authentication
  1213  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1214  			var key string
  1215  			if auth.Prefix != "" {
  1216  				key = auth.Prefix + " " + auth.Key
  1217  			} else {
  1218  				key = auth.Key
  1219  			}
  1220  			localVarHeaderParams["X-API-Key"] = key
  1221  			
  1222  		}
  1223  	}
  1224  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1225  	if err != nil {
  1226  		return localVarReturnValue, nil, err
  1227  	}
  1228  
  1229  	localVarHttpResponse, err := a.client.callAPI(r)
  1230  	if err != nil || localVarHttpResponse == nil {
  1231  		return localVarReturnValue, localVarHttpResponse, err
  1232  	}
  1233  
  1234  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1235  	localVarHttpResponse.Body.Close()
  1236  	if err != nil {
  1237  		return localVarReturnValue, localVarHttpResponse, err
  1238  	}
  1239  
  1240  	if localVarHttpResponse.StatusCode < 300 {
  1241  		// If we succeed, return the data, otherwise pass on to decode error.
  1242  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1243  		if err == nil { 
  1244  			return localVarReturnValue, localVarHttpResponse, err
  1245  		}
  1246  	}
  1247  
  1248  	if localVarHttpResponse.StatusCode >= 300 {
  1249  		newErr := GenericSwaggerError{
  1250  			body: localVarBody,
  1251  			error: localVarHttpResponse.Status,
  1252  		}
  1253  		
  1254  		if localVarHttpResponse.StatusCode == 200 {
  1255  			var v ExamplepbABitOfEverything
  1256  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1257  				if err != nil {
  1258  					newErr.error = err.Error()
  1259  					return localVarReturnValue, localVarHttpResponse, newErr
  1260  				}
  1261  				newErr.model = v
  1262  				return localVarReturnValue, localVarHttpResponse, newErr
  1263  		}
  1264  		
  1265  		if localVarHttpResponse.StatusCode == 403 {
  1266  			var v interface{}
  1267  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1268  				if err != nil {
  1269  					newErr.error = err.Error()
  1270  					return localVarReturnValue, localVarHttpResponse, newErr
  1271  				}
  1272  				newErr.model = v
  1273  				return localVarReturnValue, localVarHttpResponse, newErr
  1274  		}
  1275  		
  1276  		if localVarHttpResponse.StatusCode == 404 {
  1277  			var v string
  1278  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1279  				if err != nil {
  1280  					newErr.error = err.Error()
  1281  					return localVarReturnValue, localVarHttpResponse, newErr
  1282  				}
  1283  				newErr.model = v
  1284  				return localVarReturnValue, localVarHttpResponse, newErr
  1285  		}
  1286  		
  1287  		if localVarHttpResponse.StatusCode == 418 {
  1288  			var v ExamplepbNumericEnum
  1289  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1290  				if err != nil {
  1291  					newErr.error = err.Error()
  1292  					return localVarReturnValue, localVarHttpResponse, newErr
  1293  				}
  1294  				newErr.model = v
  1295  				return localVarReturnValue, localVarHttpResponse, newErr
  1296  		}
  1297  		
  1298  		if localVarHttpResponse.StatusCode == 500 {
  1299  			var v ExamplepbErrorResponse
  1300  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1301  				if err != nil {
  1302  					newErr.error = err.Error()
  1303  					return localVarReturnValue, localVarHttpResponse, newErr
  1304  				}
  1305  				newErr.model = v
  1306  				return localVarReturnValue, localVarHttpResponse, newErr
  1307  		}
  1308  		
  1309  		if localVarHttpResponse.StatusCode == 0 {
  1310  			var v RuntimeError
  1311  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1312  				if err != nil {
  1313  					newErr.error = err.Error()
  1314  					return localVarReturnValue, localVarHttpResponse, newErr
  1315  				}
  1316  				newErr.model = v
  1317  				return localVarReturnValue, localVarHttpResponse, newErr
  1318  		}
  1319  		
  1320  		return localVarReturnValue, localVarHttpResponse, newErr
  1321  	}
  1322  
  1323  	return localVarReturnValue, localVarHttpResponse, nil
  1324  }
  1325  
  1326  /* 
  1327  ABitOfEverythingServiceApiService
  1328   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1329   * @param body
  1330  
  1331  @return ExamplepbABitOfEverything
  1332  */
  1333  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCreateBody(ctx context.Context, body ExamplepbABitOfEverything) (ExamplepbABitOfEverything, *http.Response, error) {
  1334  	var (
  1335  		localVarHttpMethod = strings.ToUpper("Post")
  1336  		localVarPostBody   interface{}
  1337  		localVarFileName   string
  1338  		localVarFileBytes  []byte
  1339  		localVarReturnValue ExamplepbABitOfEverything
  1340  	)
  1341  
  1342  	// create path and map variables
  1343  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything"
  1344  
  1345  	localVarHeaderParams := make(map[string]string)
  1346  	localVarQueryParams := url.Values{}
  1347  	localVarFormParams := url.Values{}
  1348  
  1349  	// to determine the Content-Type header
  1350  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1351  
  1352  	// set Content-Type header
  1353  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1354  	if localVarHttpContentType != "" {
  1355  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1356  	}
  1357  
  1358  	// to determine the Accept header
  1359  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1360  
  1361  	// set Accept header
  1362  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1363  	if localVarHttpHeaderAccept != "" {
  1364  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1365  	}
  1366  	// body params
  1367  	localVarPostBody = &body
  1368  	if ctx != nil {
  1369  		// API Key Authentication
  1370  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1371  			var key string
  1372  			if auth.Prefix != "" {
  1373  				key = auth.Prefix + " " + auth.Key
  1374  			} else {
  1375  				key = auth.Key
  1376  			}
  1377  			localVarHeaderParams["X-API-Key"] = key
  1378  			
  1379  		}
  1380  	}
  1381  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1382  	if err != nil {
  1383  		return localVarReturnValue, nil, err
  1384  	}
  1385  
  1386  	localVarHttpResponse, err := a.client.callAPI(r)
  1387  	if err != nil || localVarHttpResponse == nil {
  1388  		return localVarReturnValue, localVarHttpResponse, err
  1389  	}
  1390  
  1391  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1392  	localVarHttpResponse.Body.Close()
  1393  	if err != nil {
  1394  		return localVarReturnValue, localVarHttpResponse, err
  1395  	}
  1396  
  1397  	if localVarHttpResponse.StatusCode < 300 {
  1398  		// If we succeed, return the data, otherwise pass on to decode error.
  1399  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1400  		if err == nil { 
  1401  			return localVarReturnValue, localVarHttpResponse, err
  1402  		}
  1403  	}
  1404  
  1405  	if localVarHttpResponse.StatusCode >= 300 {
  1406  		newErr := GenericSwaggerError{
  1407  			body: localVarBody,
  1408  			error: localVarHttpResponse.Status,
  1409  		}
  1410  		
  1411  		if localVarHttpResponse.StatusCode == 200 {
  1412  			var v ExamplepbABitOfEverything
  1413  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1414  				if err != nil {
  1415  					newErr.error = err.Error()
  1416  					return localVarReturnValue, localVarHttpResponse, newErr
  1417  				}
  1418  				newErr.model = v
  1419  				return localVarReturnValue, localVarHttpResponse, newErr
  1420  		}
  1421  		
  1422  		if localVarHttpResponse.StatusCode == 403 {
  1423  			var v interface{}
  1424  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1425  				if err != nil {
  1426  					newErr.error = err.Error()
  1427  					return localVarReturnValue, localVarHttpResponse, newErr
  1428  				}
  1429  				newErr.model = v
  1430  				return localVarReturnValue, localVarHttpResponse, newErr
  1431  		}
  1432  		
  1433  		if localVarHttpResponse.StatusCode == 404 {
  1434  			var v string
  1435  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1436  				if err != nil {
  1437  					newErr.error = err.Error()
  1438  					return localVarReturnValue, localVarHttpResponse, newErr
  1439  				}
  1440  				newErr.model = v
  1441  				return localVarReturnValue, localVarHttpResponse, newErr
  1442  		}
  1443  		
  1444  		if localVarHttpResponse.StatusCode == 418 {
  1445  			var v ExamplepbNumericEnum
  1446  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1447  				if err != nil {
  1448  					newErr.error = err.Error()
  1449  					return localVarReturnValue, localVarHttpResponse, newErr
  1450  				}
  1451  				newErr.model = v
  1452  				return localVarReturnValue, localVarHttpResponse, newErr
  1453  		}
  1454  		
  1455  		if localVarHttpResponse.StatusCode == 500 {
  1456  			var v ExamplepbErrorResponse
  1457  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1458  				if err != nil {
  1459  					newErr.error = err.Error()
  1460  					return localVarReturnValue, localVarHttpResponse, newErr
  1461  				}
  1462  				newErr.model = v
  1463  				return localVarReturnValue, localVarHttpResponse, newErr
  1464  		}
  1465  		
  1466  		if localVarHttpResponse.StatusCode == 0 {
  1467  			var v RuntimeError
  1468  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1469  				if err != nil {
  1470  					newErr.error = err.Error()
  1471  					return localVarReturnValue, localVarHttpResponse, newErr
  1472  				}
  1473  				newErr.model = v
  1474  				return localVarReturnValue, localVarHttpResponse, newErr
  1475  		}
  1476  		
  1477  		return localVarReturnValue, localVarHttpResponse, newErr
  1478  	}
  1479  
  1480  	return localVarReturnValue, localVarHttpResponse, nil
  1481  }
  1482  
  1483  /* 
  1484  ABitOfEverythingServiceApiService Create a book.
  1485   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1486   * @param parent The publisher in which to create the book.  Format: &#x60;publishers/{publisher}&#x60;  Example: &#x60;publishers/1257894000000000000&#x60;
  1487   * @param body The book to create.
  1488   * @param optional nil or *ABitOfEverythingServiceCreateBookOpts - Optional Parameters:
  1489       * @param "BookId" (optional.String) -  The ID to use for the book.  This must start with an alphanumeric character.
  1490  
  1491  @return ExamplepbBook
  1492  */
  1493  
  1494  type ABitOfEverythingServiceCreateBookOpts struct { 
  1495  	BookId optional.String
  1496  }
  1497  
  1498  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceCreateBook(ctx context.Context, parent string, body ExamplepbBook, localVarOptionals *ABitOfEverythingServiceCreateBookOpts) (ExamplepbBook, *http.Response, error) {
  1499  	var (
  1500  		localVarHttpMethod = strings.ToUpper("Post")
  1501  		localVarPostBody   interface{}
  1502  		localVarFileName   string
  1503  		localVarFileBytes  []byte
  1504  		localVarReturnValue ExamplepbBook
  1505  	)
  1506  
  1507  	// create path and map variables
  1508  	localVarPath := a.client.cfg.BasePath + "/v1/{parent=publishers/*}/books"
  1509  	localVarPath = strings.Replace(localVarPath, "{"+"parent"+"}", fmt.Sprintf("%v", parent), -1)
  1510  
  1511  	localVarHeaderParams := make(map[string]string)
  1512  	localVarQueryParams := url.Values{}
  1513  	localVarFormParams := url.Values{}
  1514  
  1515  	if localVarOptionals != nil && localVarOptionals.BookId.IsSet() {
  1516  		localVarQueryParams.Add("book_id", parameterToString(localVarOptionals.BookId.Value(), ""))
  1517  	}
  1518  	// to determine the Content-Type header
  1519  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1520  
  1521  	// set Content-Type header
  1522  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1523  	if localVarHttpContentType != "" {
  1524  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1525  	}
  1526  
  1527  	// to determine the Accept header
  1528  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1529  
  1530  	// set Accept header
  1531  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1532  	if localVarHttpHeaderAccept != "" {
  1533  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1534  	}
  1535  	// body params
  1536  	localVarPostBody = &body
  1537  	if ctx != nil {
  1538  		// API Key Authentication
  1539  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1540  			var key string
  1541  			if auth.Prefix != "" {
  1542  				key = auth.Prefix + " " + auth.Key
  1543  			} else {
  1544  				key = auth.Key
  1545  			}
  1546  			localVarHeaderParams["X-API-Key"] = key
  1547  			
  1548  		}
  1549  	}
  1550  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1551  	if err != nil {
  1552  		return localVarReturnValue, nil, err
  1553  	}
  1554  
  1555  	localVarHttpResponse, err := a.client.callAPI(r)
  1556  	if err != nil || localVarHttpResponse == nil {
  1557  		return localVarReturnValue, localVarHttpResponse, err
  1558  	}
  1559  
  1560  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1561  	localVarHttpResponse.Body.Close()
  1562  	if err != nil {
  1563  		return localVarReturnValue, localVarHttpResponse, err
  1564  	}
  1565  
  1566  	if localVarHttpResponse.StatusCode < 300 {
  1567  		// If we succeed, return the data, otherwise pass on to decode error.
  1568  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1569  		if err == nil { 
  1570  			return localVarReturnValue, localVarHttpResponse, err
  1571  		}
  1572  	}
  1573  
  1574  	if localVarHttpResponse.StatusCode >= 300 {
  1575  		newErr := GenericSwaggerError{
  1576  			body: localVarBody,
  1577  			error: localVarHttpResponse.Status,
  1578  		}
  1579  		
  1580  		if localVarHttpResponse.StatusCode == 200 {
  1581  			var v ExamplepbBook
  1582  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1583  				if err != nil {
  1584  					newErr.error = err.Error()
  1585  					return localVarReturnValue, localVarHttpResponse, newErr
  1586  				}
  1587  				newErr.model = v
  1588  				return localVarReturnValue, localVarHttpResponse, newErr
  1589  		}
  1590  		
  1591  		if localVarHttpResponse.StatusCode == 403 {
  1592  			var v interface{}
  1593  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1594  				if err != nil {
  1595  					newErr.error = err.Error()
  1596  					return localVarReturnValue, localVarHttpResponse, newErr
  1597  				}
  1598  				newErr.model = v
  1599  				return localVarReturnValue, localVarHttpResponse, newErr
  1600  		}
  1601  		
  1602  		if localVarHttpResponse.StatusCode == 404 {
  1603  			var v string
  1604  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1605  				if err != nil {
  1606  					newErr.error = err.Error()
  1607  					return localVarReturnValue, localVarHttpResponse, newErr
  1608  				}
  1609  				newErr.model = v
  1610  				return localVarReturnValue, localVarHttpResponse, newErr
  1611  		}
  1612  		
  1613  		if localVarHttpResponse.StatusCode == 418 {
  1614  			var v ExamplepbNumericEnum
  1615  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1616  				if err != nil {
  1617  					newErr.error = err.Error()
  1618  					return localVarReturnValue, localVarHttpResponse, newErr
  1619  				}
  1620  				newErr.model = v
  1621  				return localVarReturnValue, localVarHttpResponse, newErr
  1622  		}
  1623  		
  1624  		if localVarHttpResponse.StatusCode == 500 {
  1625  			var v ExamplepbErrorResponse
  1626  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1627  				if err != nil {
  1628  					newErr.error = err.Error()
  1629  					return localVarReturnValue, localVarHttpResponse, newErr
  1630  				}
  1631  				newErr.model = v
  1632  				return localVarReturnValue, localVarHttpResponse, newErr
  1633  		}
  1634  		
  1635  		if localVarHttpResponse.StatusCode == 0 {
  1636  			var v RuntimeError
  1637  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1638  				if err != nil {
  1639  					newErr.error = err.Error()
  1640  					return localVarReturnValue, localVarHttpResponse, newErr
  1641  				}
  1642  				newErr.model = v
  1643  				return localVarReturnValue, localVarHttpResponse, newErr
  1644  		}
  1645  		
  1646  		return localVarReturnValue, localVarHttpResponse, newErr
  1647  	}
  1648  
  1649  	return localVarReturnValue, localVarHttpResponse, nil
  1650  }
  1651  
  1652  /* 
  1653  ABitOfEverythingServiceApiService
  1654   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1655   * @param singleNestedName name is nested field.
  1656   * @param body
  1657  
  1658  @return ExamplepbABitOfEverything
  1659  */
  1660  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceDeepPathEcho(ctx context.Context, singleNestedName string, body ExamplepbABitOfEverything) (ExamplepbABitOfEverything, *http.Response, error) {
  1661  	var (
  1662  		localVarHttpMethod = strings.ToUpper("Post")
  1663  		localVarPostBody   interface{}
  1664  		localVarFileName   string
  1665  		localVarFileBytes  []byte
  1666  		localVarReturnValue ExamplepbABitOfEverything
  1667  	)
  1668  
  1669  	// create path and map variables
  1670  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/{single_nested.name}"
  1671  	localVarPath = strings.Replace(localVarPath, "{"+"single_nested.name"+"}", fmt.Sprintf("%v", singleNestedName), -1)
  1672  
  1673  	localVarHeaderParams := make(map[string]string)
  1674  	localVarQueryParams := url.Values{}
  1675  	localVarFormParams := url.Values{}
  1676  
  1677  	// to determine the Content-Type header
  1678  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1679  
  1680  	// set Content-Type header
  1681  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1682  	if localVarHttpContentType != "" {
  1683  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1684  	}
  1685  
  1686  	// to determine the Accept header
  1687  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1688  
  1689  	// set Accept header
  1690  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1691  	if localVarHttpHeaderAccept != "" {
  1692  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1693  	}
  1694  	// body params
  1695  	localVarPostBody = &body
  1696  	if ctx != nil {
  1697  		// API Key Authentication
  1698  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1699  			var key string
  1700  			if auth.Prefix != "" {
  1701  				key = auth.Prefix + " " + auth.Key
  1702  			} else {
  1703  				key = auth.Key
  1704  			}
  1705  			localVarHeaderParams["X-API-Key"] = key
  1706  			
  1707  		}
  1708  	}
  1709  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1710  	if err != nil {
  1711  		return localVarReturnValue, nil, err
  1712  	}
  1713  
  1714  	localVarHttpResponse, err := a.client.callAPI(r)
  1715  	if err != nil || localVarHttpResponse == nil {
  1716  		return localVarReturnValue, localVarHttpResponse, err
  1717  	}
  1718  
  1719  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1720  	localVarHttpResponse.Body.Close()
  1721  	if err != nil {
  1722  		return localVarReturnValue, localVarHttpResponse, err
  1723  	}
  1724  
  1725  	if localVarHttpResponse.StatusCode < 300 {
  1726  		// If we succeed, return the data, otherwise pass on to decode error.
  1727  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1728  		if err == nil { 
  1729  			return localVarReturnValue, localVarHttpResponse, err
  1730  		}
  1731  	}
  1732  
  1733  	if localVarHttpResponse.StatusCode >= 300 {
  1734  		newErr := GenericSwaggerError{
  1735  			body: localVarBody,
  1736  			error: localVarHttpResponse.Status,
  1737  		}
  1738  		
  1739  		if localVarHttpResponse.StatusCode == 200 {
  1740  			var v ExamplepbABitOfEverything
  1741  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1742  				if err != nil {
  1743  					newErr.error = err.Error()
  1744  					return localVarReturnValue, localVarHttpResponse, newErr
  1745  				}
  1746  				newErr.model = v
  1747  				return localVarReturnValue, localVarHttpResponse, newErr
  1748  		}
  1749  		
  1750  		if localVarHttpResponse.StatusCode == 403 {
  1751  			var v interface{}
  1752  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1753  				if err != nil {
  1754  					newErr.error = err.Error()
  1755  					return localVarReturnValue, localVarHttpResponse, newErr
  1756  				}
  1757  				newErr.model = v
  1758  				return localVarReturnValue, localVarHttpResponse, newErr
  1759  		}
  1760  		
  1761  		if localVarHttpResponse.StatusCode == 404 {
  1762  			var v string
  1763  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1764  				if err != nil {
  1765  					newErr.error = err.Error()
  1766  					return localVarReturnValue, localVarHttpResponse, newErr
  1767  				}
  1768  				newErr.model = v
  1769  				return localVarReturnValue, localVarHttpResponse, newErr
  1770  		}
  1771  		
  1772  		if localVarHttpResponse.StatusCode == 418 {
  1773  			var v ExamplepbNumericEnum
  1774  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1775  				if err != nil {
  1776  					newErr.error = err.Error()
  1777  					return localVarReturnValue, localVarHttpResponse, newErr
  1778  				}
  1779  				newErr.model = v
  1780  				return localVarReturnValue, localVarHttpResponse, newErr
  1781  		}
  1782  		
  1783  		if localVarHttpResponse.StatusCode == 500 {
  1784  			var v ExamplepbErrorResponse
  1785  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1786  				if err != nil {
  1787  					newErr.error = err.Error()
  1788  					return localVarReturnValue, localVarHttpResponse, newErr
  1789  				}
  1790  				newErr.model = v
  1791  				return localVarReturnValue, localVarHttpResponse, newErr
  1792  		}
  1793  		
  1794  		if localVarHttpResponse.StatusCode == 0 {
  1795  			var v RuntimeError
  1796  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1797  				if err != nil {
  1798  					newErr.error = err.Error()
  1799  					return localVarReturnValue, localVarHttpResponse, newErr
  1800  				}
  1801  				newErr.model = v
  1802  				return localVarReturnValue, localVarHttpResponse, newErr
  1803  		}
  1804  		
  1805  		return localVarReturnValue, localVarHttpResponse, newErr
  1806  	}
  1807  
  1808  	return localVarReturnValue, localVarHttpResponse, nil
  1809  }
  1810  
  1811  /* 
  1812  ABitOfEverythingServiceApiService
  1813   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1814   * @param uuid
  1815  
  1816  @return interface{}
  1817  */
  1818  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceDelete(ctx context.Context, uuid string) (interface{}, *http.Response, error) {
  1819  	var (
  1820  		localVarHttpMethod = strings.ToUpper("Delete")
  1821  		localVarPostBody   interface{}
  1822  		localVarFileName   string
  1823  		localVarFileBytes  []byte
  1824  		localVarReturnValue interface{}
  1825  	)
  1826  
  1827  	// create path and map variables
  1828  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/{uuid}"
  1829  	localVarPath = strings.Replace(localVarPath, "{"+"uuid"+"}", fmt.Sprintf("%v", uuid), -1)
  1830  
  1831  	localVarHeaderParams := make(map[string]string)
  1832  	localVarQueryParams := url.Values{}
  1833  	localVarFormParams := url.Values{}
  1834  
  1835  	// to determine the Content-Type header
  1836  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1837  
  1838  	// set Content-Type header
  1839  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1840  	if localVarHttpContentType != "" {
  1841  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1842  	}
  1843  
  1844  	// to determine the Accept header
  1845  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  1846  
  1847  	// set Accept header
  1848  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  1849  	if localVarHttpHeaderAccept != "" {
  1850  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  1851  	}
  1852  	if ctx != nil {
  1853  		// API Key Authentication
  1854  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  1855  			var key string
  1856  			if auth.Prefix != "" {
  1857  				key = auth.Prefix + " " + auth.Key
  1858  			} else {
  1859  				key = auth.Key
  1860  			}
  1861  			localVarHeaderParams["X-API-Key"] = key
  1862  			
  1863  		}
  1864  	}
  1865  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  1866  	if err != nil {
  1867  		return localVarReturnValue, nil, err
  1868  	}
  1869  
  1870  	localVarHttpResponse, err := a.client.callAPI(r)
  1871  	if err != nil || localVarHttpResponse == nil {
  1872  		return localVarReturnValue, localVarHttpResponse, err
  1873  	}
  1874  
  1875  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  1876  	localVarHttpResponse.Body.Close()
  1877  	if err != nil {
  1878  		return localVarReturnValue, localVarHttpResponse, err
  1879  	}
  1880  
  1881  	if localVarHttpResponse.StatusCode < 300 {
  1882  		// If we succeed, return the data, otherwise pass on to decode error.
  1883  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1884  		if err == nil { 
  1885  			return localVarReturnValue, localVarHttpResponse, err
  1886  		}
  1887  	}
  1888  
  1889  	if localVarHttpResponse.StatusCode >= 300 {
  1890  		newErr := GenericSwaggerError{
  1891  			body: localVarBody,
  1892  			error: localVarHttpResponse.Status,
  1893  		}
  1894  		
  1895  		if localVarHttpResponse.StatusCode == 200 {
  1896  			var v interface{}
  1897  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1898  				if err != nil {
  1899  					newErr.error = err.Error()
  1900  					return localVarReturnValue, localVarHttpResponse, newErr
  1901  				}
  1902  				newErr.model = v
  1903  				return localVarReturnValue, localVarHttpResponse, newErr
  1904  		}
  1905  		
  1906  		if localVarHttpResponse.StatusCode == 403 {
  1907  			var v interface{}
  1908  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1909  				if err != nil {
  1910  					newErr.error = err.Error()
  1911  					return localVarReturnValue, localVarHttpResponse, newErr
  1912  				}
  1913  				newErr.model = v
  1914  				return localVarReturnValue, localVarHttpResponse, newErr
  1915  		}
  1916  		
  1917  		if localVarHttpResponse.StatusCode == 404 {
  1918  			var v string
  1919  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1920  				if err != nil {
  1921  					newErr.error = err.Error()
  1922  					return localVarReturnValue, localVarHttpResponse, newErr
  1923  				}
  1924  				newErr.model = v
  1925  				return localVarReturnValue, localVarHttpResponse, newErr
  1926  		}
  1927  		
  1928  		if localVarHttpResponse.StatusCode == 418 {
  1929  			var v ExamplepbNumericEnum
  1930  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1931  				if err != nil {
  1932  					newErr.error = err.Error()
  1933  					return localVarReturnValue, localVarHttpResponse, newErr
  1934  				}
  1935  				newErr.model = v
  1936  				return localVarReturnValue, localVarHttpResponse, newErr
  1937  		}
  1938  		
  1939  		if localVarHttpResponse.StatusCode == 500 {
  1940  			var v ExamplepbErrorResponse
  1941  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1942  				if err != nil {
  1943  					newErr.error = err.Error()
  1944  					return localVarReturnValue, localVarHttpResponse, newErr
  1945  				}
  1946  				newErr.model = v
  1947  				return localVarReturnValue, localVarHttpResponse, newErr
  1948  		}
  1949  		
  1950  		if localVarHttpResponse.StatusCode == 0 {
  1951  			var v RuntimeError
  1952  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  1953  				if err != nil {
  1954  					newErr.error = err.Error()
  1955  					return localVarReturnValue, localVarHttpResponse, newErr
  1956  				}
  1957  				newErr.model = v
  1958  				return localVarReturnValue, localVarHttpResponse, newErr
  1959  		}
  1960  		
  1961  		return localVarReturnValue, localVarHttpResponse, newErr
  1962  	}
  1963  
  1964  	return localVarReturnValue, localVarHttpResponse, nil
  1965  }
  1966  
  1967  /* 
  1968  ABitOfEverythingServiceApiService
  1969   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  1970  
  1971  @return interface{}
  1972  */
  1973  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceErrorWithDetails(ctx context.Context) (interface{}, *http.Response, error) {
  1974  	var (
  1975  		localVarHttpMethod = strings.ToUpper("Get")
  1976  		localVarPostBody   interface{}
  1977  		localVarFileName   string
  1978  		localVarFileBytes  []byte
  1979  		localVarReturnValue interface{}
  1980  	)
  1981  
  1982  	// create path and map variables
  1983  	localVarPath := a.client.cfg.BasePath + "/v2/example/errorwithdetails"
  1984  
  1985  	localVarHeaderParams := make(map[string]string)
  1986  	localVarQueryParams := url.Values{}
  1987  	localVarFormParams := url.Values{}
  1988  
  1989  	// to determine the Content-Type header
  1990  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  1991  
  1992  	// set Content-Type header
  1993  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  1994  	if localVarHttpContentType != "" {
  1995  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  1996  	}
  1997  
  1998  	// to determine the Accept header
  1999  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  2000  
  2001  	// set Accept header
  2002  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  2003  	if localVarHttpHeaderAccept != "" {
  2004  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  2005  	}
  2006  	if ctx != nil {
  2007  		// API Key Authentication
  2008  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  2009  			var key string
  2010  			if auth.Prefix != "" {
  2011  				key = auth.Prefix + " " + auth.Key
  2012  			} else {
  2013  				key = auth.Key
  2014  			}
  2015  			localVarHeaderParams["X-API-Key"] = key
  2016  			
  2017  		}
  2018  	}
  2019  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  2020  	if err != nil {
  2021  		return localVarReturnValue, nil, err
  2022  	}
  2023  
  2024  	localVarHttpResponse, err := a.client.callAPI(r)
  2025  	if err != nil || localVarHttpResponse == nil {
  2026  		return localVarReturnValue, localVarHttpResponse, err
  2027  	}
  2028  
  2029  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  2030  	localVarHttpResponse.Body.Close()
  2031  	if err != nil {
  2032  		return localVarReturnValue, localVarHttpResponse, err
  2033  	}
  2034  
  2035  	if localVarHttpResponse.StatusCode < 300 {
  2036  		// If we succeed, return the data, otherwise pass on to decode error.
  2037  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2038  		if err == nil { 
  2039  			return localVarReturnValue, localVarHttpResponse, err
  2040  		}
  2041  	}
  2042  
  2043  	if localVarHttpResponse.StatusCode >= 300 {
  2044  		newErr := GenericSwaggerError{
  2045  			body: localVarBody,
  2046  			error: localVarHttpResponse.Status,
  2047  		}
  2048  		
  2049  		if localVarHttpResponse.StatusCode == 200 {
  2050  			var v interface{}
  2051  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2052  				if err != nil {
  2053  					newErr.error = err.Error()
  2054  					return localVarReturnValue, localVarHttpResponse, newErr
  2055  				}
  2056  				newErr.model = v
  2057  				return localVarReturnValue, localVarHttpResponse, newErr
  2058  		}
  2059  		
  2060  		if localVarHttpResponse.StatusCode == 403 {
  2061  			var v interface{}
  2062  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2063  				if err != nil {
  2064  					newErr.error = err.Error()
  2065  					return localVarReturnValue, localVarHttpResponse, newErr
  2066  				}
  2067  				newErr.model = v
  2068  				return localVarReturnValue, localVarHttpResponse, newErr
  2069  		}
  2070  		
  2071  		if localVarHttpResponse.StatusCode == 404 {
  2072  			var v string
  2073  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2074  				if err != nil {
  2075  					newErr.error = err.Error()
  2076  					return localVarReturnValue, localVarHttpResponse, newErr
  2077  				}
  2078  				newErr.model = v
  2079  				return localVarReturnValue, localVarHttpResponse, newErr
  2080  		}
  2081  		
  2082  		if localVarHttpResponse.StatusCode == 418 {
  2083  			var v ExamplepbNumericEnum
  2084  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2085  				if err != nil {
  2086  					newErr.error = err.Error()
  2087  					return localVarReturnValue, localVarHttpResponse, newErr
  2088  				}
  2089  				newErr.model = v
  2090  				return localVarReturnValue, localVarHttpResponse, newErr
  2091  		}
  2092  		
  2093  		if localVarHttpResponse.StatusCode == 500 {
  2094  			var v ExamplepbErrorResponse
  2095  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2096  				if err != nil {
  2097  					newErr.error = err.Error()
  2098  					return localVarReturnValue, localVarHttpResponse, newErr
  2099  				}
  2100  				newErr.model = v
  2101  				return localVarReturnValue, localVarHttpResponse, newErr
  2102  		}
  2103  		
  2104  		if localVarHttpResponse.StatusCode == 0 {
  2105  			var v RuntimeError
  2106  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2107  				if err != nil {
  2108  					newErr.error = err.Error()
  2109  					return localVarReturnValue, localVarHttpResponse, newErr
  2110  				}
  2111  				newErr.model = v
  2112  				return localVarReturnValue, localVarHttpResponse, newErr
  2113  		}
  2114  		
  2115  		return localVarReturnValue, localVarHttpResponse, newErr
  2116  	}
  2117  
  2118  	return localVarReturnValue, localVarHttpResponse, nil
  2119  }
  2120  
  2121  /* 
  2122  ABitOfEverythingServiceApiService
  2123   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  2124   * @param id
  2125   * @param body
  2126  
  2127  @return interface{}
  2128  */
  2129  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceGetMessageWithBody(ctx context.Context, id string, body ExamplepbBody) (interface{}, *http.Response, error) {
  2130  	var (
  2131  		localVarHttpMethod = strings.ToUpper("Post")
  2132  		localVarPostBody   interface{}
  2133  		localVarFileName   string
  2134  		localVarFileBytes  []byte
  2135  		localVarReturnValue interface{}
  2136  	)
  2137  
  2138  	// create path and map variables
  2139  	localVarPath := a.client.cfg.BasePath + "/v2/example/withbody/{id}"
  2140  	localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", fmt.Sprintf("%v", id), -1)
  2141  
  2142  	localVarHeaderParams := make(map[string]string)
  2143  	localVarQueryParams := url.Values{}
  2144  	localVarFormParams := url.Values{}
  2145  
  2146  	// to determine the Content-Type header
  2147  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  2148  
  2149  	// set Content-Type header
  2150  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  2151  	if localVarHttpContentType != "" {
  2152  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  2153  	}
  2154  
  2155  	// to determine the Accept header
  2156  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  2157  
  2158  	// set Accept header
  2159  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  2160  	if localVarHttpHeaderAccept != "" {
  2161  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  2162  	}
  2163  	// body params
  2164  	localVarPostBody = &body
  2165  	if ctx != nil {
  2166  		// API Key Authentication
  2167  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  2168  			var key string
  2169  			if auth.Prefix != "" {
  2170  				key = auth.Prefix + " " + auth.Key
  2171  			} else {
  2172  				key = auth.Key
  2173  			}
  2174  			localVarHeaderParams["X-API-Key"] = key
  2175  			
  2176  		}
  2177  	}
  2178  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  2179  	if err != nil {
  2180  		return localVarReturnValue, nil, err
  2181  	}
  2182  
  2183  	localVarHttpResponse, err := a.client.callAPI(r)
  2184  	if err != nil || localVarHttpResponse == nil {
  2185  		return localVarReturnValue, localVarHttpResponse, err
  2186  	}
  2187  
  2188  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  2189  	localVarHttpResponse.Body.Close()
  2190  	if err != nil {
  2191  		return localVarReturnValue, localVarHttpResponse, err
  2192  	}
  2193  
  2194  	if localVarHttpResponse.StatusCode < 300 {
  2195  		// If we succeed, return the data, otherwise pass on to decode error.
  2196  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2197  		if err == nil { 
  2198  			return localVarReturnValue, localVarHttpResponse, err
  2199  		}
  2200  	}
  2201  
  2202  	if localVarHttpResponse.StatusCode >= 300 {
  2203  		newErr := GenericSwaggerError{
  2204  			body: localVarBody,
  2205  			error: localVarHttpResponse.Status,
  2206  		}
  2207  		
  2208  		if localVarHttpResponse.StatusCode == 200 {
  2209  			var v interface{}
  2210  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2211  				if err != nil {
  2212  					newErr.error = err.Error()
  2213  					return localVarReturnValue, localVarHttpResponse, newErr
  2214  				}
  2215  				newErr.model = v
  2216  				return localVarReturnValue, localVarHttpResponse, newErr
  2217  		}
  2218  		
  2219  		if localVarHttpResponse.StatusCode == 403 {
  2220  			var v interface{}
  2221  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2222  				if err != nil {
  2223  					newErr.error = err.Error()
  2224  					return localVarReturnValue, localVarHttpResponse, newErr
  2225  				}
  2226  				newErr.model = v
  2227  				return localVarReturnValue, localVarHttpResponse, newErr
  2228  		}
  2229  		
  2230  		if localVarHttpResponse.StatusCode == 404 {
  2231  			var v string
  2232  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2233  				if err != nil {
  2234  					newErr.error = err.Error()
  2235  					return localVarReturnValue, localVarHttpResponse, newErr
  2236  				}
  2237  				newErr.model = v
  2238  				return localVarReturnValue, localVarHttpResponse, newErr
  2239  		}
  2240  		
  2241  		if localVarHttpResponse.StatusCode == 418 {
  2242  			var v ExamplepbNumericEnum
  2243  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2244  				if err != nil {
  2245  					newErr.error = err.Error()
  2246  					return localVarReturnValue, localVarHttpResponse, newErr
  2247  				}
  2248  				newErr.model = v
  2249  				return localVarReturnValue, localVarHttpResponse, newErr
  2250  		}
  2251  		
  2252  		if localVarHttpResponse.StatusCode == 500 {
  2253  			var v ExamplepbErrorResponse
  2254  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2255  				if err != nil {
  2256  					newErr.error = err.Error()
  2257  					return localVarReturnValue, localVarHttpResponse, newErr
  2258  				}
  2259  				newErr.model = v
  2260  				return localVarReturnValue, localVarHttpResponse, newErr
  2261  		}
  2262  		
  2263  		if localVarHttpResponse.StatusCode == 0 {
  2264  			var v RuntimeError
  2265  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2266  				if err != nil {
  2267  					newErr.error = err.Error()
  2268  					return localVarReturnValue, localVarHttpResponse, newErr
  2269  				}
  2270  				newErr.model = v
  2271  				return localVarReturnValue, localVarHttpResponse, newErr
  2272  		}
  2273  		
  2274  		return localVarReturnValue, localVarHttpResponse, newErr
  2275  	}
  2276  
  2277  	return localVarReturnValue, localVarHttpResponse, nil
  2278  }
  2279  
  2280  /* 
  2281  ABitOfEverythingServiceApiService
  2282   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  2283   * @param uuid
  2284   * @param floatValue Float value field
  2285   * @param optional nil or *ABitOfEverythingServiceGetQueryOpts - Optional Parameters:
  2286       * @param "SingleNestedName" (optional.String) -  name is nested field.
  2287       * @param "SingleNestedAmount" (optional.Int64) - 
  2288       * @param "SingleNestedOk" (optional.String) -  DeepEnum description.   - FALSE: FALSE is false.  - TRUE: TRUE is true.
  2289       * @param "DoubleValue" (optional.Float64) - 
  2290       * @param "Int64Value" (optional.String) - 
  2291       * @param "Uint64Value" (optional.String) - 
  2292       * @param "Int32Value" (optional.Int32) - 
  2293       * @param "Fixed64Value" (optional.String) - 
  2294       * @param "Fixed32Value" (optional.Int64) - 
  2295       * @param "BoolValue" (optional.Bool) - 
  2296       * @param "StringValue" (optional.String) - 
  2297       * @param "BytesValue" (optional.String) - 
  2298       * @param "Uint32Value" (optional.Int64) - 
  2299       * @param "EnumValue" (optional.String) -   - ZERO: ZERO means 0  - ONE: ONE means 1
  2300       * @param "PathEnumValue" (optional.String) - 
  2301       * @param "NestedPathEnumValue" (optional.String) - 
  2302       * @param "Sfixed32Value" (optional.Int32) - 
  2303       * @param "Sfixed64Value" (optional.String) - 
  2304       * @param "Sint32Value" (optional.Int32) - 
  2305       * @param "Sint64Value" (optional.String) - 
  2306       * @param "RepeatedStringValue" (optional.Interface of []string) - 
  2307       * @param "OneofString" (optional.String) - 
  2308       * @param "NonConventionalNameValue" (optional.String) - 
  2309       * @param "TimestampValue" (optional.Time) - 
  2310       * @param "RepeatedEnumValue" (optional.Interface of []string) -  repeated enum value. it is comma-separated in query.   - ZERO: ZERO means 0  - ONE: ONE means 1
  2311       * @param "RepeatedEnumAnnotation" (optional.Interface of []string) -  Repeated numeric enum title. Repeated numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
  2312       * @param "EnumValueAnnotation" (optional.String) -  Numeric enum title. Numeric enum description.   - ZERO: ZERO means 0  - ONE: ONE means 1
  2313       * @param "RepeatedStringAnnotation" (optional.Interface of []string) -  Repeated string title. Repeated string description.
  2314       * @param "NestedAnnotationName" (optional.String) -  name is nested field.
  2315       * @param "NestedAnnotationAmount" (optional.Int64) - 
  2316       * @param "NestedAnnotationOk" (optional.String) -  DeepEnum description.   - FALSE: FALSE is false.  - TRUE: TRUE is true.
  2317       * @param "Int64OverrideType" (optional.Int64) - 
  2318  
  2319  @return interface{}
  2320  */
  2321  
  2322  type ABitOfEverythingServiceGetQueryOpts struct { 
  2323  	SingleNestedName optional.String
  2324  	SingleNestedAmount optional.Int64
  2325  	SingleNestedOk optional.String
  2326  	DoubleValue optional.Float64
  2327  	Int64Value optional.String
  2328  	Uint64Value optional.String
  2329  	Int32Value optional.Int32
  2330  	Fixed64Value optional.String
  2331  	Fixed32Value optional.Int64
  2332  	BoolValue optional.Bool
  2333  	StringValue optional.String
  2334  	BytesValue optional.String
  2335  	Uint32Value optional.Int64
  2336  	EnumValue optional.String
  2337  	PathEnumValue optional.String
  2338  	NestedPathEnumValue optional.String
  2339  	Sfixed32Value optional.Int32
  2340  	Sfixed64Value optional.String
  2341  	Sint32Value optional.Int32
  2342  	Sint64Value optional.String
  2343  	RepeatedStringValue optional.Interface
  2344  	OneofString optional.String
  2345  	NonConventionalNameValue optional.String
  2346  	TimestampValue optional.Time
  2347  	RepeatedEnumValue optional.Interface
  2348  	RepeatedEnumAnnotation optional.Interface
  2349  	EnumValueAnnotation optional.String
  2350  	RepeatedStringAnnotation optional.Interface
  2351  	NestedAnnotationName optional.String
  2352  	NestedAnnotationAmount optional.Int64
  2353  	NestedAnnotationOk optional.String
  2354  	Int64OverrideType optional.Int64
  2355  }
  2356  
  2357  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceGetQuery(ctx context.Context, uuid string, floatValue float32, localVarOptionals *ABitOfEverythingServiceGetQueryOpts) (interface{}, *http.Response, error) {
  2358  	var (
  2359  		localVarHttpMethod = strings.ToUpper("Get")
  2360  		localVarPostBody   interface{}
  2361  		localVarFileName   string
  2362  		localVarFileBytes  []byte
  2363  		localVarReturnValue interface{}
  2364  	)
  2365  
  2366  	// create path and map variables
  2367  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/query/{uuid}"
  2368  	localVarPath = strings.Replace(localVarPath, "{"+"uuid"+"}", fmt.Sprintf("%v", uuid), -1)
  2369  
  2370  	localVarHeaderParams := make(map[string]string)
  2371  	localVarQueryParams := url.Values{}
  2372  	localVarFormParams := url.Values{}
  2373  
  2374  	if localVarOptionals != nil && localVarOptionals.SingleNestedName.IsSet() {
  2375  		localVarQueryParams.Add("single_nested.name", parameterToString(localVarOptionals.SingleNestedName.Value(), ""))
  2376  	}
  2377  	if localVarOptionals != nil && localVarOptionals.SingleNestedAmount.IsSet() {
  2378  		localVarQueryParams.Add("single_nested.amount", parameterToString(localVarOptionals.SingleNestedAmount.Value(), ""))
  2379  	}
  2380  	if localVarOptionals != nil && localVarOptionals.SingleNestedOk.IsSet() {
  2381  		localVarQueryParams.Add("single_nested.ok", parameterToString(localVarOptionals.SingleNestedOk.Value(), ""))
  2382  	}
  2383  	localVarQueryParams.Add("float_value", parameterToString(floatValue, ""))
  2384  	if localVarOptionals != nil && localVarOptionals.DoubleValue.IsSet() {
  2385  		localVarQueryParams.Add("double_value", parameterToString(localVarOptionals.DoubleValue.Value(), ""))
  2386  	}
  2387  	if localVarOptionals != nil && localVarOptionals.Int64Value.IsSet() {
  2388  		localVarQueryParams.Add("int64_value", parameterToString(localVarOptionals.Int64Value.Value(), ""))
  2389  	}
  2390  	if localVarOptionals != nil && localVarOptionals.Uint64Value.IsSet() {
  2391  		localVarQueryParams.Add("uint64_value", parameterToString(localVarOptionals.Uint64Value.Value(), ""))
  2392  	}
  2393  	if localVarOptionals != nil && localVarOptionals.Int32Value.IsSet() {
  2394  		localVarQueryParams.Add("int32_value", parameterToString(localVarOptionals.Int32Value.Value(), ""))
  2395  	}
  2396  	if localVarOptionals != nil && localVarOptionals.Fixed64Value.IsSet() {
  2397  		localVarQueryParams.Add("fixed64_value", parameterToString(localVarOptionals.Fixed64Value.Value(), ""))
  2398  	}
  2399  	if localVarOptionals != nil && localVarOptionals.Fixed32Value.IsSet() {
  2400  		localVarQueryParams.Add("fixed32_value", parameterToString(localVarOptionals.Fixed32Value.Value(), ""))
  2401  	}
  2402  	if localVarOptionals != nil && localVarOptionals.BoolValue.IsSet() {
  2403  		localVarQueryParams.Add("bool_value", parameterToString(localVarOptionals.BoolValue.Value(), ""))
  2404  	}
  2405  	if localVarOptionals != nil && localVarOptionals.StringValue.IsSet() {
  2406  		localVarQueryParams.Add("string_value", parameterToString(localVarOptionals.StringValue.Value(), ""))
  2407  	}
  2408  	if localVarOptionals != nil && localVarOptionals.BytesValue.IsSet() {
  2409  		localVarQueryParams.Add("bytes_value", parameterToString(localVarOptionals.BytesValue.Value(), ""))
  2410  	}
  2411  	if localVarOptionals != nil && localVarOptionals.Uint32Value.IsSet() {
  2412  		localVarQueryParams.Add("uint32_value", parameterToString(localVarOptionals.Uint32Value.Value(), ""))
  2413  	}
  2414  	if localVarOptionals != nil && localVarOptionals.EnumValue.IsSet() {
  2415  		localVarQueryParams.Add("enum_value", parameterToString(localVarOptionals.EnumValue.Value(), ""))
  2416  	}
  2417  	if localVarOptionals != nil && localVarOptionals.PathEnumValue.IsSet() {
  2418  		localVarQueryParams.Add("path_enum_value", parameterToString(localVarOptionals.PathEnumValue.Value(), ""))
  2419  	}
  2420  	if localVarOptionals != nil && localVarOptionals.NestedPathEnumValue.IsSet() {
  2421  		localVarQueryParams.Add("nested_path_enum_value", parameterToString(localVarOptionals.NestedPathEnumValue.Value(), ""))
  2422  	}
  2423  	if localVarOptionals != nil && localVarOptionals.Sfixed32Value.IsSet() {
  2424  		localVarQueryParams.Add("sfixed32_value", parameterToString(localVarOptionals.Sfixed32Value.Value(), ""))
  2425  	}
  2426  	if localVarOptionals != nil && localVarOptionals.Sfixed64Value.IsSet() {
  2427  		localVarQueryParams.Add("sfixed64_value", parameterToString(localVarOptionals.Sfixed64Value.Value(), ""))
  2428  	}
  2429  	if localVarOptionals != nil && localVarOptionals.Sint32Value.IsSet() {
  2430  		localVarQueryParams.Add("sint32_value", parameterToString(localVarOptionals.Sint32Value.Value(), ""))
  2431  	}
  2432  	if localVarOptionals != nil && localVarOptionals.Sint64Value.IsSet() {
  2433  		localVarQueryParams.Add("sint64_value", parameterToString(localVarOptionals.Sint64Value.Value(), ""))
  2434  	}
  2435  	if localVarOptionals != nil && localVarOptionals.RepeatedStringValue.IsSet() {
  2436  		localVarQueryParams.Add("repeated_string_value", parameterToString(localVarOptionals.RepeatedStringValue.Value(), "multi"))
  2437  	}
  2438  	if localVarOptionals != nil && localVarOptionals.OneofString.IsSet() {
  2439  		localVarQueryParams.Add("oneof_string", parameterToString(localVarOptionals.OneofString.Value(), ""))
  2440  	}
  2441  	if localVarOptionals != nil && localVarOptionals.NonConventionalNameValue.IsSet() {
  2442  		localVarQueryParams.Add("nonConventionalNameValue", parameterToString(localVarOptionals.NonConventionalNameValue.Value(), ""))
  2443  	}
  2444  	if localVarOptionals != nil && localVarOptionals.TimestampValue.IsSet() {
  2445  		localVarQueryParams.Add("timestamp_value", parameterToString(localVarOptionals.TimestampValue.Value(), ""))
  2446  	}
  2447  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumValue.IsSet() {
  2448  		localVarQueryParams.Add("repeated_enum_value", parameterToString(localVarOptionals.RepeatedEnumValue.Value(), "multi"))
  2449  	}
  2450  	if localVarOptionals != nil && localVarOptionals.RepeatedEnumAnnotation.IsSet() {
  2451  		localVarQueryParams.Add("repeated_enum_annotation", parameterToString(localVarOptionals.RepeatedEnumAnnotation.Value(), "multi"))
  2452  	}
  2453  	if localVarOptionals != nil && localVarOptionals.EnumValueAnnotation.IsSet() {
  2454  		localVarQueryParams.Add("enum_value_annotation", parameterToString(localVarOptionals.EnumValueAnnotation.Value(), ""))
  2455  	}
  2456  	if localVarOptionals != nil && localVarOptionals.RepeatedStringAnnotation.IsSet() {
  2457  		localVarQueryParams.Add("repeated_string_annotation", parameterToString(localVarOptionals.RepeatedStringAnnotation.Value(), "multi"))
  2458  	}
  2459  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationName.IsSet() {
  2460  		localVarQueryParams.Add("nested_annotation.name", parameterToString(localVarOptionals.NestedAnnotationName.Value(), ""))
  2461  	}
  2462  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationAmount.IsSet() {
  2463  		localVarQueryParams.Add("nested_annotation.amount", parameterToString(localVarOptionals.NestedAnnotationAmount.Value(), ""))
  2464  	}
  2465  	if localVarOptionals != nil && localVarOptionals.NestedAnnotationOk.IsSet() {
  2466  		localVarQueryParams.Add("nested_annotation.ok", parameterToString(localVarOptionals.NestedAnnotationOk.Value(), ""))
  2467  	}
  2468  	if localVarOptionals != nil && localVarOptionals.Int64OverrideType.IsSet() {
  2469  		localVarQueryParams.Add("int64_override_type", parameterToString(localVarOptionals.Int64OverrideType.Value(), ""))
  2470  	}
  2471  	// to determine the Content-Type header
  2472  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  2473  
  2474  	// set Content-Type header
  2475  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  2476  	if localVarHttpContentType != "" {
  2477  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  2478  	}
  2479  
  2480  	// to determine the Accept header
  2481  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  2482  
  2483  	// set Accept header
  2484  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  2485  	if localVarHttpHeaderAccept != "" {
  2486  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  2487  	}
  2488  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  2489  	if err != nil {
  2490  		return localVarReturnValue, nil, err
  2491  	}
  2492  
  2493  	localVarHttpResponse, err := a.client.callAPI(r)
  2494  	if err != nil || localVarHttpResponse == nil {
  2495  		return localVarReturnValue, localVarHttpResponse, err
  2496  	}
  2497  
  2498  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  2499  	localVarHttpResponse.Body.Close()
  2500  	if err != nil {
  2501  		return localVarReturnValue, localVarHttpResponse, err
  2502  	}
  2503  
  2504  	if localVarHttpResponse.StatusCode < 300 {
  2505  		// If we succeed, return the data, otherwise pass on to decode error.
  2506  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2507  		if err == nil { 
  2508  			return localVarReturnValue, localVarHttpResponse, err
  2509  		}
  2510  	}
  2511  
  2512  	if localVarHttpResponse.StatusCode >= 300 {
  2513  		newErr := GenericSwaggerError{
  2514  			body: localVarBody,
  2515  			error: localVarHttpResponse.Status,
  2516  		}
  2517  		
  2518  		if localVarHttpResponse.StatusCode == 200 {
  2519  			var v interface{}
  2520  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2521  				if err != nil {
  2522  					newErr.error = err.Error()
  2523  					return localVarReturnValue, localVarHttpResponse, newErr
  2524  				}
  2525  				newErr.model = v
  2526  				return localVarReturnValue, localVarHttpResponse, newErr
  2527  		}
  2528  		
  2529  		if localVarHttpResponse.StatusCode == 403 {
  2530  			var v interface{}
  2531  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2532  				if err != nil {
  2533  					newErr.error = err.Error()
  2534  					return localVarReturnValue, localVarHttpResponse, newErr
  2535  				}
  2536  				newErr.model = v
  2537  				return localVarReturnValue, localVarHttpResponse, newErr
  2538  		}
  2539  		
  2540  		if localVarHttpResponse.StatusCode == 404 {
  2541  			var v string
  2542  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2543  				if err != nil {
  2544  					newErr.error = err.Error()
  2545  					return localVarReturnValue, localVarHttpResponse, newErr
  2546  				}
  2547  				newErr.model = v
  2548  				return localVarReturnValue, localVarHttpResponse, newErr
  2549  		}
  2550  		
  2551  		if localVarHttpResponse.StatusCode == 418 {
  2552  			var v ExamplepbNumericEnum
  2553  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2554  				if err != nil {
  2555  					newErr.error = err.Error()
  2556  					return localVarReturnValue, localVarHttpResponse, newErr
  2557  				}
  2558  				newErr.model = v
  2559  				return localVarReturnValue, localVarHttpResponse, newErr
  2560  		}
  2561  		
  2562  		if localVarHttpResponse.StatusCode == 500 {
  2563  			var v ExamplepbErrorResponse
  2564  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2565  				if err != nil {
  2566  					newErr.error = err.Error()
  2567  					return localVarReturnValue, localVarHttpResponse, newErr
  2568  				}
  2569  				newErr.model = v
  2570  				return localVarReturnValue, localVarHttpResponse, newErr
  2571  		}
  2572  		
  2573  		if localVarHttpResponse.StatusCode == 0 {
  2574  			var v RuntimeError
  2575  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2576  				if err != nil {
  2577  					newErr.error = err.Error()
  2578  					return localVarReturnValue, localVarHttpResponse, newErr
  2579  				}
  2580  				newErr.model = v
  2581  				return localVarReturnValue, localVarHttpResponse, newErr
  2582  		}
  2583  		
  2584  		return localVarReturnValue, localVarHttpResponse, newErr
  2585  	}
  2586  
  2587  	return localVarReturnValue, localVarHttpResponse, nil
  2588  }
  2589  
  2590  /* 
  2591  ABitOfEverythingServiceApiService
  2592   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  2593   * @param pathRepeatedFloatValue repeated values. they are comma-separated in path
  2594   * @param pathRepeatedDoubleValue
  2595   * @param pathRepeatedInt64Value
  2596   * @param pathRepeatedUint64Value
  2597   * @param pathRepeatedInt32Value
  2598   * @param pathRepeatedFixed64Value
  2599   * @param pathRepeatedFixed32Value
  2600   * @param pathRepeatedBoolValue
  2601   * @param pathRepeatedStringValue
  2602   * @param pathRepeatedBytesValue
  2603   * @param pathRepeatedUint32Value
  2604   * @param pathRepeatedEnumValue
  2605   * @param pathRepeatedSfixed32Value
  2606   * @param pathRepeatedSfixed64Value
  2607   * @param pathRepeatedSint32Value
  2608   * @param pathRepeatedSint64Value
  2609  
  2610  @return ExamplepbABitOfEverythingRepeated
  2611  */
  2612  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceGetRepeatedQuery(ctx context.Context, pathRepeatedFloatValue []float32, pathRepeatedDoubleValue []float64, pathRepeatedInt64Value []string, pathRepeatedUint64Value []string, pathRepeatedInt32Value []int32, pathRepeatedFixed64Value []string, pathRepeatedFixed32Value []int64, pathRepeatedBoolValue []bool, pathRepeatedStringValue []string, pathRepeatedBytesValue []string, pathRepeatedUint32Value []int64, pathRepeatedEnumValue []string, pathRepeatedSfixed32Value []int32, pathRepeatedSfixed64Value []string, pathRepeatedSint32Value []int32, pathRepeatedSint64Value []string) (ExamplepbABitOfEverythingRepeated, *http.Response, error) {
  2613  	var (
  2614  		localVarHttpMethod = strings.ToUpper("Get")
  2615  		localVarPostBody   interface{}
  2616  		localVarFileName   string
  2617  		localVarFileBytes  []byte
  2618  		localVarReturnValue ExamplepbABitOfEverythingRepeated
  2619  	)
  2620  
  2621  	// create path and map variables
  2622  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything_repeated/{path_repeated_float_value}/{path_repeated_double_value}/{path_repeated_int64_value}/{path_repeated_uint64_value}/{path_repeated_int32_value}/{path_repeated_fixed64_value}/{path_repeated_fixed32_value}/{path_repeated_bool_value}/{path_repeated_string_value}/{path_repeated_bytes_value}/{path_repeated_uint32_value}/{path_repeated_enum_value}/{path_repeated_sfixed32_value}/{path_repeated_sfixed64_value}/{path_repeated_sint32_value}/{path_repeated_sint64_value}"
  2623  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_float_value"+"}", fmt.Sprintf("%v", pathRepeatedFloatValue), -1)
  2624  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_double_value"+"}", fmt.Sprintf("%v", pathRepeatedDoubleValue), -1)
  2625  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_int64_value"+"}", fmt.Sprintf("%v", pathRepeatedInt64Value), -1)
  2626  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_uint64_value"+"}", fmt.Sprintf("%v", pathRepeatedUint64Value), -1)
  2627  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_int32_value"+"}", fmt.Sprintf("%v", pathRepeatedInt32Value), -1)
  2628  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_fixed64_value"+"}", fmt.Sprintf("%v", pathRepeatedFixed64Value), -1)
  2629  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_fixed32_value"+"}", fmt.Sprintf("%v", pathRepeatedFixed32Value), -1)
  2630  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_bool_value"+"}", fmt.Sprintf("%v", pathRepeatedBoolValue), -1)
  2631  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_string_value"+"}", fmt.Sprintf("%v", pathRepeatedStringValue), -1)
  2632  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_bytes_value"+"}", fmt.Sprintf("%v", pathRepeatedBytesValue), -1)
  2633  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_uint32_value"+"}", fmt.Sprintf("%v", pathRepeatedUint32Value), -1)
  2634  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_enum_value"+"}", fmt.Sprintf("%v", pathRepeatedEnumValue), -1)
  2635  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_sfixed32_value"+"}", fmt.Sprintf("%v", pathRepeatedSfixed32Value), -1)
  2636  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_sfixed64_value"+"}", fmt.Sprintf("%v", pathRepeatedSfixed64Value), -1)
  2637  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_sint32_value"+"}", fmt.Sprintf("%v", pathRepeatedSint32Value), -1)
  2638  	localVarPath = strings.Replace(localVarPath, "{"+"path_repeated_sint64_value"+"}", fmt.Sprintf("%v", pathRepeatedSint64Value), -1)
  2639  
  2640  	localVarHeaderParams := make(map[string]string)
  2641  	localVarQueryParams := url.Values{}
  2642  	localVarFormParams := url.Values{}
  2643  	if len(pathRepeatedFloatValue) < 1 {
  2644  		return localVarReturnValue, nil, reportError("pathRepeatedFloatValue must have at least 1 elements")
  2645  	}
  2646  	if len(pathRepeatedDoubleValue) < 1 {
  2647  		return localVarReturnValue, nil, reportError("pathRepeatedDoubleValue must have at least 1 elements")
  2648  	}
  2649  	if len(pathRepeatedInt64Value) < 1 {
  2650  		return localVarReturnValue, nil, reportError("pathRepeatedInt64Value must have at least 1 elements")
  2651  	}
  2652  	if len(pathRepeatedUint64Value) < 1 {
  2653  		return localVarReturnValue, nil, reportError("pathRepeatedUint64Value must have at least 1 elements")
  2654  	}
  2655  	if len(pathRepeatedInt32Value) < 1 {
  2656  		return localVarReturnValue, nil, reportError("pathRepeatedInt32Value must have at least 1 elements")
  2657  	}
  2658  	if len(pathRepeatedFixed64Value) < 1 {
  2659  		return localVarReturnValue, nil, reportError("pathRepeatedFixed64Value must have at least 1 elements")
  2660  	}
  2661  	if len(pathRepeatedFixed32Value) < 1 {
  2662  		return localVarReturnValue, nil, reportError("pathRepeatedFixed32Value must have at least 1 elements")
  2663  	}
  2664  	if len(pathRepeatedBoolValue) < 1 {
  2665  		return localVarReturnValue, nil, reportError("pathRepeatedBoolValue must have at least 1 elements")
  2666  	}
  2667  	if len(pathRepeatedStringValue) < 1 {
  2668  		return localVarReturnValue, nil, reportError("pathRepeatedStringValue must have at least 1 elements")
  2669  	}
  2670  	if len(pathRepeatedBytesValue) < 1 {
  2671  		return localVarReturnValue, nil, reportError("pathRepeatedBytesValue must have at least 1 elements")
  2672  	}
  2673  	if len(pathRepeatedUint32Value) < 1 {
  2674  		return localVarReturnValue, nil, reportError("pathRepeatedUint32Value must have at least 1 elements")
  2675  	}
  2676  	if len(pathRepeatedEnumValue) < 1 {
  2677  		return localVarReturnValue, nil, reportError("pathRepeatedEnumValue must have at least 1 elements")
  2678  	}
  2679  	if len(pathRepeatedSfixed32Value) < 1 {
  2680  		return localVarReturnValue, nil, reportError("pathRepeatedSfixed32Value must have at least 1 elements")
  2681  	}
  2682  	if len(pathRepeatedSfixed64Value) < 1 {
  2683  		return localVarReturnValue, nil, reportError("pathRepeatedSfixed64Value must have at least 1 elements")
  2684  	}
  2685  	if len(pathRepeatedSint32Value) < 1 {
  2686  		return localVarReturnValue, nil, reportError("pathRepeatedSint32Value must have at least 1 elements")
  2687  	}
  2688  	if len(pathRepeatedSint64Value) < 1 {
  2689  		return localVarReturnValue, nil, reportError("pathRepeatedSint64Value must have at least 1 elements")
  2690  	}
  2691  
  2692  	// to determine the Content-Type header
  2693  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  2694  
  2695  	// set Content-Type header
  2696  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  2697  	if localVarHttpContentType != "" {
  2698  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  2699  	}
  2700  
  2701  	// to determine the Accept header
  2702  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  2703  
  2704  	// set Accept header
  2705  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  2706  	if localVarHttpHeaderAccept != "" {
  2707  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  2708  	}
  2709  	if ctx != nil {
  2710  		// API Key Authentication
  2711  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  2712  			var key string
  2713  			if auth.Prefix != "" {
  2714  				key = auth.Prefix + " " + auth.Key
  2715  			} else {
  2716  				key = auth.Key
  2717  			}
  2718  			localVarHeaderParams["X-API-Key"] = key
  2719  			
  2720  		}
  2721  	}
  2722  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  2723  	if err != nil {
  2724  		return localVarReturnValue, nil, err
  2725  	}
  2726  
  2727  	localVarHttpResponse, err := a.client.callAPI(r)
  2728  	if err != nil || localVarHttpResponse == nil {
  2729  		return localVarReturnValue, localVarHttpResponse, err
  2730  	}
  2731  
  2732  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  2733  	localVarHttpResponse.Body.Close()
  2734  	if err != nil {
  2735  		return localVarReturnValue, localVarHttpResponse, err
  2736  	}
  2737  
  2738  	if localVarHttpResponse.StatusCode < 300 {
  2739  		// If we succeed, return the data, otherwise pass on to decode error.
  2740  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2741  		if err == nil { 
  2742  			return localVarReturnValue, localVarHttpResponse, err
  2743  		}
  2744  	}
  2745  
  2746  	if localVarHttpResponse.StatusCode >= 300 {
  2747  		newErr := GenericSwaggerError{
  2748  			body: localVarBody,
  2749  			error: localVarHttpResponse.Status,
  2750  		}
  2751  		
  2752  		if localVarHttpResponse.StatusCode == 200 {
  2753  			var v ExamplepbABitOfEverythingRepeated
  2754  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2755  				if err != nil {
  2756  					newErr.error = err.Error()
  2757  					return localVarReturnValue, localVarHttpResponse, newErr
  2758  				}
  2759  				newErr.model = v
  2760  				return localVarReturnValue, localVarHttpResponse, newErr
  2761  		}
  2762  		
  2763  		if localVarHttpResponse.StatusCode == 403 {
  2764  			var v interface{}
  2765  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2766  				if err != nil {
  2767  					newErr.error = err.Error()
  2768  					return localVarReturnValue, localVarHttpResponse, newErr
  2769  				}
  2770  				newErr.model = v
  2771  				return localVarReturnValue, localVarHttpResponse, newErr
  2772  		}
  2773  		
  2774  		if localVarHttpResponse.StatusCode == 404 {
  2775  			var v string
  2776  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2777  				if err != nil {
  2778  					newErr.error = err.Error()
  2779  					return localVarReturnValue, localVarHttpResponse, newErr
  2780  				}
  2781  				newErr.model = v
  2782  				return localVarReturnValue, localVarHttpResponse, newErr
  2783  		}
  2784  		
  2785  		if localVarHttpResponse.StatusCode == 418 {
  2786  			var v ExamplepbNumericEnum
  2787  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2788  				if err != nil {
  2789  					newErr.error = err.Error()
  2790  					return localVarReturnValue, localVarHttpResponse, newErr
  2791  				}
  2792  				newErr.model = v
  2793  				return localVarReturnValue, localVarHttpResponse, newErr
  2794  		}
  2795  		
  2796  		if localVarHttpResponse.StatusCode == 500 {
  2797  			var v ExamplepbErrorResponse
  2798  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2799  				if err != nil {
  2800  					newErr.error = err.Error()
  2801  					return localVarReturnValue, localVarHttpResponse, newErr
  2802  				}
  2803  				newErr.model = v
  2804  				return localVarReturnValue, localVarHttpResponse, newErr
  2805  		}
  2806  		
  2807  		if localVarHttpResponse.StatusCode == 0 {
  2808  			var v RuntimeError
  2809  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2810  				if err != nil {
  2811  					newErr.error = err.Error()
  2812  					return localVarReturnValue, localVarHttpResponse, newErr
  2813  				}
  2814  				newErr.model = v
  2815  				return localVarReturnValue, localVarHttpResponse, newErr
  2816  		}
  2817  		
  2818  		return localVarReturnValue, localVarHttpResponse, newErr
  2819  	}
  2820  
  2821  	return localVarReturnValue, localVarHttpResponse, nil
  2822  }
  2823  
  2824  /* 
  2825  ABitOfEverythingServiceApiService
  2826   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  2827   * @param uuid
  2828  
  2829  @return ExamplepbABitOfEverything
  2830  */
  2831  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceLookup(ctx context.Context, uuid string) (ExamplepbABitOfEverything, *http.Response, error) {
  2832  	var (
  2833  		localVarHttpMethod = strings.ToUpper("Get")
  2834  		localVarPostBody   interface{}
  2835  		localVarFileName   string
  2836  		localVarFileBytes  []byte
  2837  		localVarReturnValue ExamplepbABitOfEverything
  2838  	)
  2839  
  2840  	// create path and map variables
  2841  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/{uuid}"
  2842  	localVarPath = strings.Replace(localVarPath, "{"+"uuid"+"}", fmt.Sprintf("%v", uuid), -1)
  2843  
  2844  	localVarHeaderParams := make(map[string]string)
  2845  	localVarQueryParams := url.Values{}
  2846  	localVarFormParams := url.Values{}
  2847  
  2848  	// to determine the Content-Type header
  2849  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  2850  
  2851  	// set Content-Type header
  2852  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  2853  	if localVarHttpContentType != "" {
  2854  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  2855  	}
  2856  
  2857  	// to determine the Accept header
  2858  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  2859  
  2860  	// set Accept header
  2861  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  2862  	if localVarHttpHeaderAccept != "" {
  2863  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  2864  	}
  2865  	if ctx != nil {
  2866  		// API Key Authentication
  2867  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  2868  			var key string
  2869  			if auth.Prefix != "" {
  2870  				key = auth.Prefix + " " + auth.Key
  2871  			} else {
  2872  				key = auth.Key
  2873  			}
  2874  			localVarHeaderParams["X-API-Key"] = key
  2875  			
  2876  		}
  2877  	}
  2878  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  2879  	if err != nil {
  2880  		return localVarReturnValue, nil, err
  2881  	}
  2882  
  2883  	localVarHttpResponse, err := a.client.callAPI(r)
  2884  	if err != nil || localVarHttpResponse == nil {
  2885  		return localVarReturnValue, localVarHttpResponse, err
  2886  	}
  2887  
  2888  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  2889  	localVarHttpResponse.Body.Close()
  2890  	if err != nil {
  2891  		return localVarReturnValue, localVarHttpResponse, err
  2892  	}
  2893  
  2894  	if localVarHttpResponse.StatusCode < 300 {
  2895  		// If we succeed, return the data, otherwise pass on to decode error.
  2896  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2897  		if err == nil { 
  2898  			return localVarReturnValue, localVarHttpResponse, err
  2899  		}
  2900  	}
  2901  
  2902  	if localVarHttpResponse.StatusCode >= 300 {
  2903  		newErr := GenericSwaggerError{
  2904  			body: localVarBody,
  2905  			error: localVarHttpResponse.Status,
  2906  		}
  2907  		
  2908  		if localVarHttpResponse.StatusCode == 200 {
  2909  			var v ExamplepbABitOfEverything
  2910  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2911  				if err != nil {
  2912  					newErr.error = err.Error()
  2913  					return localVarReturnValue, localVarHttpResponse, newErr
  2914  				}
  2915  				newErr.model = v
  2916  				return localVarReturnValue, localVarHttpResponse, newErr
  2917  		}
  2918  		
  2919  		if localVarHttpResponse.StatusCode == 403 {
  2920  			var v interface{}
  2921  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2922  				if err != nil {
  2923  					newErr.error = err.Error()
  2924  					return localVarReturnValue, localVarHttpResponse, newErr
  2925  				}
  2926  				newErr.model = v
  2927  				return localVarReturnValue, localVarHttpResponse, newErr
  2928  		}
  2929  		
  2930  		if localVarHttpResponse.StatusCode == 404 {
  2931  			var v string
  2932  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2933  				if err != nil {
  2934  					newErr.error = err.Error()
  2935  					return localVarReturnValue, localVarHttpResponse, newErr
  2936  				}
  2937  				newErr.model = v
  2938  				return localVarReturnValue, localVarHttpResponse, newErr
  2939  		}
  2940  		
  2941  		if localVarHttpResponse.StatusCode == 418 {
  2942  			var v ExamplepbNumericEnum
  2943  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2944  				if err != nil {
  2945  					newErr.error = err.Error()
  2946  					return localVarReturnValue, localVarHttpResponse, newErr
  2947  				}
  2948  				newErr.model = v
  2949  				return localVarReturnValue, localVarHttpResponse, newErr
  2950  		}
  2951  		
  2952  		if localVarHttpResponse.StatusCode == 500 {
  2953  			var v ExamplepbErrorResponse
  2954  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2955  				if err != nil {
  2956  					newErr.error = err.Error()
  2957  					return localVarReturnValue, localVarHttpResponse, newErr
  2958  				}
  2959  				newErr.model = v
  2960  				return localVarReturnValue, localVarHttpResponse, newErr
  2961  		}
  2962  		
  2963  		if localVarHttpResponse.StatusCode == 0 {
  2964  			var v RuntimeError
  2965  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  2966  				if err != nil {
  2967  					newErr.error = err.Error()
  2968  					return localVarReturnValue, localVarHttpResponse, newErr
  2969  				}
  2970  				newErr.model = v
  2971  				return localVarReturnValue, localVarHttpResponse, newErr
  2972  		}
  2973  		
  2974  		return localVarReturnValue, localVarHttpResponse, newErr
  2975  	}
  2976  
  2977  	return localVarReturnValue, localVarHttpResponse, nil
  2978  }
  2979  
  2980  /* 
  2981  ABitOfEverythingServiceApiService
  2982   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  2983  
  2984  @return string
  2985  */
  2986  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceOverwriteResponseContentType(ctx context.Context) (string, *http.Response, error) {
  2987  	var (
  2988  		localVarHttpMethod = strings.ToUpper("Get")
  2989  		localVarPostBody   interface{}
  2990  		localVarFileName   string
  2991  		localVarFileBytes  []byte
  2992  		localVarReturnValue string
  2993  	)
  2994  
  2995  	// create path and map variables
  2996  	localVarPath := a.client.cfg.BasePath + "/v2/example/overwriteresponsecontenttype"
  2997  
  2998  	localVarHeaderParams := make(map[string]string)
  2999  	localVarQueryParams := url.Values{}
  3000  	localVarFormParams := url.Values{}
  3001  
  3002  	// to determine the Content-Type header
  3003  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3004  
  3005  	// set Content-Type header
  3006  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3007  	if localVarHttpContentType != "" {
  3008  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3009  	}
  3010  
  3011  	// to determine the Accept header
  3012  	localVarHttpHeaderAccepts := []string{"application/text"}
  3013  
  3014  	// set Accept header
  3015  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3016  	if localVarHttpHeaderAccept != "" {
  3017  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3018  	}
  3019  	if ctx != nil {
  3020  		// API Key Authentication
  3021  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3022  			var key string
  3023  			if auth.Prefix != "" {
  3024  				key = auth.Prefix + " " + auth.Key
  3025  			} else {
  3026  				key = auth.Key
  3027  			}
  3028  			localVarHeaderParams["X-API-Key"] = key
  3029  			
  3030  		}
  3031  	}
  3032  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3033  	if err != nil {
  3034  		return localVarReturnValue, nil, err
  3035  	}
  3036  
  3037  	localVarHttpResponse, err := a.client.callAPI(r)
  3038  	if err != nil || localVarHttpResponse == nil {
  3039  		return localVarReturnValue, localVarHttpResponse, err
  3040  	}
  3041  
  3042  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3043  	localVarHttpResponse.Body.Close()
  3044  	if err != nil {
  3045  		return localVarReturnValue, localVarHttpResponse, err
  3046  	}
  3047  
  3048  	if localVarHttpResponse.StatusCode < 300 {
  3049  		// If we succeed, return the data, otherwise pass on to decode error.
  3050  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3051  		if err == nil { 
  3052  			return localVarReturnValue, localVarHttpResponse, err
  3053  		}
  3054  	}
  3055  
  3056  	if localVarHttpResponse.StatusCode >= 300 {
  3057  		newErr := GenericSwaggerError{
  3058  			body: localVarBody,
  3059  			error: localVarHttpResponse.Status,
  3060  		}
  3061  		
  3062  		if localVarHttpResponse.StatusCode == 200 {
  3063  			var v string
  3064  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3065  				if err != nil {
  3066  					newErr.error = err.Error()
  3067  					return localVarReturnValue, localVarHttpResponse, newErr
  3068  				}
  3069  				newErr.model = v
  3070  				return localVarReturnValue, localVarHttpResponse, newErr
  3071  		}
  3072  		
  3073  		if localVarHttpResponse.StatusCode == 403 {
  3074  			var v interface{}
  3075  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3076  				if err != nil {
  3077  					newErr.error = err.Error()
  3078  					return localVarReturnValue, localVarHttpResponse, newErr
  3079  				}
  3080  				newErr.model = v
  3081  				return localVarReturnValue, localVarHttpResponse, newErr
  3082  		}
  3083  		
  3084  		if localVarHttpResponse.StatusCode == 404 {
  3085  			var v string
  3086  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3087  				if err != nil {
  3088  					newErr.error = err.Error()
  3089  					return localVarReturnValue, localVarHttpResponse, newErr
  3090  				}
  3091  				newErr.model = v
  3092  				return localVarReturnValue, localVarHttpResponse, newErr
  3093  		}
  3094  		
  3095  		if localVarHttpResponse.StatusCode == 418 {
  3096  			var v ExamplepbNumericEnum
  3097  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3098  				if err != nil {
  3099  					newErr.error = err.Error()
  3100  					return localVarReturnValue, localVarHttpResponse, newErr
  3101  				}
  3102  				newErr.model = v
  3103  				return localVarReturnValue, localVarHttpResponse, newErr
  3104  		}
  3105  		
  3106  		if localVarHttpResponse.StatusCode == 500 {
  3107  			var v ExamplepbErrorResponse
  3108  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3109  				if err != nil {
  3110  					newErr.error = err.Error()
  3111  					return localVarReturnValue, localVarHttpResponse, newErr
  3112  				}
  3113  				newErr.model = v
  3114  				return localVarReturnValue, localVarHttpResponse, newErr
  3115  		}
  3116  		
  3117  		if localVarHttpResponse.StatusCode == 0 {
  3118  			var v RuntimeError
  3119  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3120  				if err != nil {
  3121  					newErr.error = err.Error()
  3122  					return localVarReturnValue, localVarHttpResponse, newErr
  3123  				}
  3124  				newErr.model = v
  3125  				return localVarReturnValue, localVarHttpResponse, newErr
  3126  		}
  3127  		
  3128  		return localVarReturnValue, localVarHttpResponse, newErr
  3129  	}
  3130  
  3131  	return localVarReturnValue, localVarHttpResponse, nil
  3132  }
  3133  
  3134  /* 
  3135  ABitOfEverythingServiceApiService
  3136   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3137   * @param name
  3138   * @param body
  3139  
  3140  @return interface{}
  3141  */
  3142  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServicePostWithEmptyBody(ctx context.Context, name string, body ExamplepbBody) (interface{}, *http.Response, error) {
  3143  	var (
  3144  		localVarHttpMethod = strings.ToUpper("Post")
  3145  		localVarPostBody   interface{}
  3146  		localVarFileName   string
  3147  		localVarFileBytes  []byte
  3148  		localVarReturnValue interface{}
  3149  	)
  3150  
  3151  	// create path and map variables
  3152  	localVarPath := a.client.cfg.BasePath + "/v2/example/postwithemptybody/{name}"
  3153  	localVarPath = strings.Replace(localVarPath, "{"+"name"+"}", fmt.Sprintf("%v", name), -1)
  3154  
  3155  	localVarHeaderParams := make(map[string]string)
  3156  	localVarQueryParams := url.Values{}
  3157  	localVarFormParams := url.Values{}
  3158  
  3159  	// to determine the Content-Type header
  3160  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3161  
  3162  	// set Content-Type header
  3163  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3164  	if localVarHttpContentType != "" {
  3165  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3166  	}
  3167  
  3168  	// to determine the Accept header
  3169  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3170  
  3171  	// set Accept header
  3172  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3173  	if localVarHttpHeaderAccept != "" {
  3174  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3175  	}
  3176  	// body params
  3177  	localVarPostBody = &body
  3178  	if ctx != nil {
  3179  		// API Key Authentication
  3180  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3181  			var key string
  3182  			if auth.Prefix != "" {
  3183  				key = auth.Prefix + " " + auth.Key
  3184  			} else {
  3185  				key = auth.Key
  3186  			}
  3187  			localVarHeaderParams["X-API-Key"] = key
  3188  			
  3189  		}
  3190  	}
  3191  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3192  	if err != nil {
  3193  		return localVarReturnValue, nil, err
  3194  	}
  3195  
  3196  	localVarHttpResponse, err := a.client.callAPI(r)
  3197  	if err != nil || localVarHttpResponse == nil {
  3198  		return localVarReturnValue, localVarHttpResponse, err
  3199  	}
  3200  
  3201  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3202  	localVarHttpResponse.Body.Close()
  3203  	if err != nil {
  3204  		return localVarReturnValue, localVarHttpResponse, err
  3205  	}
  3206  
  3207  	if localVarHttpResponse.StatusCode < 300 {
  3208  		// If we succeed, return the data, otherwise pass on to decode error.
  3209  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3210  		if err == nil { 
  3211  			return localVarReturnValue, localVarHttpResponse, err
  3212  		}
  3213  	}
  3214  
  3215  	if localVarHttpResponse.StatusCode >= 300 {
  3216  		newErr := GenericSwaggerError{
  3217  			body: localVarBody,
  3218  			error: localVarHttpResponse.Status,
  3219  		}
  3220  		
  3221  		if localVarHttpResponse.StatusCode == 200 {
  3222  			var v interface{}
  3223  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3224  				if err != nil {
  3225  					newErr.error = err.Error()
  3226  					return localVarReturnValue, localVarHttpResponse, newErr
  3227  				}
  3228  				newErr.model = v
  3229  				return localVarReturnValue, localVarHttpResponse, newErr
  3230  		}
  3231  		
  3232  		if localVarHttpResponse.StatusCode == 403 {
  3233  			var v interface{}
  3234  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3235  				if err != nil {
  3236  					newErr.error = err.Error()
  3237  					return localVarReturnValue, localVarHttpResponse, newErr
  3238  				}
  3239  				newErr.model = v
  3240  				return localVarReturnValue, localVarHttpResponse, newErr
  3241  		}
  3242  		
  3243  		if localVarHttpResponse.StatusCode == 404 {
  3244  			var v string
  3245  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3246  				if err != nil {
  3247  					newErr.error = err.Error()
  3248  					return localVarReturnValue, localVarHttpResponse, newErr
  3249  				}
  3250  				newErr.model = v
  3251  				return localVarReturnValue, localVarHttpResponse, newErr
  3252  		}
  3253  		
  3254  		if localVarHttpResponse.StatusCode == 418 {
  3255  			var v ExamplepbNumericEnum
  3256  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3257  				if err != nil {
  3258  					newErr.error = err.Error()
  3259  					return localVarReturnValue, localVarHttpResponse, newErr
  3260  				}
  3261  				newErr.model = v
  3262  				return localVarReturnValue, localVarHttpResponse, newErr
  3263  		}
  3264  		
  3265  		if localVarHttpResponse.StatusCode == 500 {
  3266  			var v ExamplepbErrorResponse
  3267  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3268  				if err != nil {
  3269  					newErr.error = err.Error()
  3270  					return localVarReturnValue, localVarHttpResponse, newErr
  3271  				}
  3272  				newErr.model = v
  3273  				return localVarReturnValue, localVarHttpResponse, newErr
  3274  		}
  3275  		
  3276  		if localVarHttpResponse.StatusCode == 0 {
  3277  			var v RuntimeError
  3278  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3279  				if err != nil {
  3280  					newErr.error = err.Error()
  3281  					return localVarReturnValue, localVarHttpResponse, newErr
  3282  				}
  3283  				newErr.model = v
  3284  				return localVarReturnValue, localVarHttpResponse, newErr
  3285  		}
  3286  		
  3287  		return localVarReturnValue, localVarHttpResponse, newErr
  3288  	}
  3289  
  3290  	return localVarReturnValue, localVarHttpResponse, nil
  3291  }
  3292  
  3293  /* 
  3294  ABitOfEverythingServiceApiService
  3295   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3296  
  3297  @return interface{}
  3298  */
  3299  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceTimeout(ctx context.Context) (interface{}, *http.Response, error) {
  3300  	var (
  3301  		localVarHttpMethod = strings.ToUpper("Get")
  3302  		localVarPostBody   interface{}
  3303  		localVarFileName   string
  3304  		localVarFileBytes  []byte
  3305  		localVarReturnValue interface{}
  3306  	)
  3307  
  3308  	// create path and map variables
  3309  	localVarPath := a.client.cfg.BasePath + "/v2/example/timeout"
  3310  
  3311  	localVarHeaderParams := make(map[string]string)
  3312  	localVarQueryParams := url.Values{}
  3313  	localVarFormParams := url.Values{}
  3314  
  3315  	// to determine the Content-Type header
  3316  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3317  
  3318  	// set Content-Type header
  3319  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3320  	if localVarHttpContentType != "" {
  3321  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3322  	}
  3323  
  3324  	// to determine the Accept header
  3325  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3326  
  3327  	// set Accept header
  3328  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3329  	if localVarHttpHeaderAccept != "" {
  3330  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3331  	}
  3332  	if ctx != nil {
  3333  		// API Key Authentication
  3334  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3335  			var key string
  3336  			if auth.Prefix != "" {
  3337  				key = auth.Prefix + " " + auth.Key
  3338  			} else {
  3339  				key = auth.Key
  3340  			}
  3341  			localVarHeaderParams["X-API-Key"] = key
  3342  			
  3343  		}
  3344  	}
  3345  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3346  	if err != nil {
  3347  		return localVarReturnValue, nil, err
  3348  	}
  3349  
  3350  	localVarHttpResponse, err := a.client.callAPI(r)
  3351  	if err != nil || localVarHttpResponse == nil {
  3352  		return localVarReturnValue, localVarHttpResponse, err
  3353  	}
  3354  
  3355  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3356  	localVarHttpResponse.Body.Close()
  3357  	if err != nil {
  3358  		return localVarReturnValue, localVarHttpResponse, err
  3359  	}
  3360  
  3361  	if localVarHttpResponse.StatusCode < 300 {
  3362  		// If we succeed, return the data, otherwise pass on to decode error.
  3363  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3364  		if err == nil { 
  3365  			return localVarReturnValue, localVarHttpResponse, err
  3366  		}
  3367  	}
  3368  
  3369  	if localVarHttpResponse.StatusCode >= 300 {
  3370  		newErr := GenericSwaggerError{
  3371  			body: localVarBody,
  3372  			error: localVarHttpResponse.Status,
  3373  		}
  3374  		
  3375  		if localVarHttpResponse.StatusCode == 200 {
  3376  			var v interface{}
  3377  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3378  				if err != nil {
  3379  					newErr.error = err.Error()
  3380  					return localVarReturnValue, localVarHttpResponse, newErr
  3381  				}
  3382  				newErr.model = v
  3383  				return localVarReturnValue, localVarHttpResponse, newErr
  3384  		}
  3385  		
  3386  		if localVarHttpResponse.StatusCode == 403 {
  3387  			var v interface{}
  3388  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3389  				if err != nil {
  3390  					newErr.error = err.Error()
  3391  					return localVarReturnValue, localVarHttpResponse, newErr
  3392  				}
  3393  				newErr.model = v
  3394  				return localVarReturnValue, localVarHttpResponse, newErr
  3395  		}
  3396  		
  3397  		if localVarHttpResponse.StatusCode == 404 {
  3398  			var v string
  3399  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3400  				if err != nil {
  3401  					newErr.error = err.Error()
  3402  					return localVarReturnValue, localVarHttpResponse, newErr
  3403  				}
  3404  				newErr.model = v
  3405  				return localVarReturnValue, localVarHttpResponse, newErr
  3406  		}
  3407  		
  3408  		if localVarHttpResponse.StatusCode == 418 {
  3409  			var v ExamplepbNumericEnum
  3410  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3411  				if err != nil {
  3412  					newErr.error = err.Error()
  3413  					return localVarReturnValue, localVarHttpResponse, newErr
  3414  				}
  3415  				newErr.model = v
  3416  				return localVarReturnValue, localVarHttpResponse, newErr
  3417  		}
  3418  		
  3419  		if localVarHttpResponse.StatusCode == 500 {
  3420  			var v ExamplepbErrorResponse
  3421  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3422  				if err != nil {
  3423  					newErr.error = err.Error()
  3424  					return localVarReturnValue, localVarHttpResponse, newErr
  3425  				}
  3426  				newErr.model = v
  3427  				return localVarReturnValue, localVarHttpResponse, newErr
  3428  		}
  3429  		
  3430  		if localVarHttpResponse.StatusCode == 0 {
  3431  			var v RuntimeError
  3432  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3433  				if err != nil {
  3434  					newErr.error = err.Error()
  3435  					return localVarReturnValue, localVarHttpResponse, newErr
  3436  				}
  3437  				newErr.model = v
  3438  				return localVarReturnValue, localVarHttpResponse, newErr
  3439  		}
  3440  		
  3441  		return localVarReturnValue, localVarHttpResponse, newErr
  3442  	}
  3443  
  3444  	return localVarReturnValue, localVarHttpResponse, nil
  3445  }
  3446  
  3447  /* 
  3448  ABitOfEverythingServiceApiService
  3449   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3450   * @param uuid
  3451   * @param body
  3452  
  3453  @return interface{}
  3454  */
  3455  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceUpdate(ctx context.Context, uuid string, body ExamplepbABitOfEverything) (interface{}, *http.Response, error) {
  3456  	var (
  3457  		localVarHttpMethod = strings.ToUpper("Put")
  3458  		localVarPostBody   interface{}
  3459  		localVarFileName   string
  3460  		localVarFileBytes  []byte
  3461  		localVarReturnValue interface{}
  3462  	)
  3463  
  3464  	// create path and map variables
  3465  	localVarPath := a.client.cfg.BasePath + "/v1/example/a_bit_of_everything/{uuid}"
  3466  	localVarPath = strings.Replace(localVarPath, "{"+"uuid"+"}", fmt.Sprintf("%v", uuid), -1)
  3467  
  3468  	localVarHeaderParams := make(map[string]string)
  3469  	localVarQueryParams := url.Values{}
  3470  	localVarFormParams := url.Values{}
  3471  
  3472  	// to determine the Content-Type header
  3473  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3474  
  3475  	// set Content-Type header
  3476  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3477  	if localVarHttpContentType != "" {
  3478  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3479  	}
  3480  
  3481  	// to determine the Accept header
  3482  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3483  
  3484  	// set Accept header
  3485  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3486  	if localVarHttpHeaderAccept != "" {
  3487  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3488  	}
  3489  	// body params
  3490  	localVarPostBody = &body
  3491  	if ctx != nil {
  3492  		// API Key Authentication
  3493  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3494  			var key string
  3495  			if auth.Prefix != "" {
  3496  				key = auth.Prefix + " " + auth.Key
  3497  			} else {
  3498  				key = auth.Key
  3499  			}
  3500  			localVarHeaderParams["X-API-Key"] = key
  3501  			
  3502  		}
  3503  	}
  3504  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3505  	if err != nil {
  3506  		return localVarReturnValue, nil, err
  3507  	}
  3508  
  3509  	localVarHttpResponse, err := a.client.callAPI(r)
  3510  	if err != nil || localVarHttpResponse == nil {
  3511  		return localVarReturnValue, localVarHttpResponse, err
  3512  	}
  3513  
  3514  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3515  	localVarHttpResponse.Body.Close()
  3516  	if err != nil {
  3517  		return localVarReturnValue, localVarHttpResponse, err
  3518  	}
  3519  
  3520  	if localVarHttpResponse.StatusCode < 300 {
  3521  		// If we succeed, return the data, otherwise pass on to decode error.
  3522  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3523  		if err == nil { 
  3524  			return localVarReturnValue, localVarHttpResponse, err
  3525  		}
  3526  	}
  3527  
  3528  	if localVarHttpResponse.StatusCode >= 300 {
  3529  		newErr := GenericSwaggerError{
  3530  			body: localVarBody,
  3531  			error: localVarHttpResponse.Status,
  3532  		}
  3533  		
  3534  		if localVarHttpResponse.StatusCode == 200 {
  3535  			var v interface{}
  3536  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3537  				if err != nil {
  3538  					newErr.error = err.Error()
  3539  					return localVarReturnValue, localVarHttpResponse, newErr
  3540  				}
  3541  				newErr.model = v
  3542  				return localVarReturnValue, localVarHttpResponse, newErr
  3543  		}
  3544  		
  3545  		if localVarHttpResponse.StatusCode == 403 {
  3546  			var v interface{}
  3547  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3548  				if err != nil {
  3549  					newErr.error = err.Error()
  3550  					return localVarReturnValue, localVarHttpResponse, newErr
  3551  				}
  3552  				newErr.model = v
  3553  				return localVarReturnValue, localVarHttpResponse, newErr
  3554  		}
  3555  		
  3556  		if localVarHttpResponse.StatusCode == 404 {
  3557  			var v string
  3558  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3559  				if err != nil {
  3560  					newErr.error = err.Error()
  3561  					return localVarReturnValue, localVarHttpResponse, newErr
  3562  				}
  3563  				newErr.model = v
  3564  				return localVarReturnValue, localVarHttpResponse, newErr
  3565  		}
  3566  		
  3567  		if localVarHttpResponse.StatusCode == 418 {
  3568  			var v ExamplepbNumericEnum
  3569  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3570  				if err != nil {
  3571  					newErr.error = err.Error()
  3572  					return localVarReturnValue, localVarHttpResponse, newErr
  3573  				}
  3574  				newErr.model = v
  3575  				return localVarReturnValue, localVarHttpResponse, newErr
  3576  		}
  3577  		
  3578  		if localVarHttpResponse.StatusCode == 500 {
  3579  			var v ExamplepbErrorResponse
  3580  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3581  				if err != nil {
  3582  					newErr.error = err.Error()
  3583  					return localVarReturnValue, localVarHttpResponse, newErr
  3584  				}
  3585  				newErr.model = v
  3586  				return localVarReturnValue, localVarHttpResponse, newErr
  3587  		}
  3588  		
  3589  		if localVarHttpResponse.StatusCode == 0 {
  3590  			var v RuntimeError
  3591  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3592  				if err != nil {
  3593  					newErr.error = err.Error()
  3594  					return localVarReturnValue, localVarHttpResponse, newErr
  3595  				}
  3596  				newErr.model = v
  3597  				return localVarReturnValue, localVarHttpResponse, newErr
  3598  		}
  3599  		
  3600  		return localVarReturnValue, localVarHttpResponse, newErr
  3601  	}
  3602  
  3603  	return localVarReturnValue, localVarHttpResponse, nil
  3604  }
  3605  
  3606  /* 
  3607  ABitOfEverythingServiceApiService
  3608   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3609   * @param abeUuid
  3610   * @param body
  3611   * @param optional nil or *ABitOfEverythingServiceUpdateV2Opts - Optional Parameters:
  3612       * @param "UpdateMaskPaths" (optional.Interface of []string) -  The set of field mask paths.
  3613  
  3614  @return interface{}
  3615  */
  3616  
  3617  type ABitOfEverythingServiceUpdateV2Opts struct { 
  3618  	UpdateMaskPaths optional.Interface
  3619  }
  3620  
  3621  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceUpdateV2(ctx context.Context, abeUuid string, body ExamplepbABitOfEverything, localVarOptionals *ABitOfEverythingServiceUpdateV2Opts) (interface{}, *http.Response, error) {
  3622  	var (
  3623  		localVarHttpMethod = strings.ToUpper("Put")
  3624  		localVarPostBody   interface{}
  3625  		localVarFileName   string
  3626  		localVarFileBytes  []byte
  3627  		localVarReturnValue interface{}
  3628  	)
  3629  
  3630  	// create path and map variables
  3631  	localVarPath := a.client.cfg.BasePath + "/v2/example/a_bit_of_everything/{abe.uuid}"
  3632  	localVarPath = strings.Replace(localVarPath, "{"+"abe.uuid"+"}", fmt.Sprintf("%v", abeUuid), -1)
  3633  
  3634  	localVarHeaderParams := make(map[string]string)
  3635  	localVarQueryParams := url.Values{}
  3636  	localVarFormParams := url.Values{}
  3637  
  3638  	if localVarOptionals != nil && localVarOptionals.UpdateMaskPaths.IsSet() {
  3639  		localVarQueryParams.Add("update_mask.paths", parameterToString(localVarOptionals.UpdateMaskPaths.Value(), "multi"))
  3640  	}
  3641  	// to determine the Content-Type header
  3642  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3643  
  3644  	// set Content-Type header
  3645  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3646  	if localVarHttpContentType != "" {
  3647  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3648  	}
  3649  
  3650  	// to determine the Accept header
  3651  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3652  
  3653  	// set Accept header
  3654  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3655  	if localVarHttpHeaderAccept != "" {
  3656  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3657  	}
  3658  	// body params
  3659  	localVarPostBody = &body
  3660  	if ctx != nil {
  3661  		// API Key Authentication
  3662  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3663  			var key string
  3664  			if auth.Prefix != "" {
  3665  				key = auth.Prefix + " " + auth.Key
  3666  			} else {
  3667  				key = auth.Key
  3668  			}
  3669  			localVarHeaderParams["X-API-Key"] = key
  3670  			
  3671  		}
  3672  	}
  3673  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3674  	if err != nil {
  3675  		return localVarReturnValue, nil, err
  3676  	}
  3677  
  3678  	localVarHttpResponse, err := a.client.callAPI(r)
  3679  	if err != nil || localVarHttpResponse == nil {
  3680  		return localVarReturnValue, localVarHttpResponse, err
  3681  	}
  3682  
  3683  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3684  	localVarHttpResponse.Body.Close()
  3685  	if err != nil {
  3686  		return localVarReturnValue, localVarHttpResponse, err
  3687  	}
  3688  
  3689  	if localVarHttpResponse.StatusCode < 300 {
  3690  		// If we succeed, return the data, otherwise pass on to decode error.
  3691  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3692  		if err == nil { 
  3693  			return localVarReturnValue, localVarHttpResponse, err
  3694  		}
  3695  	}
  3696  
  3697  	if localVarHttpResponse.StatusCode >= 300 {
  3698  		newErr := GenericSwaggerError{
  3699  			body: localVarBody,
  3700  			error: localVarHttpResponse.Status,
  3701  		}
  3702  		
  3703  		if localVarHttpResponse.StatusCode == 200 {
  3704  			var v interface{}
  3705  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3706  				if err != nil {
  3707  					newErr.error = err.Error()
  3708  					return localVarReturnValue, localVarHttpResponse, newErr
  3709  				}
  3710  				newErr.model = v
  3711  				return localVarReturnValue, localVarHttpResponse, newErr
  3712  		}
  3713  		
  3714  		if localVarHttpResponse.StatusCode == 403 {
  3715  			var v interface{}
  3716  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3717  				if err != nil {
  3718  					newErr.error = err.Error()
  3719  					return localVarReturnValue, localVarHttpResponse, newErr
  3720  				}
  3721  				newErr.model = v
  3722  				return localVarReturnValue, localVarHttpResponse, newErr
  3723  		}
  3724  		
  3725  		if localVarHttpResponse.StatusCode == 404 {
  3726  			var v string
  3727  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3728  				if err != nil {
  3729  					newErr.error = err.Error()
  3730  					return localVarReturnValue, localVarHttpResponse, newErr
  3731  				}
  3732  				newErr.model = v
  3733  				return localVarReturnValue, localVarHttpResponse, newErr
  3734  		}
  3735  		
  3736  		if localVarHttpResponse.StatusCode == 418 {
  3737  			var v ExamplepbNumericEnum
  3738  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3739  				if err != nil {
  3740  					newErr.error = err.Error()
  3741  					return localVarReturnValue, localVarHttpResponse, newErr
  3742  				}
  3743  				newErr.model = v
  3744  				return localVarReturnValue, localVarHttpResponse, newErr
  3745  		}
  3746  		
  3747  		if localVarHttpResponse.StatusCode == 500 {
  3748  			var v ExamplepbErrorResponse
  3749  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3750  				if err != nil {
  3751  					newErr.error = err.Error()
  3752  					return localVarReturnValue, localVarHttpResponse, newErr
  3753  				}
  3754  				newErr.model = v
  3755  				return localVarReturnValue, localVarHttpResponse, newErr
  3756  		}
  3757  		
  3758  		if localVarHttpResponse.StatusCode == 0 {
  3759  			var v RuntimeError
  3760  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3761  				if err != nil {
  3762  					newErr.error = err.Error()
  3763  					return localVarReturnValue, localVarHttpResponse, newErr
  3764  				}
  3765  				newErr.model = v
  3766  				return localVarReturnValue, localVarHttpResponse, newErr
  3767  		}
  3768  		
  3769  		return localVarReturnValue, localVarHttpResponse, newErr
  3770  	}
  3771  
  3772  	return localVarReturnValue, localVarHttpResponse, nil
  3773  }
  3774  
  3775  /* 
  3776  ABitOfEverythingServiceApiService
  3777   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3778   * @param abeUuid
  3779   * @param body
  3780   * @param optional nil or *ABitOfEverythingServiceUpdateV22Opts - Optional Parameters:
  3781       * @param "UpdateMaskPaths" (optional.Interface of []string) -  The set of field mask paths.
  3782  
  3783  @return interface{}
  3784  */
  3785  
  3786  type ABitOfEverythingServiceUpdateV22Opts struct { 
  3787  	UpdateMaskPaths optional.Interface
  3788  }
  3789  
  3790  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceUpdateV22(ctx context.Context, abeUuid string, body ExamplepbABitOfEverything, localVarOptionals *ABitOfEverythingServiceUpdateV22Opts) (interface{}, *http.Response, error) {
  3791  	var (
  3792  		localVarHttpMethod = strings.ToUpper("Patch")
  3793  		localVarPostBody   interface{}
  3794  		localVarFileName   string
  3795  		localVarFileBytes  []byte
  3796  		localVarReturnValue interface{}
  3797  	)
  3798  
  3799  	// create path and map variables
  3800  	localVarPath := a.client.cfg.BasePath + "/v2/example/a_bit_of_everything/{abe.uuid}"
  3801  	localVarPath = strings.Replace(localVarPath, "{"+"abe.uuid"+"}", fmt.Sprintf("%v", abeUuid), -1)
  3802  
  3803  	localVarHeaderParams := make(map[string]string)
  3804  	localVarQueryParams := url.Values{}
  3805  	localVarFormParams := url.Values{}
  3806  
  3807  	if localVarOptionals != nil && localVarOptionals.UpdateMaskPaths.IsSet() {
  3808  		localVarQueryParams.Add("update_mask.paths", parameterToString(localVarOptionals.UpdateMaskPaths.Value(), "multi"))
  3809  	}
  3810  	// to determine the Content-Type header
  3811  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3812  
  3813  	// set Content-Type header
  3814  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3815  	if localVarHttpContentType != "" {
  3816  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3817  	}
  3818  
  3819  	// to determine the Accept header
  3820  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3821  
  3822  	// set Accept header
  3823  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3824  	if localVarHttpHeaderAccept != "" {
  3825  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3826  	}
  3827  	// body params
  3828  	localVarPostBody = &body
  3829  	if ctx != nil {
  3830  		// API Key Authentication
  3831  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3832  			var key string
  3833  			if auth.Prefix != "" {
  3834  				key = auth.Prefix + " " + auth.Key
  3835  			} else {
  3836  				key = auth.Key
  3837  			}
  3838  			localVarHeaderParams["X-API-Key"] = key
  3839  			
  3840  		}
  3841  	}
  3842  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  3843  	if err != nil {
  3844  		return localVarReturnValue, nil, err
  3845  	}
  3846  
  3847  	localVarHttpResponse, err := a.client.callAPI(r)
  3848  	if err != nil || localVarHttpResponse == nil {
  3849  		return localVarReturnValue, localVarHttpResponse, err
  3850  	}
  3851  
  3852  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  3853  	localVarHttpResponse.Body.Close()
  3854  	if err != nil {
  3855  		return localVarReturnValue, localVarHttpResponse, err
  3856  	}
  3857  
  3858  	if localVarHttpResponse.StatusCode < 300 {
  3859  		// If we succeed, return the data, otherwise pass on to decode error.
  3860  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3861  		if err == nil { 
  3862  			return localVarReturnValue, localVarHttpResponse, err
  3863  		}
  3864  	}
  3865  
  3866  	if localVarHttpResponse.StatusCode >= 300 {
  3867  		newErr := GenericSwaggerError{
  3868  			body: localVarBody,
  3869  			error: localVarHttpResponse.Status,
  3870  		}
  3871  		
  3872  		if localVarHttpResponse.StatusCode == 200 {
  3873  			var v interface{}
  3874  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3875  				if err != nil {
  3876  					newErr.error = err.Error()
  3877  					return localVarReturnValue, localVarHttpResponse, newErr
  3878  				}
  3879  				newErr.model = v
  3880  				return localVarReturnValue, localVarHttpResponse, newErr
  3881  		}
  3882  		
  3883  		if localVarHttpResponse.StatusCode == 403 {
  3884  			var v interface{}
  3885  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3886  				if err != nil {
  3887  					newErr.error = err.Error()
  3888  					return localVarReturnValue, localVarHttpResponse, newErr
  3889  				}
  3890  				newErr.model = v
  3891  				return localVarReturnValue, localVarHttpResponse, newErr
  3892  		}
  3893  		
  3894  		if localVarHttpResponse.StatusCode == 404 {
  3895  			var v string
  3896  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3897  				if err != nil {
  3898  					newErr.error = err.Error()
  3899  					return localVarReturnValue, localVarHttpResponse, newErr
  3900  				}
  3901  				newErr.model = v
  3902  				return localVarReturnValue, localVarHttpResponse, newErr
  3903  		}
  3904  		
  3905  		if localVarHttpResponse.StatusCode == 418 {
  3906  			var v ExamplepbNumericEnum
  3907  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3908  				if err != nil {
  3909  					newErr.error = err.Error()
  3910  					return localVarReturnValue, localVarHttpResponse, newErr
  3911  				}
  3912  				newErr.model = v
  3913  				return localVarReturnValue, localVarHttpResponse, newErr
  3914  		}
  3915  		
  3916  		if localVarHttpResponse.StatusCode == 500 {
  3917  			var v ExamplepbErrorResponse
  3918  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3919  				if err != nil {
  3920  					newErr.error = err.Error()
  3921  					return localVarReturnValue, localVarHttpResponse, newErr
  3922  				}
  3923  				newErr.model = v
  3924  				return localVarReturnValue, localVarHttpResponse, newErr
  3925  		}
  3926  		
  3927  		if localVarHttpResponse.StatusCode == 0 {
  3928  			var v RuntimeError
  3929  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  3930  				if err != nil {
  3931  					newErr.error = err.Error()
  3932  					return localVarReturnValue, localVarHttpResponse, newErr
  3933  				}
  3934  				newErr.model = v
  3935  				return localVarReturnValue, localVarHttpResponse, newErr
  3936  		}
  3937  		
  3938  		return localVarReturnValue, localVarHttpResponse, newErr
  3939  	}
  3940  
  3941  	return localVarReturnValue, localVarHttpResponse, nil
  3942  }
  3943  
  3944  /* 
  3945  ABitOfEverythingServiceApiService
  3946   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  3947   * @param abeUuid
  3948   * @param body
  3949  
  3950  @return interface{}
  3951  */
  3952  func (a *ABitOfEverythingServiceApiService) ABitOfEverythingServiceUpdateV23(ctx context.Context, abeUuid string, body ExamplepbUpdateV2Request) (interface{}, *http.Response, error) {
  3953  	var (
  3954  		localVarHttpMethod = strings.ToUpper("Patch")
  3955  		localVarPostBody   interface{}
  3956  		localVarFileName   string
  3957  		localVarFileBytes  []byte
  3958  		localVarReturnValue interface{}
  3959  	)
  3960  
  3961  	// create path and map variables
  3962  	localVarPath := a.client.cfg.BasePath + "/v2a/example/a_bit_of_everything/{abe.uuid}"
  3963  	localVarPath = strings.Replace(localVarPath, "{"+"abe.uuid"+"}", fmt.Sprintf("%v", abeUuid), -1)
  3964  
  3965  	localVarHeaderParams := make(map[string]string)
  3966  	localVarQueryParams := url.Values{}
  3967  	localVarFormParams := url.Values{}
  3968  
  3969  	// to determine the Content-Type header
  3970  	localVarHttpContentTypes := []string{"application/json", "application/x-foo-mime"}
  3971  
  3972  	// set Content-Type header
  3973  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
  3974  	if localVarHttpContentType != "" {
  3975  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
  3976  	}
  3977  
  3978  	// to determine the Accept header
  3979  	localVarHttpHeaderAccepts := []string{"application/json", "application/x-foo-mime"}
  3980  
  3981  	// set Accept header
  3982  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
  3983  	if localVarHttpHeaderAccept != "" {
  3984  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
  3985  	}
  3986  	// body params
  3987  	localVarPostBody = &body
  3988  	if ctx != nil {
  3989  		// API Key Authentication
  3990  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
  3991  			var key string
  3992  			if auth.Prefix != "" {
  3993  				key = auth.Prefix + " " + auth.Key
  3994  			} else {
  3995  				key = auth.Key
  3996  			}
  3997  			localVarHeaderParams["X-API-Key"] = key
  3998  			
  3999  		}
  4000  	}
  4001  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
  4002  	if err != nil {
  4003  		return localVarReturnValue, nil, err
  4004  	}
  4005  
  4006  	localVarHttpResponse, err := a.client.callAPI(r)
  4007  	if err != nil || localVarHttpResponse == nil {
  4008  		return localVarReturnValue, localVarHttpResponse, err
  4009  	}
  4010  
  4011  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
  4012  	localVarHttpResponse.Body.Close()
  4013  	if err != nil {
  4014  		return localVarReturnValue, localVarHttpResponse, err
  4015  	}
  4016  
  4017  	if localVarHttpResponse.StatusCode < 300 {
  4018  		// If we succeed, return the data, otherwise pass on to decode error.
  4019  		err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4020  		if err == nil { 
  4021  			return localVarReturnValue, localVarHttpResponse, err
  4022  		}
  4023  	}
  4024  
  4025  	if localVarHttpResponse.StatusCode >= 300 {
  4026  		newErr := GenericSwaggerError{
  4027  			body: localVarBody,
  4028  			error: localVarHttpResponse.Status,
  4029  		}
  4030  		
  4031  		if localVarHttpResponse.StatusCode == 200 {
  4032  			var v interface{}
  4033  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4034  				if err != nil {
  4035  					newErr.error = err.Error()
  4036  					return localVarReturnValue, localVarHttpResponse, newErr
  4037  				}
  4038  				newErr.model = v
  4039  				return localVarReturnValue, localVarHttpResponse, newErr
  4040  		}
  4041  		
  4042  		if localVarHttpResponse.StatusCode == 403 {
  4043  			var v interface{}
  4044  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4045  				if err != nil {
  4046  					newErr.error = err.Error()
  4047  					return localVarReturnValue, localVarHttpResponse, newErr
  4048  				}
  4049  				newErr.model = v
  4050  				return localVarReturnValue, localVarHttpResponse, newErr
  4051  		}
  4052  		
  4053  		if localVarHttpResponse.StatusCode == 404 {
  4054  			var v string
  4055  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4056  				if err != nil {
  4057  					newErr.error = err.Error()
  4058  					return localVarReturnValue, localVarHttpResponse, newErr
  4059  				}
  4060  				newErr.model = v
  4061  				return localVarReturnValue, localVarHttpResponse, newErr
  4062  		}
  4063  		
  4064  		if localVarHttpResponse.StatusCode == 418 {
  4065  			var v ExamplepbNumericEnum
  4066  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4067  				if err != nil {
  4068  					newErr.error = err.Error()
  4069  					return localVarReturnValue, localVarHttpResponse, newErr
  4070  				}
  4071  				newErr.model = v
  4072  				return localVarReturnValue, localVarHttpResponse, newErr
  4073  		}
  4074  		
  4075  		if localVarHttpResponse.StatusCode == 500 {
  4076  			var v ExamplepbErrorResponse
  4077  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4078  				if err != nil {
  4079  					newErr.error = err.Error()
  4080  					return localVarReturnValue, localVarHttpResponse, newErr
  4081  				}
  4082  				newErr.model = v
  4083  				return localVarReturnValue, localVarHttpResponse, newErr
  4084  		}
  4085  		
  4086  		if localVarHttpResponse.StatusCode == 0 {
  4087  			var v RuntimeError
  4088  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"));
  4089  				if err != nil {
  4090  					newErr.error = err.Error()
  4091  					return localVarReturnValue, localVarHttpResponse, newErr
  4092  				}
  4093  				newErr.model = v
  4094  				return localVarReturnValue, localVarHttpResponse, newErr
  4095  		}
  4096  		
  4097  		return localVarReturnValue, localVarHttpResponse, newErr
  4098  	}
  4099  
  4100  	return localVarReturnValue, localVarHttpResponse, nil
  4101  }
  4102  

View as plain text