forked from loafle/openapi-generator-original
Added authentication for objc client.
This commit is contained in:
parent
ca145297e9
commit
b5429d9e8e
@ -122,6 +122,8 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
|
|||||||
supportingFiles.add(new SupportingFile("SWGFile.m", sourceFolder, "SWGFile.m"));
|
supportingFiles.add(new SupportingFile("SWGFile.m", sourceFolder, "SWGFile.m"));
|
||||||
supportingFiles.add(new SupportingFile("JSONValueTransformer+ISO8601.m", sourceFolder, "JSONValueTransformer+ISO8601.m"));
|
supportingFiles.add(new SupportingFile("JSONValueTransformer+ISO8601.m", sourceFolder, "JSONValueTransformer+ISO8601.m"));
|
||||||
supportingFiles.add(new SupportingFile("JSONValueTransformer+ISO8601.h", sourceFolder, "JSONValueTransformer+ISO8601.h"));
|
supportingFiles.add(new SupportingFile("JSONValueTransformer+ISO8601.h", sourceFolder, "JSONValueTransformer+ISO8601.h"));
|
||||||
|
supportingFiles.add(new SupportingFile("SWGConfiguration-body.mustache", sourceFolder, "SWGConfiguration.m"));
|
||||||
|
supportingFiles.add(new SupportingFile("SWGConfiguration-header.mustache", sourceFolder, "SWGConfiguration.h"));
|
||||||
supportingFiles.add(new SupportingFile("Podfile.mustache", "", "Podfile"));
|
supportingFiles.add(new SupportingFile("Podfile.mustache", "", "Podfile"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,11 +54,16 @@ extern NSString *const SWGResponseObjectErrorKey;
|
|||||||
-(void)setHeaderValue:(NSString*) value
|
-(void)setHeaderValue:(NSString*) value
|
||||||
forKey:(NSString*) forKey;
|
forKey:(NSString*) forKey;
|
||||||
|
|
||||||
|
- (void) updateHeaderParams:(NSDictionary **)headers
|
||||||
|
queryParams:(NSDictionary **)querys
|
||||||
|
WithAuthSettings:(NSArray *)authSettings;
|
||||||
|
|
||||||
-(NSNumber*) dictionary:(NSString*) path
|
-(NSNumber*) dictionary:(NSString*) path
|
||||||
method:(NSString*) method
|
method:(NSString*) method
|
||||||
queryParams:(NSDictionary*) queryParams
|
queryParams:(NSDictionary*) queryParams
|
||||||
body:(id) body
|
body:(id) body
|
||||||
headerParams:(NSDictionary*) headerParams
|
headerParams:(NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType:(NSString*) requestContentType
|
requestContentType:(NSString*) requestContentType
|
||||||
responseContentType:(NSString*) responseContentType
|
responseContentType:(NSString*) responseContentType
|
||||||
completionBlock:(void (^)(NSDictionary*, NSError *))completionBlock;
|
completionBlock:(void (^)(NSDictionary*, NSError *))completionBlock;
|
||||||
@ -68,8 +73,18 @@ extern NSString *const SWGResponseObjectErrorKey;
|
|||||||
queryParams:(NSDictionary*) queryParams
|
queryParams:(NSDictionary*) queryParams
|
||||||
body:(id) body
|
body:(id) body
|
||||||
headerParams:(NSDictionary*) headerParams
|
headerParams:(NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType:(NSString*) requestContentType
|
requestContentType:(NSString*) requestContentType
|
||||||
responseContentType:(NSString*) responseContentType
|
responseContentType:(NSString*) responseContentType
|
||||||
completionBlock:(void (^)(NSString*, NSError *))completionBlock;
|
completionBlock:(void (^)(NSString*, NSError *))completionBlock;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#import "SWGApiClient.h"
|
#import "SWGApiClient.h"
|
||||||
#import "SWGFile.h"
|
#import "SWGFile.h"
|
||||||
#import "SWGQueryParamCollection.h"
|
#import "SWGQueryParamCollection.h"
|
||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
@implementation SWGApiClient
|
@implementation SWGApiClient
|
||||||
|
|
||||||
@ -15,10 +16,22 @@ static NSOperationQueue* sharedQueue;
|
|||||||
static void (^reachabilityChangeBlock)(int);
|
static void (^reachabilityChangeBlock)(int);
|
||||||
static bool loggingEnabled = true;
|
static bool loggingEnabled = true;
|
||||||
|
|
||||||
|
#pragma mark - Log Methods
|
||||||
|
|
||||||
+(void)setLoggingEnabled:(bool) state {
|
+(void)setLoggingEnabled:(bool) state {
|
||||||
loggingEnabled = state;
|
loggingEnabled = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)logRequest:(NSURLRequest*)request {
|
||||||
|
NSLog(@"request: %@", [self descriptionForRequest:request]);
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)logResponse:(id)data forRequest:(NSURLRequest*)request error:(NSError*)error {
|
||||||
|
NSLog(@"request: %@ response: %@ ", [self descriptionForRequest:request], data );
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+(void)clearCache {
|
+(void)clearCache {
|
||||||
[[NSURLCache sharedURLCache] removeAllCachedResponses];
|
[[NSURLCache sharedURLCache] removeAllCachedResponses];
|
||||||
}
|
}
|
||||||
@ -305,19 +318,47 @@ static bool loggingEnabled = true;
|
|||||||
return [[request URL] absoluteString];
|
return [[request URL] absoluteString];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)logRequest:(NSURLRequest*)request {
|
|
||||||
NSLog(@"request: %@", [self descriptionForRequest:request]);
|
/**
|
||||||
|
* Update header and query params based on authentication settings
|
||||||
|
*/
|
||||||
|
- (void) updateHeaderParams:(NSDictionary *__autoreleasing *)headers
|
||||||
|
queryParams:(NSDictionary *__autoreleasing *)querys
|
||||||
|
WithAuthSettings:(NSArray *)authSettings {
|
||||||
|
|
||||||
|
if (!authSettings || [authSettings count] == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
NSMutableDictionary *headersWithAuth = [NSMutableDictionary dictionaryWithDictionary:*headers];
|
||||||
|
NSMutableDictionary *querysWithAuth = [NSMutableDictionary dictionaryWithDictionary:*querys];
|
||||||
|
|
||||||
|
SWGConfiguration *config = [SWGConfiguration sharedConfig];
|
||||||
|
for (NSString *auth in authSettings) {
|
||||||
|
NSDictionary *authSetting = [[config authSettings] objectForKey:auth];
|
||||||
|
|
||||||
|
if (authSetting) {
|
||||||
|
if ([authSetting[@"in"] isEqualToString:@"header"]) {
|
||||||
|
[headersWithAuth setObject:authSetting[@"value"] forKey:authSetting[@"key"]];
|
||||||
|
}
|
||||||
|
else if ([authSetting[@"in"] isEqualToString:@"query"]) {
|
||||||
|
[querysWithAuth setObject:authSetting[@"value"] forKey:authSetting[@"key"]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*headers = [NSDictionary dictionaryWithDictionary:headersWithAuth];
|
||||||
|
*querys = [NSDictionary dictionaryWithDictionary:querysWithAuth];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)logResponse:(id)data forRequest:(NSURLRequest*)request error:(NSError*)error {
|
#pragma mark - Perform Request Methods
|
||||||
NSLog(@"request: %@ response: %@ ", [self descriptionForRequest:request], data );
|
|
||||||
}
|
|
||||||
|
|
||||||
-(NSNumber*) dictionary: (NSString*) path
|
-(NSNumber*) dictionary: (NSString*) path
|
||||||
method: (NSString*) method
|
method: (NSString*) method
|
||||||
queryParams: (NSDictionary*) queryParams
|
queryParams: (NSDictionary*) queryParams
|
||||||
body: (id) body
|
body: (id) body
|
||||||
headerParams: (NSDictionary*) headerParams
|
headerParams: (NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType: (NSString*) requestContentType
|
requestContentType: (NSString*) requestContentType
|
||||||
responseContentType: (NSString*) responseContentType
|
responseContentType: (NSString*) responseContentType
|
||||||
completionBlock: (void (^)(NSDictionary*, NSError *))completionBlock {
|
completionBlock: (void (^)(NSDictionary*, NSError *))completionBlock {
|
||||||
@ -343,6 +384,9 @@ static bool loggingEnabled = true;
|
|||||||
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// auth setting
|
||||||
|
[self updateHeaderParams:&headerParams queryParams:&queryParams WithAuthSettings:authSettings];
|
||||||
|
|
||||||
NSMutableURLRequest * request = nil;
|
NSMutableURLRequest * request = nil;
|
||||||
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
||||||
SWGFile * file;
|
SWGFile * file;
|
||||||
@ -476,6 +520,7 @@ static bool loggingEnabled = true;
|
|||||||
queryParams: (NSDictionary*) queryParams
|
queryParams: (NSDictionary*) queryParams
|
||||||
body: (id) body
|
body: (id) body
|
||||||
headerParams: (NSDictionary*) headerParams
|
headerParams: (NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType: (NSString*) requestContentType
|
requestContentType: (NSString*) requestContentType
|
||||||
responseContentType: (NSString*) responseContentType
|
responseContentType: (NSString*) responseContentType
|
||||||
completionBlock: (void (^)(NSString*, NSError *))completionBlock {
|
completionBlock: (void (^)(NSString*, NSError *))completionBlock {
|
||||||
@ -501,6 +546,9 @@ static bool loggingEnabled = true;
|
|||||||
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// auth setting
|
||||||
|
[self updateHeaderParams:&headerParams queryParams:&queryParams WithAuthSettings:authSettings];
|
||||||
|
|
||||||
NSMutableURLRequest * request = nil;
|
NSMutableURLRequest * request = nil;
|
||||||
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
||||||
SWGFile * file;
|
SWGFile * file;
|
||||||
|
@ -0,0 +1,91 @@
|
|||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
|
@interface SWGConfiguration ()
|
||||||
|
|
||||||
|
@property (readwrite, nonatomic, strong) NSMutableDictionary *mutableApiKey;
|
||||||
|
@property (readwrite, nonatomic, strong) NSMutableDictionary *mutableApiKeyPrefix;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation SWGConfiguration
|
||||||
|
|
||||||
|
#pragma mark - Singletion Methods
|
||||||
|
|
||||||
|
+ (instancetype) sharedConfig {
|
||||||
|
static SWGConfiguration *shardConfig = nil;
|
||||||
|
static dispatch_once_t onceToken;
|
||||||
|
dispatch_once(&onceToken, ^{
|
||||||
|
shardConfig = [[self alloc] init];
|
||||||
|
});
|
||||||
|
return shardConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Initialize Methods
|
||||||
|
|
||||||
|
- (instancetype) init {
|
||||||
|
self = [super init];
|
||||||
|
if (self) {
|
||||||
|
self.username = @"";
|
||||||
|
self.password = @"";
|
||||||
|
self.mutableApiKey = [NSMutableDictionary dictionary];
|
||||||
|
self.mutableApiKeyPrefix = [NSMutableDictionary dictionary];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Instance Methods
|
||||||
|
|
||||||
|
- (NSString *) getApiKeyWithPrefix:(NSString *)key {
|
||||||
|
if ([self.apiKeyPrefix objectForKey:key] && [self.apiKey objectForKey:key]) {
|
||||||
|
return [NSString stringWithFormat:@"%@ %@", [self.apiKeyPrefix objectForKey:key], [self.apiKey objectForKey:key]];
|
||||||
|
}
|
||||||
|
else if ([self.apiKey objectForKey:key]) {
|
||||||
|
return [NSString stringWithFormat:@"%@", [self.apiKey objectForKey:key]];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return @"";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Setter Methods
|
||||||
|
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyField:(NSString *)field {
|
||||||
|
[self.mutableApiKey setValue:value forKey:field];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyPrefixField:(NSString *)field {
|
||||||
|
[self.mutableApiKeyPrefix setValue:value forKey:field];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Getter Methods
|
||||||
|
|
||||||
|
- (NSDictionary *) apiKey {
|
||||||
|
return [NSDictionary dictionaryWithDictionary:self.mutableApiKey];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSDictionary *) apiKeyPrefix {
|
||||||
|
return [NSDictionary dictionaryWithDictionary:self.mutableApiKeyPrefix];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
|
- (NSDictionary *) authSettings {
|
||||||
|
return @{ {{#authMethods}}{{#isApiKey}}
|
||||||
|
@"{{name}}": @{
|
||||||
|
@"type": @"api_key",
|
||||||
|
@"in": {{#isKeyInHeader}}@"header"{{/isKeyInHeader}}{{#isKeyInQuery}}@"query"{{/isKeyInQuery}},
|
||||||
|
@"key": @"{{keyParamName}}",
|
||||||
|
@"value": [self getApiKeyWithPrefix:@"{{keyParamName}}"]
|
||||||
|
},
|
||||||
|
{{/isApiKey}}{{#isBasic}}
|
||||||
|
@"{{name}}": @{
|
||||||
|
@"type": @"basic",
|
||||||
|
@"in": @"header",
|
||||||
|
@"key": @"Authorization",
|
||||||
|
@"value": [self getBasicAuthToken]
|
||||||
|
},
|
||||||
|
{{/isBasic}}{{/authMethods}}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
@ -0,0 +1,51 @@
|
|||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
@interface SWGConfiguration : NSObject
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api key values for Api Key type Authentication
|
||||||
|
*
|
||||||
|
* To add or remove api key, use `setValue:forApiKeyField:`.
|
||||||
|
*/
|
||||||
|
@property (readonly, nonatomic, strong) NSDictionary *apiKey;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api key prefix values to be prepend to the respective api key
|
||||||
|
*
|
||||||
|
* To add or remove prefix, use `setValue:forApiKeyPrefixField:`.
|
||||||
|
*/
|
||||||
|
@property (readonly, nonatomic, strong) NSDictionary *apiKeyPrefix;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Usename and Password for Basic type Authentication
|
||||||
|
*/
|
||||||
|
@property (nonatomic) NSString *username;
|
||||||
|
@property (nonatomic) NSString *password;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get configuration singleton instance
|
||||||
|
*/
|
||||||
|
+ (instancetype) sharedConfig;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets field in `apiKey`
|
||||||
|
*/
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyField:(NSString*)field;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets field in `apiKeyPrefix`
|
||||||
|
*/
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyPrefixField:(NSString *)field;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get API key (with prefix if set)
|
||||||
|
*/
|
||||||
|
- (NSString *) getApiKeyWithPrefix:(NSString *) key;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Authentication Setings
|
||||||
|
*/
|
||||||
|
- (NSDictionary *) authSettings;
|
||||||
|
|
||||||
|
@end
|
@ -39,6 +39,8 @@ static NSString * basePath = @"{{basePath}}";
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+({{classname}}*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
+({{classname}}*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
||||||
static {{classname}}* singletonAPI = nil;
|
static {{classname}}* singletonAPI = nil;
|
||||||
|
|
||||||
@ -129,6 +131,9 @@ static NSString * basePath = @"{{basePath}}";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[{{#consumes}}@"{{mediaType}}"{{#hasMore}}, {{/hasMore}}{{/consumes}}]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[{{#consumes}}@"{{mediaType}}"{{#hasMore}}, {{/hasMore}}{{/consumes}}]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[{{#authMethods}}@"{{name}}"{{#hasMore}}, {{/hasMore}}{{/authMethods}}];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
{{#bodyParam}}
|
{{#bodyParam}}
|
||||||
id __body = {{paramName}};
|
id __body = {{paramName}};
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
@property(nonatomic, assign)SWGApiClient *apiClient;
|
@property(nonatomic, assign)SWGApiClient *apiClient;
|
||||||
|
|
||||||
|
-(instancetype) initWithApiClient:(SWGApiClient *)apiClient;
|
||||||
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
||||||
-(unsigned long) requestQueueSize;
|
-(unsigned long) requestQueueSize;
|
||||||
+({{classname}}*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
+({{classname}}*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
BA525648922D4C0E9F44D4F1 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 73DA4F1067C343C3962F1542 /* libPods.a */; };
|
BA525648922D4C0E9F44D4F1 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 73DA4F1067C343C3962F1542 /* libPods.a */; };
|
||||||
|
CF0560EB1B1855CF00C0D4EC /* SWGConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = CF0560EA1B1855CF00C0D4EC /* SWGConfiguration.m */; };
|
||||||
CF31D0991B105E4B00509935 /* SWGApiClientTest.m in Sources */ = {isa = PBXBuildFile; fileRef = CF31D0981B105E4B00509935 /* SWGApiClientTest.m */; };
|
CF31D0991B105E4B00509935 /* SWGApiClientTest.m in Sources */ = {isa = PBXBuildFile; fileRef = CF31D0981B105E4B00509935 /* SWGApiClientTest.m */; };
|
||||||
CFD1B6701B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m in Sources */ = {isa = PBXBuildFile; fileRef = CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */; };
|
CFD1B6701B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m in Sources */ = {isa = PBXBuildFile; fileRef = CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */; };
|
||||||
CFD1B6711B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m in Sources */ = {isa = PBXBuildFile; fileRef = CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */; };
|
CFD1B6711B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m in Sources */ = {isa = PBXBuildFile; fileRef = CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */; };
|
||||||
@ -56,6 +57,8 @@
|
|||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
73DA4F1067C343C3962F1542 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
73DA4F1067C343C3962F1542 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
A425648B5C0A4849C7668069 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "../Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = "<group>"; };
|
A425648B5C0A4849C7668069 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "../Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = "<group>"; };
|
||||||
|
CF0560E91B1855CF00C0D4EC /* SWGConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SWGConfiguration.h; sourceTree = "<group>"; };
|
||||||
|
CF0560EA1B1855CF00C0D4EC /* SWGConfiguration.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SWGConfiguration.m; sourceTree = "<group>"; };
|
||||||
CF31D0981B105E4B00509935 /* SWGApiClientTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SWGApiClientTest.m; sourceTree = "<group>"; };
|
CF31D0981B105E4B00509935 /* SWGApiClientTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SWGApiClientTest.m; sourceTree = "<group>"; };
|
||||||
CFD1B66E1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "JSONValueTransformer+ISO8601.h"; sourceTree = "<group>"; };
|
CFD1B66E1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "JSONValueTransformer+ISO8601.h"; sourceTree = "<group>"; };
|
||||||
CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "JSONValueTransformer+ISO8601.m"; sourceTree = "<group>"; };
|
CFD1B66F1B05EC7D00DCCD51 /* JSONValueTransformer+ISO8601.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "JSONValueTransformer+ISO8601.m"; sourceTree = "<group>"; };
|
||||||
@ -234,6 +237,8 @@
|
|||||||
EA8B8AA31AC6683700638FBB /* SWGQueryParamCollection.m */,
|
EA8B8AA31AC6683700638FBB /* SWGQueryParamCollection.m */,
|
||||||
EAEA85CC1811D3AE00F06E69 /* SWGApiClient.h */,
|
EAEA85CC1811D3AE00F06E69 /* SWGApiClient.h */,
|
||||||
EAEA85CD1811D3AE00F06E69 /* SWGApiClient.m */,
|
EAEA85CD1811D3AE00F06E69 /* SWGApiClient.m */,
|
||||||
|
CF0560E91B1855CF00C0D4EC /* SWGConfiguration.h */,
|
||||||
|
CF0560EA1B1855CF00C0D4EC /* SWGConfiguration.m */,
|
||||||
EAEA85CE1811D3AE00F06E69 /* SWGCategory.h */,
|
EAEA85CE1811D3AE00F06E69 /* SWGCategory.h */,
|
||||||
EAEA85CF1811D3AE00F06E69 /* SWGCategory.m */,
|
EAEA85CF1811D3AE00F06E69 /* SWGCategory.m */,
|
||||||
EAEA85D21811D3AE00F06E69 /* SWGFile.h */,
|
EAEA85D21811D3AE00F06E69 /* SWGFile.h */,
|
||||||
@ -395,6 +400,7 @@
|
|||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
EAEA85E51811D3AE00F06E69 /* SWGCategory.m in Sources */,
|
EAEA85E51811D3AE00F06E69 /* SWGCategory.m in Sources */,
|
||||||
|
CF0560EB1B1855CF00C0D4EC /* SWGConfiguration.m in Sources */,
|
||||||
EAEA85ED1811D3AE00F06E69 /* SWGTag.m in Sources */,
|
EAEA85ED1811D3AE00F06E69 /* SWGTag.m in Sources */,
|
||||||
EA6699B31811D2FA00A70D03 /* ViewController.m in Sources */,
|
EA6699B31811D2FA00A70D03 /* ViewController.m in Sources */,
|
||||||
EA6699AA1811D2FA00A70D03 /* AppDelegate.m in Sources */,
|
EA6699AA1811D2FA00A70D03 /* AppDelegate.m in Sources */,
|
||||||
|
@ -0,0 +1,112 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Scheme
|
||||||
|
LastUpgradeVersion = "0630"
|
||||||
|
version = "1.3">
|
||||||
|
<BuildAction
|
||||||
|
parallelizeBuildables = "YES"
|
||||||
|
buildImplicitDependencies = "YES">
|
||||||
|
<BuildActionEntries>
|
||||||
|
<BuildActionEntry
|
||||||
|
buildForTesting = "YES"
|
||||||
|
buildForRunning = "YES"
|
||||||
|
buildForProfiling = "YES"
|
||||||
|
buildForArchiving = "YES"
|
||||||
|
buildForAnalyzing = "YES">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699951811D2FA00A70D03"
|
||||||
|
BuildableName = "PetstoreClient.app"
|
||||||
|
BlueprintName = "PetstoreClient"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildActionEntry>
|
||||||
|
<BuildActionEntry
|
||||||
|
buildForTesting = "YES"
|
||||||
|
buildForRunning = "YES"
|
||||||
|
buildForProfiling = "NO"
|
||||||
|
buildForArchiving = "NO"
|
||||||
|
buildForAnalyzing = "YES">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699B91811D2FB00A70D03"
|
||||||
|
BuildableName = "PetstoreClientTests.xctest"
|
||||||
|
BlueprintName = "PetstoreClientTests"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildActionEntry>
|
||||||
|
</BuildActionEntries>
|
||||||
|
</BuildAction>
|
||||||
|
<TestAction
|
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||||
|
buildConfiguration = "Debug">
|
||||||
|
<Testables>
|
||||||
|
<TestableReference
|
||||||
|
skipped = "NO">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699B91811D2FB00A70D03"
|
||||||
|
BuildableName = "PetstoreClientTests.xctest"
|
||||||
|
BlueprintName = "PetstoreClientTests"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</TestableReference>
|
||||||
|
</Testables>
|
||||||
|
<MacroExpansion>
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699951811D2FA00A70D03"
|
||||||
|
BuildableName = "PetstoreClient.app"
|
||||||
|
BlueprintName = "PetstoreClient"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</MacroExpansion>
|
||||||
|
</TestAction>
|
||||||
|
<LaunchAction
|
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
launchStyle = "0"
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
buildConfiguration = "Debug"
|
||||||
|
ignoresPersistentStateOnLaunch = "NO"
|
||||||
|
debugDocumentVersioning = "YES"
|
||||||
|
allowLocationSimulation = "YES">
|
||||||
|
<BuildableProductRunnable
|
||||||
|
runnableDebuggingMode = "0">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699951811D2FA00A70D03"
|
||||||
|
BuildableName = "PetstoreClient.app"
|
||||||
|
BlueprintName = "PetstoreClient"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildableProductRunnable>
|
||||||
|
<AdditionalOptions>
|
||||||
|
</AdditionalOptions>
|
||||||
|
</LaunchAction>
|
||||||
|
<ProfileAction
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||||
|
savedToolIdentifier = ""
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
debugDocumentVersioning = "YES">
|
||||||
|
<BuildableProductRunnable
|
||||||
|
runnableDebuggingMode = "0">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "EA6699951811D2FA00A70D03"
|
||||||
|
BuildableName = "PetstoreClient.app"
|
||||||
|
BlueprintName = "PetstoreClient"
|
||||||
|
ReferencedContainer = "container:PetstoreClient.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildableProductRunnable>
|
||||||
|
</ProfileAction>
|
||||||
|
<AnalyzeAction
|
||||||
|
buildConfiguration = "Debug">
|
||||||
|
</AnalyzeAction>
|
||||||
|
<ArchiveAction
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
revealArchiveInOrganizer = "YES">
|
||||||
|
</ArchiveAction>
|
||||||
|
</Scheme>
|
@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>SchemeUserState</key>
|
||||||
|
<dict>
|
||||||
|
<key>PetstoreClient.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>4</integer>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
<key>SuppressBuildableAutocreation</key>
|
||||||
|
<dict>
|
||||||
|
<key>EA6699951811D2FA00A70D03</key>
|
||||||
|
<dict>
|
||||||
|
<key>primary</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
<key>EA6699B91811D2FB00A70D03</key>
|
||||||
|
<dict>
|
||||||
|
<key>primary</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
#import "ViewController.h"
|
#import "ViewController.h"
|
||||||
#import "SWGPetApi.h"
|
#import "SWGPetApi.h"
|
||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
@interface ViewController ()
|
@interface ViewController ()
|
||||||
|
|
||||||
@ -53,6 +54,14 @@
|
|||||||
// }
|
// }
|
||||||
];
|
];
|
||||||
*/
|
*/
|
||||||
|
SWGConfiguration *config = [SWGConfiguration sharedConfig];
|
||||||
|
config.username = @"foo";
|
||||||
|
config.password = @"bar";
|
||||||
|
SWGPetApi *api = [[SWGPetApi alloc] init];
|
||||||
|
[api addPetWithCompletionBlock:nil
|
||||||
|
completionHandler:^(NSError *error) {
|
||||||
|
|
||||||
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didReceiveMemoryWarning
|
- (void)didReceiveMemoryWarning
|
||||||
|
@ -1,16 +1,19 @@
|
|||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import <XCTest/XCTest.h>
|
#import <XCTest/XCTest.h>
|
||||||
#import "SWGApiClient.h"
|
#import "SWGApiClient.h"
|
||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
@interface SWGApiClientTest : XCTestCase
|
@interface SWGApiClientTest : XCTestCase
|
||||||
|
|
||||||
|
@property (nonatomic) SWGApiClient *apiClient;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation SWGApiClientTest
|
@implementation SWGApiClientTest
|
||||||
|
|
||||||
- (void)setUp {
|
- (void)setUp {
|
||||||
[super setUp];
|
[super setUp];
|
||||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
self.apiClient = [[SWGApiClient alloc] init];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)tearDown {
|
- (void)tearDown {
|
||||||
@ -56,4 +59,43 @@
|
|||||||
XCTAssertEqualObjects([SWGApiClient selectHeaderContentType:contentTypes], @"application/json");
|
XCTAssertEqualObjects([SWGApiClient selectHeaderContentType:contentTypes], @"application/json");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)testConfiguration {
|
||||||
|
SWGConfiguration *config = [SWGConfiguration sharedConfig];
|
||||||
|
[config setValue:@"123456" forApiKeyField:@"api_key"];
|
||||||
|
[config setValue:@"PREFIX" forApiKeyPrefixField:@"api_key"];
|
||||||
|
config.username = @"test_username";
|
||||||
|
config.password = @"test_password";
|
||||||
|
|
||||||
|
NSDictionary *headerParams = @{@"test1": @"value1"};
|
||||||
|
NSDictionary *queryParams = @{@"test2": @"value2"};
|
||||||
|
NSArray *authSettings = @[@"api_key", @"unknown"];
|
||||||
|
|
||||||
|
// test prefix
|
||||||
|
XCTAssertEqualObjects(@"PREFIX", config.apiKeyPrefix[@"api_key"]);
|
||||||
|
[self.apiClient updateHeaderParams:&headerParams
|
||||||
|
queryParams:&queryParams
|
||||||
|
WithAuthSettings:authSettings];
|
||||||
|
|
||||||
|
// test api key auth
|
||||||
|
XCTAssertEqualObjects(headerParams[@"test1"], @"value1");
|
||||||
|
XCTAssertEqualObjects(headerParams[@"api_key"], @"PREFIX 123456");
|
||||||
|
XCTAssertEqualObjects(queryParams[@"test2"], @"value2");
|
||||||
|
|
||||||
|
// test basic auth
|
||||||
|
XCTAssertEqualObjects(@"test_username", config.username);
|
||||||
|
XCTAssertEqualObjects(@"test_password", config.password);
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)testGetBasicAuthToken {
|
||||||
|
SWGConfiguration *config = [SWGConfiguration sharedConfig];
|
||||||
|
config.username = @"test_username";
|
||||||
|
config.password = @"test_password";
|
||||||
|
|
||||||
|
NSString *basicAuthCredentials = [NSString stringWithFormat:@"%@:%@", config.username, config.password];
|
||||||
|
NSData *data = [basicAuthCredentials dataUsingEncoding:NSUTF8StringEncoding];
|
||||||
|
basicAuthCredentials = [NSString stringWithFormat:@"Basic %@", [data base64EncodedStringWithOptions:0]];
|
||||||
|
|
||||||
|
XCTAssertEqualObjects(basicAuthCredentials, [config getBasicAuthToken]);
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@ -20,7 +20,7 @@ PODS:
|
|||||||
- AFNetworking/UIKit (2.5.4):
|
- AFNetworking/UIKit (2.5.4):
|
||||||
- AFNetworking/NSURLConnection
|
- AFNetworking/NSURLConnection
|
||||||
- AFNetworking/NSURLSession
|
- AFNetworking/NSURLSession
|
||||||
- ISO8601 (0.2.0)
|
- ISO8601 (0.3.0)
|
||||||
- JSONModel (1.1.0)
|
- JSONModel (1.1.0)
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
@ -30,7 +30,7 @@ DEPENDENCIES:
|
|||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
AFNetworking: 05edc0ac4c4c8cf57bcf4b84be5b0744b6d8e71e
|
AFNetworking: 05edc0ac4c4c8cf57bcf4b84be5b0744b6d8e71e
|
||||||
ISO8601: 962282de75074c38bbfaa7b133b0e743ed6deb8d
|
ISO8601: 8d8a22d5edf0554a1cf75bac028c76c1dc0ffaef
|
||||||
JSONModel: ec77e9865236a7a09d9cf7668df6b4b328d9ec1d
|
JSONModel: ec77e9865236a7a09d9cf7668df6b4b328d9ec1d
|
||||||
|
|
||||||
COCOAPODS: 0.37.1
|
COCOAPODS: 0.37.1
|
||||||
|
@ -54,11 +54,16 @@ extern NSString *const SWGResponseObjectErrorKey;
|
|||||||
-(void)setHeaderValue:(NSString*) value
|
-(void)setHeaderValue:(NSString*) value
|
||||||
forKey:(NSString*) forKey;
|
forKey:(NSString*) forKey;
|
||||||
|
|
||||||
|
- (void) updateHeaderParams:(NSDictionary **)headers
|
||||||
|
queryParams:(NSDictionary **)querys
|
||||||
|
WithAuthSettings:(NSArray *)authSettings;
|
||||||
|
|
||||||
-(NSNumber*) dictionary:(NSString*) path
|
-(NSNumber*) dictionary:(NSString*) path
|
||||||
method:(NSString*) method
|
method:(NSString*) method
|
||||||
queryParams:(NSDictionary*) queryParams
|
queryParams:(NSDictionary*) queryParams
|
||||||
body:(id) body
|
body:(id) body
|
||||||
headerParams:(NSDictionary*) headerParams
|
headerParams:(NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType:(NSString*) requestContentType
|
requestContentType:(NSString*) requestContentType
|
||||||
responseContentType:(NSString*) responseContentType
|
responseContentType:(NSString*) responseContentType
|
||||||
completionBlock:(void (^)(NSDictionary*, NSError *))completionBlock;
|
completionBlock:(void (^)(NSDictionary*, NSError *))completionBlock;
|
||||||
@ -68,8 +73,18 @@ extern NSString *const SWGResponseObjectErrorKey;
|
|||||||
queryParams:(NSDictionary*) queryParams
|
queryParams:(NSDictionary*) queryParams
|
||||||
body:(id) body
|
body:(id) body
|
||||||
headerParams:(NSDictionary*) headerParams
|
headerParams:(NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType:(NSString*) requestContentType
|
requestContentType:(NSString*) requestContentType
|
||||||
responseContentType:(NSString*) responseContentType
|
responseContentType:(NSString*) responseContentType
|
||||||
completionBlock:(void (^)(NSString*, NSError *))completionBlock;
|
completionBlock:(void (^)(NSString*, NSError *))completionBlock;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#import "SWGApiClient.h"
|
#import "SWGApiClient.h"
|
||||||
#import "SWGFile.h"
|
#import "SWGFile.h"
|
||||||
#import "SWGQueryParamCollection.h"
|
#import "SWGQueryParamCollection.h"
|
||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
@implementation SWGApiClient
|
@implementation SWGApiClient
|
||||||
|
|
||||||
@ -15,10 +16,22 @@ static NSOperationQueue* sharedQueue;
|
|||||||
static void (^reachabilityChangeBlock)(int);
|
static void (^reachabilityChangeBlock)(int);
|
||||||
static bool loggingEnabled = true;
|
static bool loggingEnabled = true;
|
||||||
|
|
||||||
|
#pragma mark - Log Methods
|
||||||
|
|
||||||
+(void)setLoggingEnabled:(bool) state {
|
+(void)setLoggingEnabled:(bool) state {
|
||||||
loggingEnabled = state;
|
loggingEnabled = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)logRequest:(NSURLRequest*)request {
|
||||||
|
NSLog(@"request: %@", [self descriptionForRequest:request]);
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)logResponse:(id)data forRequest:(NSURLRequest*)request error:(NSError*)error {
|
||||||
|
NSLog(@"request: %@ response: %@ ", [self descriptionForRequest:request], data );
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+(void)clearCache {
|
+(void)clearCache {
|
||||||
[[NSURLCache sharedURLCache] removeAllCachedResponses];
|
[[NSURLCache sharedURLCache] removeAllCachedResponses];
|
||||||
}
|
}
|
||||||
@ -305,19 +318,47 @@ static bool loggingEnabled = true;
|
|||||||
return [[request URL] absoluteString];
|
return [[request URL] absoluteString];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)logRequest:(NSURLRequest*)request {
|
|
||||||
NSLog(@"request: %@", [self descriptionForRequest:request]);
|
/**
|
||||||
|
* Update header and query params based on authentication settings
|
||||||
|
*/
|
||||||
|
- (void) updateHeaderParams:(NSDictionary *__autoreleasing *)headers
|
||||||
|
queryParams:(NSDictionary *__autoreleasing *)querys
|
||||||
|
WithAuthSettings:(NSArray *)authSettings {
|
||||||
|
|
||||||
|
if (!authSettings || [authSettings count] == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
NSMutableDictionary *headersWithAuth = [NSMutableDictionary dictionaryWithDictionary:*headers];
|
||||||
|
NSMutableDictionary *querysWithAuth = [NSMutableDictionary dictionaryWithDictionary:*querys];
|
||||||
|
|
||||||
|
SWGConfiguration *config = [SWGConfiguration sharedConfig];
|
||||||
|
for (NSString *auth in authSettings) {
|
||||||
|
NSDictionary *authSetting = [[config authSettings] objectForKey:auth];
|
||||||
|
|
||||||
|
if (authSetting) {
|
||||||
|
if ([authSetting[@"in"] isEqualToString:@"header"]) {
|
||||||
|
[headersWithAuth setObject:authSetting[@"value"] forKey:authSetting[@"key"]];
|
||||||
|
}
|
||||||
|
else if ([authSetting[@"in"] isEqualToString:@"query"]) {
|
||||||
|
[querysWithAuth setObject:authSetting[@"value"] forKey:authSetting[@"key"]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*headers = [NSDictionary dictionaryWithDictionary:headersWithAuth];
|
||||||
|
*querys = [NSDictionary dictionaryWithDictionary:querysWithAuth];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)logResponse:(id)data forRequest:(NSURLRequest*)request error:(NSError*)error {
|
#pragma mark - Perform Request Methods
|
||||||
NSLog(@"request: %@ response: %@ ", [self descriptionForRequest:request], data );
|
|
||||||
}
|
|
||||||
|
|
||||||
-(NSNumber*) dictionary: (NSString*) path
|
-(NSNumber*) dictionary: (NSString*) path
|
||||||
method: (NSString*) method
|
method: (NSString*) method
|
||||||
queryParams: (NSDictionary*) queryParams
|
queryParams: (NSDictionary*) queryParams
|
||||||
body: (id) body
|
body: (id) body
|
||||||
headerParams: (NSDictionary*) headerParams
|
headerParams: (NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType: (NSString*) requestContentType
|
requestContentType: (NSString*) requestContentType
|
||||||
responseContentType: (NSString*) responseContentType
|
responseContentType: (NSString*) responseContentType
|
||||||
completionBlock: (void (^)(NSDictionary*, NSError *))completionBlock {
|
completionBlock: (void (^)(NSDictionary*, NSError *))completionBlock {
|
||||||
@ -343,6 +384,9 @@ static bool loggingEnabled = true;
|
|||||||
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// auth setting
|
||||||
|
[self updateHeaderParams:&headerParams queryParams:&queryParams WithAuthSettings:authSettings];
|
||||||
|
|
||||||
NSMutableURLRequest * request = nil;
|
NSMutableURLRequest * request = nil;
|
||||||
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
||||||
SWGFile * file;
|
SWGFile * file;
|
||||||
@ -476,6 +520,7 @@ static bool loggingEnabled = true;
|
|||||||
queryParams: (NSDictionary*) queryParams
|
queryParams: (NSDictionary*) queryParams
|
||||||
body: (id) body
|
body: (id) body
|
||||||
headerParams: (NSDictionary*) headerParams
|
headerParams: (NSDictionary*) headerParams
|
||||||
|
authSettings: (NSArray *) authSettings
|
||||||
requestContentType: (NSString*) requestContentType
|
requestContentType: (NSString*) requestContentType
|
||||||
responseContentType: (NSString*) responseContentType
|
responseContentType: (NSString*) responseContentType
|
||||||
completionBlock: (void (^)(NSString*, NSError *))completionBlock {
|
completionBlock: (void (^)(NSString*, NSError *))completionBlock {
|
||||||
@ -501,6 +546,9 @@ static bool loggingEnabled = true;
|
|||||||
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
self.responseSerializer = [AFHTTPResponseSerializer serializer];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// auth setting
|
||||||
|
[self updateHeaderParams:&headerParams queryParams:&queryParams WithAuthSettings:authSettings];
|
||||||
|
|
||||||
NSMutableURLRequest * request = nil;
|
NSMutableURLRequest * request = nil;
|
||||||
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
if (body != nil && [body isKindOfClass:[NSArray class]]){
|
||||||
SWGFile * file;
|
SWGFile * file;
|
||||||
|
51
samples/client/petstore/objc/client/SWGConfiguration.h
Normal file
51
samples/client/petstore/objc/client/SWGConfiguration.h
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
@interface SWGConfiguration : NSObject
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api key values for Api Key type Authentication
|
||||||
|
*
|
||||||
|
* To add or remove api key, use `setValue:forApiKeyField:`.
|
||||||
|
*/
|
||||||
|
@property (readonly, nonatomic, strong) NSDictionary *apiKey;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api key prefix values to be prepend to the respective api key
|
||||||
|
*
|
||||||
|
* To add or remove prefix, use `setValue:forApiKeyPrefixField:`.
|
||||||
|
*/
|
||||||
|
@property (readonly, nonatomic, strong) NSDictionary *apiKeyPrefix;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Usename and Password for Basic type Authentication
|
||||||
|
*/
|
||||||
|
@property (nonatomic) NSString *username;
|
||||||
|
@property (nonatomic) NSString *password;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get configuration singleton instance
|
||||||
|
*/
|
||||||
|
+ (instancetype) sharedConfig;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets field in `apiKey`
|
||||||
|
*/
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyField:(NSString*)field;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets field in `apiKeyPrefix`
|
||||||
|
*/
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyPrefixField:(NSString *)field;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get API key (with prefix if set)
|
||||||
|
*/
|
||||||
|
- (NSString *) getApiKeyWithPrefix:(NSString *) key;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Authentication Setings
|
||||||
|
*/
|
||||||
|
- (NSDictionary *) authSettings;
|
||||||
|
|
||||||
|
@end
|
91
samples/client/petstore/objc/client/SWGConfiguration.m
Normal file
91
samples/client/petstore/objc/client/SWGConfiguration.m
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
#import "SWGConfiguration.h"
|
||||||
|
|
||||||
|
@interface SWGConfiguration ()
|
||||||
|
|
||||||
|
@property (readwrite, nonatomic, strong) NSMutableDictionary *mutableApiKey;
|
||||||
|
@property (readwrite, nonatomic, strong) NSMutableDictionary *mutableApiKeyPrefix;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation SWGConfiguration
|
||||||
|
|
||||||
|
#pragma mark - Singletion Methods
|
||||||
|
|
||||||
|
+ (instancetype) sharedConfig {
|
||||||
|
static SWGConfiguration *shardConfig = nil;
|
||||||
|
static dispatch_once_t onceToken;
|
||||||
|
dispatch_once(&onceToken, ^{
|
||||||
|
shardConfig = [[self alloc] init];
|
||||||
|
});
|
||||||
|
return shardConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Initialize Methods
|
||||||
|
|
||||||
|
- (instancetype) init {
|
||||||
|
self = [super init];
|
||||||
|
if (self) {
|
||||||
|
self.username = @"";
|
||||||
|
self.password = @"";
|
||||||
|
self.mutableApiKey = [NSMutableDictionary dictionary];
|
||||||
|
self.mutableApiKeyPrefix = [NSMutableDictionary dictionary];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Instance Methods
|
||||||
|
|
||||||
|
- (NSString *) getApiKeyWithPrefix:(NSString *)key {
|
||||||
|
if ([self.apiKeyPrefix objectForKey:key] && [self.apiKey objectForKey:key]) {
|
||||||
|
return [NSString stringWithFormat:@"%@ %@", [self.apiKeyPrefix objectForKey:key], [self.apiKey objectForKey:key]];
|
||||||
|
}
|
||||||
|
else if ([self.apiKey objectForKey:key]) {
|
||||||
|
return [NSString stringWithFormat:@"%@", [self.apiKey objectForKey:key]];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return @"";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Setter Methods
|
||||||
|
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyField:(NSString *)field {
|
||||||
|
[self.mutableApiKey setValue:value forKey:field];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void) setValue:(NSString *)value forApiKeyPrefixField:(NSString *)field {
|
||||||
|
[self.mutableApiKeyPrefix setValue:value forKey:field];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - Getter Methods
|
||||||
|
|
||||||
|
- (NSDictionary *) apiKey {
|
||||||
|
return [NSDictionary dictionaryWithDictionary:self.mutableApiKey];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSDictionary *) apiKeyPrefix {
|
||||||
|
return [NSDictionary dictionaryWithDictionary:self.mutableApiKeyPrefix];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
|
- (NSDictionary *) authSettings {
|
||||||
|
return @{
|
||||||
|
@"api_key": @{
|
||||||
|
@"type": @"api_key",
|
||||||
|
@"in": @"header",
|
||||||
|
@"key": @"api_key",
|
||||||
|
@"value": [self getApiKeyWithPrefix:@"api_key"]
|
||||||
|
},
|
||||||
|
|
||||||
|
@"basic_auth": @{
|
||||||
|
@"type": @"basic",
|
||||||
|
@"in": @"header",
|
||||||
|
@"key": @"Authorization",
|
||||||
|
@"value": [self getBasicAuthToken]
|
||||||
|
},
|
||||||
|
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
@ -38,6 +38,8 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+(SWGPetApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
+(SWGPetApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
||||||
static SWGPetApi* singletonAPI = nil;
|
static SWGPetApi* singletonAPI = nil;
|
||||||
|
|
||||||
@ -115,6 +117,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/json", @"application/xml"]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/json", @"application/xml"]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -160,6 +165,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -218,6 +224,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/json", @"application/xml"]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/json", @"application/xml"]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"basic_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -263,6 +272,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -327,6 +337,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -346,6 +359,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -427,6 +441,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -446,6 +463,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -525,6 +543,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"api_key", @"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -552,6 +573,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -627,6 +649,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/x-www-form-urlencoded"]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"application/x-www-form-urlencoded"]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -665,6 +690,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -731,6 +757,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -753,6 +782,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -819,6 +849,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"multipart/form-data"]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[@"multipart/form-data"]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"petstore_auth"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -864,6 +897,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
@property(nonatomic, assign)SWGApiClient *apiClient;
|
@property(nonatomic, assign)SWGApiClient *apiClient;
|
||||||
|
|
||||||
|
-(instancetype) initWithApiClient:(SWGApiClient *)apiClient;
|
||||||
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
||||||
-(unsigned long) requestQueueSize;
|
-(unsigned long) requestQueueSize;
|
||||||
+(SWGStoreApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
+(SWGStoreApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
||||||
|
@ -37,6 +37,8 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+(SWGStoreApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
+(SWGStoreApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
||||||
static SWGStoreApi* singletonAPI = nil;
|
static SWGStoreApi* singletonAPI = nil;
|
||||||
|
|
||||||
@ -112,6 +114,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[@"api_key"];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -131,6 +136,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -199,6 +205,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -249,6 +258,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -320,6 +330,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -347,6 +360,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -418,6 +432,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -440,6 +457,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
@property(nonatomic, assign)SWGApiClient *apiClient;
|
@property(nonatomic, assign)SWGApiClient *apiClient;
|
||||||
|
|
||||||
|
-(instancetype) initWithApiClient:(SWGApiClient *)apiClient;
|
||||||
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
-(void) addHeader:(NSString*)value forKey:(NSString*)key;
|
||||||
-(unsigned long) requestQueueSize;
|
-(unsigned long) requestQueueSize;
|
||||||
+(SWGUserApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
+(SWGUserApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key;
|
||||||
|
@ -37,6 +37,8 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark -
|
||||||
|
|
||||||
+(SWGUserApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
+(SWGUserApi*) apiWithHeader:(NSString*)headerValue key:(NSString*)key {
|
||||||
static SWGUserApi* singletonAPI = nil;
|
static SWGUserApi* singletonAPI = nil;
|
||||||
|
|
||||||
@ -114,6 +116,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -159,6 +164,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -217,6 +223,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -262,6 +271,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -320,6 +330,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -365,6 +378,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -433,6 +447,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -457,6 +474,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -524,6 +542,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -546,6 +567,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -608,6 +630,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -635,6 +660,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSDictionary *data, NSError *error) {
|
completionBlock: ^(NSDictionary *data, NSError *error) {
|
||||||
@ -708,6 +734,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
id __body = body;
|
id __body = body;
|
||||||
@ -753,6 +782,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
@ -815,6 +845,9 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
// request content type
|
// request content type
|
||||||
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
NSString *requestContentType = [SWGApiClient selectHeaderContentType:@[]];
|
||||||
|
|
||||||
|
// Authentication setting
|
||||||
|
NSArray *authSettings = @[];
|
||||||
|
|
||||||
id bodyDictionary = nil;
|
id bodyDictionary = nil;
|
||||||
|
|
||||||
|
|
||||||
@ -837,6 +870,7 @@ static NSString * basePath = @"http://petstore.swagger.io/v2";
|
|||||||
queryParams: queryParams
|
queryParams: queryParams
|
||||||
body: bodyDictionary
|
body: bodyDictionary
|
||||||
headerParams: headerParams
|
headerParams: headerParams
|
||||||
|
authSettings: authSettings
|
||||||
requestContentType: requestContentType
|
requestContentType: requestContentType
|
||||||
responseContentType: responseContentType
|
responseContentType: responseContentType
|
||||||
completionBlock: ^(NSString *data, NSError *error) {
|
completionBlock: ^(NSString *data, NSError *error) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user