From 33dfcd247d0c9ce2bac819569ca72eced3b4c93f Mon Sep 17 00:00:00 2001 From: hrachya Date: Wed, 15 Apr 2015 13:02:09 -0700 Subject: [PATCH] Adding defaultHeaders dictionary to generated API classes. defaultHeaders will be merged with headerParams before sending the request. fix for https://github.com/swagger-api/swagger-codegen/issues/638 --- .../src/main/resources/objc/api-body.mustache | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/objc/api-body.mustache b/modules/swagger-codegen/src/main/resources/objc/api-body.mustache index 068cf5d3e59..4740c9ebd92 100644 --- a/modules/swagger-codegen/src/main/resources/objc/api-body.mustache +++ b/modules/swagger-codegen/src/main/resources/objc/api-body.mustache @@ -7,6 +7,9 @@ {{/imports}} {{newline}} +@interface {{classname}} () + @property (readwrite, nonatomic, strong) NSMutableDictionary *defaultHeaders; +@end @implementation {{classname}} static NSString * basePath = @"{{basePath}}"; @@ -34,18 +37,19 @@ static NSString * basePath = @"{{basePath}}"; } -(void) addHeader:(NSString*)value forKey:(NSString*)key { - [[self apiClient] setHeaderValue:value forKey:key]; + [self.defaultHeaders setValue:value forKey:key]; } -(id) init { self = [super init]; + self.defaultHeaders = [NSMutableDictionary dictionary]; [self apiClient]; return self; } -(void) setHeaderValue:(NSString*) value forKey:(NSString*)key { - [[self apiClient] setHeaderValue:value forKey:key]; + [self.defaultHeaders setValue:value forKey:key]; } -(unsigned long) requestQueueSize { @@ -82,7 +86,8 @@ static NSString * basePath = @"{{basePath}}"; {{^collectionFormat}}queryParams[@"{{baseName}}"] = {{paramName}};{{/collectionFormat}} } {{/queryParams}} - NSMutableDictionary* headerParams = [[NSMutableDictionary alloc] init]; + NSMutableDictionary* headerParams = [NSMutableDictionary dictionaryWithDictionary:self.defaultHeaders]; + {{#headerParams}}if({{paramName}} != nil) headerParams[@"{{baseName}}"] = {{paramName}}; {{/headerParams}}