198629a0cSStanisław Chmiela// Copyright 2018-present 650 Industries. All rights reserved. 298629a0cSStanisław Chmiela 398629a0cSStanisław Chmiela#if __has_include(<EXNotifications/EXServerRegistrationModule.h>) 498629a0cSStanisław Chmiela 598629a0cSStanisław Chmiela#import "EXScopedServerRegistrationModule.h" 698629a0cSStanisław Chmiela#import "EXUnversioned.h" 798629a0cSStanisław Chmiela 898629a0cSStanisław Chmielastatic NSString * const kEXRegistrationInfoKey = EX_UNVERSIONED(@"EXNotificationRegistrationInfoKey"); 998629a0cSStanisław Chmiela 1098629a0cSStanisław Chmiela@interface EXServerRegistrationModule (Protected) 1198629a0cSStanisław Chmiela 1298629a0cSStanisław Chmiela- (NSDictionary *)registrationSearchQueryMerging:(NSDictionary *)dictionaryToMerge; 1398629a0cSStanisław Chmiela- (NSDictionary *)keychainSearchQueryFor:(NSString *)key merging:(NSDictionary *)dictionaryToMerge; 1498629a0cSStanisław Chmiela 1598629a0cSStanisław Chmiela@end 1698629a0cSStanisław Chmiela 1798629a0cSStanisław Chmiela@interface EXScopedServerRegistrationModule () 1898629a0cSStanisław Chmiela 19*167fd314SWill Schurman@property (nonatomic, strong) NSString *scopeKey; 2098629a0cSStanisław Chmiela 2198629a0cSStanisław Chmiela@end 2298629a0cSStanisław Chmiela 2398629a0cSStanisław Chmiela@implementation EXScopedServerRegistrationModule 2498629a0cSStanisław Chmiela 25*167fd314SWill Schurman- (instancetype)initWithScopeKey:(NSString *)scopeKey 2698629a0cSStanisław Chmiela{ 2798629a0cSStanisław Chmiela if (self = [super init]) { 28*167fd314SWill Schurman _scopeKey = scopeKey; 2998629a0cSStanisław Chmiela } 3098629a0cSStanisław Chmiela return self; 3198629a0cSStanisław Chmiela} 3298629a0cSStanisław Chmiela 3398629a0cSStanisław Chmiela- (NSDictionary *)registrationSearchQueryMerging:(NSDictionary *)dictionaryToMerge 3498629a0cSStanisław Chmiela{ 35*167fd314SWill Schurman NSString *scopedKey = [kEXRegistrationInfoKey stringByAppendingFormat:@"-%@", _scopeKey]; 3698629a0cSStanisław Chmiela return [self keychainSearchQueryFor:scopedKey merging:dictionaryToMerge]; 3798629a0cSStanisław Chmiela} 3898629a0cSStanisław Chmiela 3998629a0cSStanisław Chmiela@end 4098629a0cSStanisław Chmiela 4198629a0cSStanisław Chmiela#endif 42