1
0
This repository has been archived on 2025-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
Source-SnapChat/ManagedCapturer/SCCapturerTokenProvider.m
2018-05-24 00:42:36 +03:00

43 lines
750 B
Objective-C

//
// Created by Aaron Levine on 10/16/17.
//
#import "SCCapturerTokenProvider.h"
#import "SCCapturerToken.h"
#import <SCBase/SCAssignment.h>
#import <SCFoundation/SCAssertWrapper.h>
@implementation SCCapturerTokenProvider {
SCCapturerToken *_Nullable _token;
}
+ (instancetype)providerWithToken:(SCCapturerToken *)token
{
return [[self alloc] initWithToken:token];
}
- (instancetype)initWithToken:(SCCapturerToken *)token
{
self = [super init];
if (self) {
_token = token;
}
return self;
}
- (nullable SCCapturerToken *)getTokenAndInvalidate
{
// ensure serial access by requiring calls be on the main thread
SCAssertMainThread();
let token = _token;
_token = nil;
return token;
}
@end