session-ios/SignalServiceKit/src/TextSecureKitEnv.m
Michael Kirk ccb4a88742 Import SSK (and history) into Signal-iOS
git remote add ssk ../SignalServiceKit
git remote update
git merge -s ours --allow-unrelated-histories --no-commit ssk/master
git read-tree --prefix=SignalServiceKit -u ssk/master
git commit
2017-07-21 13:55:01 -04:00

76 lines
2.1 KiB
Objective-C

//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import "TextSecureKitEnv.h"
NS_ASSUME_NONNULL_BEGIN
static TextSecureKitEnv *TextSecureKitEnvSharedInstance;
@implementation TextSecureKitEnv
@synthesize callMessageHandler = _callMessageHandler, contactsManager = _contactsManager,
messageSender = _messageSender, notificationsManager = _notificationsManager;
- (instancetype)initWithCallMessageHandler:(id<OWSCallMessageHandler>)callMessageHandler
contactsManager:(id<ContactsManagerProtocol>)contactsManager
messageSender:(OWSMessageSender *)messageSender
notificationsManager:(id<NotificationsProtocol>)notificationsManager
{
self = [super init];
if (!self) {
return self;
}
_callMessageHandler = callMessageHandler;
_contactsManager = contactsManager;
_messageSender = messageSender;
_notificationsManager = notificationsManager;
return self;
}
+ (instancetype)sharedEnv
{
NSAssert(TextSecureKitEnvSharedInstance, @"Trying to access shared TextSecureKitEnv before it's been set");
return TextSecureKitEnvSharedInstance;
}
+ (void)setSharedEnv:(TextSecureKitEnv *)env
{
@synchronized (self) {
NSAssert(TextSecureKitEnvSharedInstance == nil, @"Trying to set shared TextSecureKitEnv which has already been set");
TextSecureKitEnvSharedInstance = env;
}
}
#pragma mark - getters
- (id<OWSCallMessageHandler>)callMessageHandler
{
NSAssert(_callMessageHandler, @"Trying to access the callMessageHandler before it's set.");
return _callMessageHandler;
}
- (id<ContactsManagerProtocol>)contactsManager
{
NSAssert(_contactsManager, @"Trying to access the contactsManager before it's set.");
return _contactsManager;
}
- (OWSMessageSender *)messageSender
{
NSAssert(_messageSender, @"Trying to access the messageSender before it's set.");
return _messageSender;
}
- (id<NotificationsProtocol>)notificationsManager
{
NSAssert(_notificationsManager, @"Trying to access the notificationsManager before it's set.");
return _notificationsManager;
}
@end
NS_ASSUME_NONNULL_END