hank
2018-04-18 655e6650051a9c08675d15e05ac3b7d9be98e714
commit | author | age
655e66 1 /*
H 2  * Copyright (C) 2017 Twitter, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 /**
19  This header is private to the Twitter Core SDK and not exposed for public SDK consumption
20  */
a0a843 21
H 22 #import <Foundation/Foundation.h>
23 #import "TWTRScribeSerializable.h"
24
655e66 25 FOUNDATION_EXTERN NSString *const TWTRScribeClientEventNamespaceEmptyValue;
a0a843 26
H 27 /**
28  *  Model object for describing any client events at Twitter.
29  *  @see https://confluence.twitter.biz/display/ANALYTICS/client_event+Namespacing
30  */
31 @interface TWTRScribeClientEventNamespace : NSObject <TWTRScribeSerializable>
32
33 /**
34  *  The client application logging the event.
35  */
36 @property (nonatomic, copy, readonly) NSString *client;
37
38 /**
39  *  The page or functional grouping where the event occurred
40  */
41 @property (nonatomic, copy, readonly) NSString *page;
42
43 /**
44  *  A stream or tab on a page.
45  */
46 @property (nonatomic, copy, readonly) NSString *section;
47
48 /**
49  *  The actual page component, object, or objects where the event occurred.
50  */
51 @property (nonatomic, copy, readonly) NSString *component;
52
53 /**
54  *  A UI element within the component that can be interacted with.
55  */
56 @property (nonatomic, copy, readonly) NSString *element;
57
58 /**
59  *  The action the user or application took.
60  */
61 @property (nonatomic, copy, readonly) NSString *action;
62
655e66 63 - (instancetype)init NS_UNAVAILABLE;
a0a843 64 - (instancetype)initWithClient:(NSString *)client page:(NSString *)page section:(NSString *)section component:(NSString *)component element:(NSString *)element action:(NSString *)action __attribute__((nonnull));
H 65
66 #pragma mark - Errors
67
68 /**
69  *  Describes generic errors encounted inside Twitter Kits.
70  */
71 + (instancetype)errorNamespace;
72
73 @end