blob: b7ebd4b60cf92f97e6936b1d4460ed2962115806 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
/*
* Copyright 2017 Google
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#import <Foundation/Foundation.h>
typedef void(^FIRMessagingInstanceIDProxyTokenHandler)(NSString * __nullable token,
NSError * __nullable error);
typedef void(^FIRMessagingInstanceIDProxyDeleteTokenHandler)(NSError * __nullable error);
typedef NS_ENUM(NSInteger, FIRMessagingInstanceIDProxyAPNSTokenType) {
/// Unknown token type.
FIRMessagingInstanceIDProxyAPNSTokenTypeUnknown,
/// Sandbox token type.
FIRMessagingInstanceIDProxyAPNSTokenTypeSandbox,
/// Production token type.
FIRMessagingInstanceIDProxyAPNSTokenTypeProd,
};
/**
* FIRMessaging cannot always depend on FIRInstanceID directly, due to how FIRMessaging is
* packaged. To make it easier to make calls to FIRInstanceID, this proxy class, will provide
* method names duplicated from FIRInstanceID, while using reflection-based called to proxy
* the requests.
*/
@interface FIRMessagingInstanceIDProxy : NSObject
- (void)setAPNSToken:(nonnull NSData *)token type:(FIRMessagingInstanceIDProxyAPNSTokenType)type;
#pragma mark - Tokens
- (nullable NSString *)token;
- (void)tokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity
scope:(nonnull NSString *)scope
options:(nullable NSDictionary *)options
handler:(nonnull FIRMessagingInstanceIDProxyTokenHandler)handler;
- (void)deleteTokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity
scope:(nonnull NSString *)scope
handler:
(nonnull FIRMessagingInstanceIDProxyDeleteTokenHandler)handler;
@end
|