@@ -13,12 +13,32 @@ internal class PusherLogger {
13
13
case presenceChannelSubscriptionAttemptWithoutChannelData =
14
14
" Attempting to subscribe to presence channel but no channelData value provided "
15
15
case subscriptionSucceededNoDataInPayload = " Subscription succeeded event received without data key in payload "
16
+ case unableToSubscribeToChannel = " Unable to subscribe to channel: "
17
+ case unableToAddMemberToChannel = " Unable to add member to channel "
18
+ case unableToRemoveMemberFromChannel = " Unable to remove member from channel "
19
+ case authInfoForCompletionHandlerIsNil = " Auth info passed to authorizer completionHandler was nil "
20
+ case authenticationFailed = " Authentication failed. You may not be connected "
21
+ case authValueOnSubscriptionNotSupported = """
22
+ Passing an auth value to 'subscribe' is not supported for encrypted channels. \
23
+ Event decryption will fail. You must use one of the following auth methods: \
24
+ 'endpoint', 'authRequestBuilder', 'authorizer'
25
+ """
16
26
17
27
// Events
18
28
19
29
case clientEventSent = " sendClientEvent "
20
30
case eventSent = " sendEvent "
21
31
case skippedEventAfterDecryptionFailure = " Skipping event that failed to decrypt on channel "
32
+ case cannotSendClientEventForChannel = " You must be subscribed to a private or presence channel to send client events "
33
+ case clientEventsNotSupported = " Client events are not supported on encrypted channels: "
34
+
35
+ // JSON parsing
36
+
37
+ case unableToParseStringAsJSON = " Unable to parse string as JSON: "
38
+
39
+ // Misc
40
+
41
+ case genericError = " "
22
42
23
43
// Network
24
44
@@ -48,63 +68,62 @@ internal class PusherLogger {
48
68
case error = " [PUSHER ERROR] "
49
69
}
50
70
71
+ internal static let shared = PusherLogger ( )
72
+
73
+ internal weak var delegate : PusherDelegate ?
74
+
51
75
// MARK: - Event logging
52
76
53
- /// A debug message relating to a particular event of interest.
77
+ /// Logs a debug message relating to a particular event of interest.
54
78
/// - Parameters:
55
79
/// - event: A particular `LoggingEvent` of interest.
56
80
/// - context: Additional context for the message.
57
- /// - Returns: A `String` with information to log concerning the event.
58
- internal static func debug( for event: LoggingEvent ,
59
- context: CustomStringConvertible ? = nil ) -> String {
60
- return message ( for: event, level: . debug, context: context)
81
+ internal func debug( for event: LoggingEvent ,
82
+ context: CustomStringConvertible ? = nil ) {
83
+ message ( for: event, level: . debug, context: context)
61
84
}
62
85
63
- /// An informational message relating to a particular event of interest.
86
+ /// Logs an informational message relating to a particular event of interest.
64
87
/// - Parameters:
65
88
/// - event: A particular `LoggingEvent` of interest.
66
89
/// - context: Additional context for the message.
67
- /// - Returns: A `String` with information to log concerning the event.
68
- internal static func info( for event: LoggingEvent ,
69
- context: CustomStringConvertible ? = nil ) -> String {
70
- return message ( for: event, level: . info, context: context)
90
+ internal func info( for event: LoggingEvent ,
91
+ context: CustomStringConvertible ? = nil ) {
92
+ message ( for: event, level: . info, context: context)
71
93
}
72
94
73
- /// A warning message relating to a particular event of interest.
95
+ /// Logs a warning message relating to a particular event of interest.
74
96
/// - Parameters:
75
97
/// - event: A particular `LoggingEvent` of interest.
76
98
/// - context: Additional context for the message.
77
- /// - Returns: A `String` with information to log concerning the event.
78
- internal static func warning( for event: LoggingEvent ,
79
- context: CustomStringConvertible ? = nil ) -> String {
80
- return message ( for: event, level: . warning, context: context)
99
+ internal func warning( for event: LoggingEvent ,
100
+ context: CustomStringConvertible ? = nil ) {
101
+ message ( for: event, level: . warning, context: context)
81
102
}
82
103
83
- /// An error message relating to a particular event of interest.
104
+ /// Logs an error message relating to a particular event of interest.
84
105
/// - Parameters:
85
106
/// - event: A particular `LoggingEvent` of interest.
86
107
/// - context: Additional context for the message.
87
- /// - Returns: A `String` with information to log concerning the event.
88
- internal static func error( for event: LoggingEvent ,
89
- context: CustomStringConvertible ? = nil ) -> String {
90
- return message ( for: event, level: . error, context: context)
108
+ internal func error( for event: LoggingEvent ,
109
+ context: CustomStringConvertible ? = nil ) {
110
+ message ( for: event, level: . error, context: context)
91
111
}
92
112
93
113
// MARK: - Private methods
94
114
95
- /// An informational message relating to a particular event of interest.
115
+ /// Logs an informational message relating to a particular event of interest.
96
116
/// - Parameter event: A particular `LoggingEvent` of interest.
97
117
/// - Parameter level: The `LoggingLevel` to set for the message.
98
118
/// - Parameter context: Additional context for the message.
99
- /// - Returns: A `String` with information to log concerning the event.
100
- private static func message( for event: LoggingEvent ,
101
- level: LoggingLevel ,
102
- context: CustomStringConvertible ? = nil ) -> String {
119
+ private func message( for event: LoggingEvent ,
120
+ level: LoggingLevel ,
121
+ context: CustomStringConvertible ? = nil ) {
103
122
var message = " \( level. rawValue) \( event. rawValue) "
104
123
if let context = context {
105
124
message += " \( context) "
106
125
}
107
126
108
- return message
127
+ self . delegate ? . debugLog ? ( message : message)
109
128
}
110
129
}
0 commit comments