Skip to content

Commit d15a73a

Browse files
Fixed some merge conflicts.
1 parent 2751a04 commit d15a73a

File tree

11 files changed

+27
-122
lines changed

11 files changed

+27
-122
lines changed

OptimizelySDKCore/OptimizelySDKCore/OPTLYBuilder.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@ typedef void (^OPTLYBuilderBlock)(OPTLYBuilder * _Nullable builder);
4747
/// User profile stores user-specific data, like bucketing.
4848
@property (nonatomic, strong, nullable) id<OPTLYUserProfile> userProfile;
4949

50-
@property (nonatomic, strong, nullable) id<OPTLYUserProfile> userProfile;
51-
5250
/// Create an Optimizely Builder object.
5351
+ (nullable instancetype)builderWithBlock:(nonnull OPTLYBuilderBlock)block;
5452

OptimizelySDKCore/OptimizelySDKCore/OPTLYErrorHandlerMessages.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ typedef NS_ENUM(NSUInteger, OPTLYErrorTypes) {
6161
OPTLYErrorTypesEventDispatch,
6262
OPTLYErrorTypesEventTrack,
6363
OPTLYErrorTypesUserActivate,
64-
OPTLYErrorTypesUserProfile,
6564
};
6665

6766
@interface OPTLYErrorHandlerMessages : NSObject

OptimizelySDKCore/OptimizelySDKCore/OPTLYLoggerMessages.m

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,19 +63,11 @@
6363
NSString *const OPTLYLoggerMessagesGroupUnknownForGroupId = @"Group not found for group id: %@."; // group id
6464
NSString *const OPTLYLoggerMessagesVariationUnknownForVariationKey = @"Unknown variation for variation key: %@."; // variation key
6565
NSString *const OPTLYLoggerMessagesVariableUnknownForVariableKey = @"Live variable not found for variable key: %@."; // live variable key
66-
NSString *const OPTLYLoggerMessagesVariationUnknownForVariationKey = @"Unknown variation for variation key: %@."; // variation key
6766
NSString *const OPTLYLoggerMessagesEventDispatcherInterval = @"Event dispatcher interval set: %ld";
6867

6968
// ---- Debug ----
7069
NSString *const OPTLYLoggerMessagesBucketAssigned = @"Assigned bucket %@ to user %@.";
7170

72-
// ---- User Profile ----
73-
// Debug
74-
NSString *const OPTLYLoggerMessagesUserProfileVariation = @"Variation %@ for user %@, experiment %@ found.";
75-
NSString *const OPTLYLoggerMessagesUserProfileNoVariation = @"Variation for user %@, experiment %@ not found.";
76-
NSString *const OPTLYLoggerMessagesUserProfileRemoveVariation = @"Removed variation %@ for user %@, experiment %@.";
77-
NSString *const OPTLYLoggerMessagesUserProfileRemoveVariationNotFound = @"Not removing variation for user %@, experiment %@. Variation not found.";
78-
7971
// ---- Event Tracking ----
8072
// info
8173
NSString *const OPTLYLoggerMessagesConversionSuccess = @"[EVENT DISPATCH] Tracking event %@ for user %@.";

OptimizelySDKCore/OptimizelySDKCore/OPTLYProjectConfig.m

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,6 @@ - (nullable instancetype)initWithDatafile:(nullable NSData *)datafile
8888

8989
if (userProfile) {
9090
if ([OPTLYUserProfile conformsToOPTLYUserProfileProtocol:[userProfile class]]) {
91-
<<<<<<< HEAD
92-
<<<<<<< HEAD
93-
=======
94-
>>>>>>> Updated logs.
9591
_userProfile = (id<OPTLYUserProfile, Ignore>)userProfile;
9692
} else {
9793
NSError *error = [NSError errorWithDomain:OPTLYErrorHandlerMessagesDomain
@@ -102,16 +98,7 @@ - (nullable instancetype)initWithDatafile:(nullable NSData *)datafile
10298

10399
NSString *logMessage = OPTLYErrorHandlerMessagesUserProfileInvalid;
104100
[_logger logMessage:logMessage withLevel:OptimizelyLogLevelError];
105-
<<<<<<< HEAD
106101
}
107-
=======
108-
_userProfile = userProfile;
109-
}
110-
// TODO - log error
111-
>>>>>>> User profile feature.
112-
=======
113-
}
114-
>>>>>>> Updated logs.
115102
}
116103

117104
OPTLYProjectConfig* projectConfig = nil;

OptimizelySDKCore/OptimizelySDKCore/OPTLYUserProfile.m

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,14 @@ @implementation OPTLYUserProfile
2020

2121
+ (BOOL)conformsToOPTLYUserProfileProtocol:(nonnull Class)instanceClass {
2222
// compile-time check
23-
<<<<<<< eaea1f01bff1164fa6a86549b9594aa7b0b2a460
2423
BOOL isValidProtocolDeclaration = [instanceClass conformsToProtocol:@protocol(OPTLYUserProfile)];
25-
=======
26-
BOOL validProtocolDeclaration = [instanceClass conformsToProtocol:@protocol(OPTLYUserProfile)];
27-
>>>>>>> User profile feature.
2824

2925
// runtime checks
3026
BOOL implementsHandleSaveVariationMethod = [instanceClass instancesRespondToSelector:@selector(save:experiment:variation:)];
3127
BOOL implementsHandleGetVariationMethod = [instanceClass instancesRespondToSelector:@selector(getVariationFor:experiment:)];
3228
BOOL implementsHandleRemoveVariationMethod = [instanceClass instancesRespondToSelector:@selector(remove:experiment:)];
3329

34-
<<<<<<< eaea1f01bff1164fa6a86549b9594aa7b0b2a460
3530
return isValidProtocolDeclaration && implementsHandleSaveVariationMethod && implementsHandleGetVariationMethod && implementsHandleRemoveVariationMethod;
36-
=======
37-
return validProtocolDeclaration && implementsHandleSaveVariationMethod && implementsHandleGetVariationMethod && implementsHandleRemoveVariationMethod;
38-
>>>>>>> User profile feature.
3931
}
4032

4133
@end

OptimizelySDKDatafileManager/OptimizelySDKDatafileManager.xcodeproj/project.pbxproj

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@
1010
2BB51BA262BB8150B95167CC /* Pods_OptimizelySDKDatafileManagerTVOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 57C3406734E932C4DD563494 /* Pods_OptimizelySDKDatafileManagerTVOS.framework */; };
1111
2DB3D1751DC816C600ECF72E /* OptimizelySDKDatafileManagerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = EA3C68CA1DC1E75900C578CA /* OptimizelySDKDatafileManagerTests.m */; };
1212
2DB3D1791DC816C700ECF72E /* OptimizelySDKDatafileManagerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = EA3C68CA1DC1E75900C578CA /* OptimizelySDKDatafileManagerTests.m */; };
13-
2DB3D1841DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB3D1821DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
14-
2DB3D1851DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1831DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m */; };
15-
2DB3D1881DC818E800ECF72E /* OPTLYDatafileManagerBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB3D1821DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
16-
2DB3D1891DC818EC00ECF72E /* OPTLYDatafileManagerBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1831DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m */; };
1713
2DB3D18A1DC818F200ECF72E /* OPTLYDatafileManagerBuilderTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1861DC818D500ECF72E /* OPTLYDatafileManagerBuilderTest.m */; };
1814
2DB3D18B1DC818F200ECF72E /* OPTLYDatafileManagerBuilderTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1861DC818D500ECF72E /* OPTLYDatafileManagerBuilderTest.m */; };
1915
2DCC50D31DDA7D81006C9815 /* OPTLYDatafileManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DCC50D21DDA7D81006C9815 /* OPTLYDatafileManagerTest.m */; };
@@ -35,12 +31,16 @@
3531
6D5CBB24D7CD0C622634D15B /* Pods_OptimizelySDKDatafileManagerTVOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E878B599943D437831DAA7F /* Pods_OptimizelySDKDatafileManagerTVOSTests.framework */; };
3632
7C30D664EDAC58887076AE8E /* Pods_OptimizelySDKDatafileManageriOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F11A4F80C7960C4907845910 /* Pods_OptimizelySDKDatafileManageriOSTests.framework */; };
3733
8160880F9C1EE3663169C1F5 /* Pods_OptimizelySDKDatafileManageriOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E531AA1D0D78410E6B99080 /* Pods_OptimizelySDKDatafileManageriOS.framework */; };
34+
EA2C24231DE68FBE0063ADA0 /* OPTLYDatafileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = EA52494A1DC72FF200AF6685 /* OPTLYDatafileManager.m */; };
35+
EA2C24241DE68FBE0063ADA0 /* OPTLYDatafileManagerBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1831DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m */; };
36+
EA2C24251DE68FCC0063ADA0 /* OPTLYDatafileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA5249491DC72FF200AF6685 /* OPTLYDatafileManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
37+
EA2C24261DE68FCC0063ADA0 /* OPTLYDatafileManagerBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB3D1821DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
38+
EA2C24271DE68FE50063ADA0 /* OPTLYDatafileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = EA52494A1DC72FF200AF6685 /* OPTLYDatafileManager.m */; };
39+
EA2C24281DE68FE50063ADA0 /* OPTLYDatafileManagerBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 2DB3D1831DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m */; };
40+
EA2C24291DE68FF00063ADA0 /* OPTLYDatafileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA5249491DC72FF200AF6685 /* OPTLYDatafileManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
41+
EA2C242A1DE68FF00063ADA0 /* OPTLYDatafileManagerBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB3D1821DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
3842
EA52480D1DC72AB000AF6685 /* OptimizelySDKDatafileManager.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA5248041DC72AAF00AF6685 /* OptimizelySDKDatafileManager.framework */; };
3943
EA52482D1DC72ABD00AF6685 /* OptimizelySDKDatafileManager.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA5248241DC72ABD00AF6685 /* OptimizelySDKDatafileManager.framework */; };
40-
EA52494B1DC72FF200AF6685 /* OPTLYDatafileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA5249491DC72FF200AF6685 /* OPTLYDatafileManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
41-
EA52494C1DC72FF200AF6685 /* OPTLYDatafileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA5249491DC72FF200AF6685 /* OPTLYDatafileManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
42-
EA52494D1DC72FF200AF6685 /* OPTLYDatafileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = EA52494A1DC72FF200AF6685 /* OPTLYDatafileManager.m */; };
43-
EA52494E1DC72FF200AF6685 /* OPTLYDatafileManager.m in Sources */ = {isa = PBXBuildFile; fileRef = EA52494A1DC72FF200AF6685 /* OPTLYDatafileManager.m */; };
4444
EA52499B1DC7D8ED00AF6685 /* OptimizelySDKDatafileManager.h in Headers */ = {isa = PBXBuildFile; fileRef = EA3C68BE1DC1E75900C578CA /* OptimizelySDKDatafileManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
4545
EA5249DF1DC7E3C300AF6685 /* OptimizelySDKShared.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA5248921DC72C5300AF6685 /* OptimizelySDKShared.framework */; };
4646
EA5249E01DC7E3CF00AF6685 /* OptimizelySDKShared.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA5248961DC72C5300AF6685 /* OptimizelySDKShared.framework */; };
@@ -310,18 +310,18 @@
310310
buildActionMask = 2147483647;
311311
files = (
312312
EA52499B1DC7D8ED00AF6685 /* OptimizelySDKDatafileManager.h in Headers */,
313-
EA52494B1DC72FF200AF6685 /* OPTLYDatafileManager.h in Headers */,
314-
2DB3D1841DC8187900ECF72E /* OPTLYDatafileManagerBuilder.h in Headers */,
313+
EA2C24251DE68FCC0063ADA0 /* OPTLYDatafileManager.h in Headers */,
314+
EA2C24261DE68FCC0063ADA0 /* OPTLYDatafileManagerBuilder.h in Headers */,
315315
);
316316
runOnlyForDeploymentPostprocessing = 0;
317317
};
318318
EA5248211DC72ABD00AF6685 /* Headers */ = {
319319
isa = PBXHeadersBuildPhase;
320320
buildActionMask = 2147483647;
321321
files = (
322-
EA52494C1DC72FF200AF6685 /* OPTLYDatafileManager.h in Headers */,
323-
2DB3D1881DC818E800ECF72E /* OPTLYDatafileManagerBuilder.h in Headers */,
324322
EA524A3D1DC846CE00AF6685 /* OptimizelySDKDatafileManager.h in Headers */,
323+
EA2C24291DE68FF00063ADA0 /* OPTLYDatafileManager.h in Headers */,
324+
EA2C242A1DE68FF00063ADA0 /* OPTLYDatafileManagerBuilder.h in Headers */,
325325
);
326326
runOnlyForDeploymentPostprocessing = 0;
327327
};
@@ -697,8 +697,8 @@
697697
isa = PBXSourcesBuildPhase;
698698
buildActionMask = 2147483647;
699699
files = (
700-
2DB3D1851DC8187900ECF72E /* OPTLYDatafileManagerBuilder.m in Sources */,
701-
EA52494D1DC72FF200AF6685 /* OPTLYDatafileManager.m in Sources */,
700+
EA2C24231DE68FBE0063ADA0 /* OPTLYDatafileManager.m in Sources */,
701+
EA2C24241DE68FBE0063ADA0 /* OPTLYDatafileManagerBuilder.m in Sources */,
702702
);
703703
runOnlyForDeploymentPostprocessing = 0;
704704
};
@@ -717,8 +717,8 @@
717717
isa = PBXSourcesBuildPhase;
718718
buildActionMask = 2147483647;
719719
files = (
720-
2DB3D1891DC818EC00ECF72E /* OPTLYDatafileManagerBuilder.m in Sources */,
721-
EA52494E1DC72FF200AF6685 /* OPTLYDatafileManager.m in Sources */,
720+
EA2C24271DE68FE50063ADA0 /* OPTLYDatafileManager.m in Sources */,
721+
EA2C24281DE68FE50063ADA0 /* OPTLYDatafileManagerBuilder.m in Sources */,
722722
);
723723
runOnlyForDeploymentPostprocessing = 0;
724724
};

OptimizelySDKDatafileManager/OptimizelySDKDatafileManager/OPTLYDatafileManager.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,11 @@
1515
***************************************************************************/
1616

1717
#import <Foundation/Foundation.h>
18-
#import "OPTLYDatafileManagerBuilder.h"
1918
#import <OptimizelySDKCore/OPTLYErrorHandler.h>
2019
#import <OptimizelySDKCore/OPTLYLogger.h>
2120
#import <OptimizelySDKShared/OPTLYDatafileManager.h>
2221
#import <OptimizelySDKShared/OPTLYHTTPRequestManager.h>
23-
22+
#import "OPTLYDatafileManagerBuilder.h"
2423

2524
@protocol OPTLYErrorHandler, OPTLYLogger;
2625

OptimizelySDKDatafileManager/OptimizelySDKDatafileManager/OptimizelySDKDatafileManager.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
#import <OptimizelySDKShared/OptimizelySDKShared.h>
1818
#import "OPTLYDatafileManager.h"
19+
#import "OPTLYDatafileManagerBuilder.h"
1920

2021
//! Project version number for OptimizelySDKDatafileManager.
2122
FOUNDATION_EXPORT double OptimizelySDKDatafileManagerVersionNumber;

OptimizelySDKShared/OptimizelySDKShared/OPTLYDataStore.m

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -380,8 +380,7 @@ - (void)removeAllEvents:(OPTLYDataStoreEventType)eventType
380380
NSInteger numberOfEvents = [self numberOfEvents:eventType cachedData:cachedData error:error];
381381
[self removeFirstNEvents:numberOfEvents eventType:eventType cachedData:cachedData error:error];
382382

383-
NSString *logMessage = [NSString stringWithFormat:OPTLYLoggerMessagesDataStoreEventsRemoveAllWarning];
384-
[self.logger logMessage:logMessage withLevel:OptimizelyLogLevelWarning];
383+
[self.logger logMessage:OPTLYLoggerMessagesDataStoreEventsRemoveAllWarning withLevel:OptimizelyLogLevelWarning];
385384
}
386385

387386

OptimizelySDKShared/OptimizelySDKShared/OPTLYDatafileManager.m

Lines changed: 6 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -15,88 +15,26 @@
1515
***************************************************************************/
1616

1717
#import "OPTLYDatafileManager.h"
18-
#import <OptimizelySDKShared/OPTLYDataStore.h>
19-
#import <OptimizelySDKShared/OPTLYNetworkService.h>
2018

21-
static NSString *const kCDNAddressFormat = @"https://cdn.optimizely.com/json/%@.json";
22-
NSTimeInterval const kDefaultDatafileFetchInterval = 0;
23-
24-
@interface OPTLYDatafileManager ()
25-
26-
@property OPTLYDataStore *dataStore;
27-
@property OPTLYNetworkService *networkService;
19+
@implementation OPTLYDatafileManagerUtility
2820

2921
+ (BOOL)conformsToOPTLYDatafileManagerProtocol:(Class)instanceClass {
3022
// compile time check
31-
BOOL isValidProtocolDeclaration = [instanceClass conformsToProtocol:@protocol(OPTLYDatafileManager)];
23+
BOOL validProtocolDeclaration = [instanceClass conformsToProtocol:@protocol(OPTLYDatafileManager)];
3224

3325
// runtime check
3426
BOOL implementsDownloadDatafileMethod = [instanceClass instancesRespondToSelector:@selector(downloadDatafile:completionHandler:)];
3527

36-
return isValidProtocolDeclaration && implementsDownloadDatafileMethod;
28+
return validProtocolDeclaration && implementsDownloadDatafileMethod;
3729
}
3830

3931
@end
4032

41-
@implementation OPTLYDatafileManager
42-
43-
+ (nullable instancetype)initWithBuilderBlock:(nonnull OPTLYDatafileManagerBuilderBlock)block {
44-
return [[self alloc] initWithBuilder:[OPTLYDatafileManagerBuilder builderWithBlock:block]];
45-
}
46-
47-
- (instancetype)initWithBuilder:(OPTLYDatafileManagerBuilder *)builder {
48-
if (builder != nil) {
49-
self = [super init];
50-
if (self != nil) {
51-
_datafileFetchInterval = kDefaultDatafileFetchInterval;
52-
_datafileFetchInterval = builder.datafileFetchInterval;
53-
_projectId = builder.projectId;
54-
_errorHandler = builder.errorHandler;
55-
_logger = builder.logger;
56-
_networkService = [OPTLYNetworkService new];
57-
_dataStore = [OPTLYDataStore new];
58-
59-
// download datafile when we start the datafile manager
60-
[self downloadDatafile:self.projectId completionHandler:nil];
61-
62-
// Only fetch the datafile if the polling interval is greater than 0
63-
if (self.datafileFetchInterval > 0) {
64-
// TODO: Josh W. start timer to poll for the datafile
65-
}
66-
}
67-
return self;
68-
}
69-
else {
70-
return nil;
71-
}
72-
}
33+
@implementation OPTLYDatafileManagerNoOp
7334

7435
- (void)downloadDatafile:(NSString *)projectId completionHandler:(OPTLYHTTPRequestManagerResponse)completion {
75-
[self.networkService downloadProjectConfig:self.projectId
76-
completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
77-
if (error != nil) {
78-
[self.errorHandler handleError:error];
79-
}
80-
else if ([(NSHTTPURLResponse *)response statusCode] == 200) { // got datafile OK
81-
[self saveDatafile:data];
82-
}
83-
else {
84-
// TODO: Josh W. handle bad response
85-
}
86-
// call the completion handler
87-
if (completion != nil) {
88-
completion(data, response, error);
89-
}
90-
}];
91-
}
92-
93-
- (void)saveDatafile:(NSData *)datafile {
94-
NSError *error;
95-
[self.dataStore saveFile:self.projectId
96-
data:datafile
97-
type:OPTLYDataStoreDataTypeDatafile
98-
error:&error];
99-
36+
completion(nil, nil, nil);
37+
return;
10038
}
10139

10240
@end

0 commit comments

Comments
 (0)