Skip to content

Commit b6b5d70

Browse files
authored
add method to enable feature flags from server (#196)
1 parent 24eb498 commit b6b5d70

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

Leanplum-SDK/Classes/Internal/FeatureFlag/LPFeatureFlagManager.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
@interface LPFeatureFlagManager : NSObject
1111

1212
+ (instancetype)sharedManager;
13-
-(BOOL)isFeatureFlagEnabled:(NSString *)featureFlagName;
13+
14+
-(void)refreshEnabledFeatureFlags:(nullable NSArray<NSString *> *)featureFlags;
15+
-(BOOL)isFeatureFlagEnabled:(nonnull NSString *)featureFlagName;
1416

1517
@end

Leanplum-SDK/Classes/Internal/FeatureFlag/LPFeatureFlagManager.m

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77

88
#import "LPFeatureFlagManager.h"
99

10+
@interface LPFeatureFlagManager()
11+
12+
@property (strong, nonatomic) NSSet *enabledFeatureFlags;
13+
14+
@end
15+
1016
@implementation LPFeatureFlagManager
1117

1218
static LPFeatureFlagManager *sharedFeatureFlagManager = nil;
@@ -19,8 +25,14 @@ + (instancetype)sharedManager {
1925
return sharedFeatureFlagManager;
2026
}
2127

22-
-(BOOL)isFeatureFlagEnabled:(NSString *)featureFlagName {
23-
return NO;
28+
-(void)refreshEnabledFeatureFlags:(nullable NSArray<NSString *> *)featureFlags {
29+
if (featureFlags != nil) {
30+
self.enabledFeatureFlags = [NSSet setWithArray:featureFlags];
31+
}
32+
}
33+
34+
-(BOOL)isFeatureFlagEnabled:(nonnull NSString *)featureFlagName {
35+
return [self.enabledFeatureFlags containsObject:featureFlagName];
2436
}
2537

2638
@end

0 commit comments

Comments
 (0)