Adds JSONHelper methods to read strings. (+1 squashed commit)
Squashed commits: [30b0a71] Adds JSONHelper methods to read strings.
This commit is contained in:
21
iOS/MonsterCards/Helpers/JSONHelper.h
Normal file
21
iOS/MonsterCards/Helpers/JSONHelper.h
Normal file
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// JSONHelper.h
|
||||
// MonsterCards
|
||||
//
|
||||
// Created by Tom Hicks on 9/15/20.
|
||||
// Copyright © 2020 Tom Hicks. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface JSONHelper : NSObject
|
||||
|
||||
+(NSString*)readStringFromDictionary:(NSDictionary*)dictionary forKey:(NSString*)key;
|
||||
+(NSString*)readStringFromDictionary:(NSDictionary*)dictionary forKey:(NSString*)key withDefaultValue:(NSString* _Nullable)defaultValue;
|
||||
+(NSString*)readStringFromArray:(NSArray*)array forIndex:(NSUInteger)index;
|
||||
+(NSString*)readStringFromArray:(NSArray*)array forIndex:(NSUInteger)index withDefaultValue:(NSString* _Nullable)defaultValue;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
39
iOS/MonsterCards/Helpers/JSONHelper.m
Normal file
39
iOS/MonsterCards/Helpers/JSONHelper.m
Normal file
@@ -0,0 +1,39 @@
|
||||
//
|
||||
// JSONHelper.m
|
||||
// MonsterCards
|
||||
//
|
||||
// Created by Tom Hicks on 9/15/20.
|
||||
// Copyright © 2020 Tom Hicks. All rights reserved.
|
||||
//
|
||||
|
||||
#import "JSONHelper.h"
|
||||
|
||||
@implementation JSONHelper
|
||||
|
||||
NSString* coerceObjectToString(NSObject *object, NSString *defaultValue) {
|
||||
if ([object isKindOfClass:[NSString class]]) {
|
||||
return (NSString*)object;
|
||||
}
|
||||
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
+(NSString*)readStringFromDictionary:(NSDictionary*)dictionary forKey:(NSString*)key {
|
||||
return [JSONHelper readStringFromDictionary:dictionary forKey:key withDefaultValue:nil];
|
||||
}
|
||||
|
||||
+(NSString*)readStringFromDictionary:(NSDictionary*)dictionary forKey:(NSString*)key withDefaultValue:(NSString* _Nullable)defaultValue {
|
||||
NSObject *object = [dictionary objectForKey:key];
|
||||
return coerceObjectToString(object, defaultValue);
|
||||
}
|
||||
|
||||
+(NSString*)readStringFromArray:(NSArray*)array forIndex:(NSUInteger)index{
|
||||
return [JSONHelper readStringFromArray:array forIndex:index withDefaultValue:nil];
|
||||
}
|
||||
|
||||
+(NSString*)readStringFromArray:(NSArray*)array forIndex:(NSUInteger)index withDefaultValue:(NSString* _Nullable)defaultValue {
|
||||
NSObject *object = [array objectAtIndex:index];
|
||||
return coerceObjectToString(object, defaultValue);
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user