@@ -32,6 +32,16 @@ public protocol APNSwiftClient {
32
32
}
33
33
34
34
extension APNSwiftClient {
35
+ private func logger( from loggerConfig: LoggerConfig ) -> Logger ? {
36
+ switch loggerConfig {
37
+ case . none:
38
+ return nil
39
+ case . clientLogger:
40
+ return self . logger
41
+ case . custom( let customLogger) :
42
+ return customLogger
43
+ }
44
+ }
35
45
/**
36
46
APNSwiftConnection send method. Sends a notification to the desired deviceToken.
37
47
- Parameter payload: the alert to send.
@@ -60,7 +70,7 @@ extension APNSwiftClient {
60
70
priority: Int ? = nil ,
61
71
collapseIdentifier: String ? = nil ,
62
72
topic: String ? = nil ,
63
- logger : Logger ? = nil ,
73
+ loggerConfig : LoggerConfig = . clientLogger ,
64
74
apnsID: UUID ? = nil ) -> EventLoopFuture < Void > {
65
75
return self . send ( APNSwiftPayload ( alert: alert) ,
66
76
pushType: pushType,
@@ -70,7 +80,7 @@ extension APNSwiftClient {
70
80
priority: priority,
71
81
collapseIdentifier: collapseIdentifier,
72
82
topic: topic,
73
- logger : logger ?? self . logger ,
83
+ loggerConfig : loggerConfig ,
74
84
apnsID: apnsID)
75
85
}
76
86
@@ -102,7 +112,7 @@ extension APNSwiftClient {
102
112
priority: Int ? = nil ,
103
113
collapseIdentifier: String ? = nil ,
104
114
topic: String ? = nil ,
105
- logger : Logger ? = nil ,
115
+ loggerConfig : LoggerConfig = . clientLogger ,
106
116
apnsID: UUID ? = nil ) -> EventLoopFuture < Void > {
107
117
return self . send ( BasicNotification ( aps: payload) ,
108
118
pushType: pushType,
@@ -112,7 +122,7 @@ extension APNSwiftClient {
112
122
priority: priority,
113
123
collapseIdentifier: collapseIdentifier,
114
124
topic: topic,
115
- logger : logger ?? self . logger ,
125
+ loggerConfig : loggerConfig ,
116
126
apnsID: apnsID)
117
127
}
118
128
@@ -144,7 +154,7 @@ extension APNSwiftClient {
144
154
priority: Int ? = nil ,
145
155
collapseIdentifier: String ? = nil ,
146
156
topic: String ? = nil ,
147
- logger : Logger ? = nil ,
157
+ loggerConfig : LoggerConfig = . clientLogger ,
148
158
apnsID: UUID ? = nil ) -> EventLoopFuture < Void >
149
159
where Notification: APNSwiftNotification {
150
160
do {
@@ -156,7 +166,7 @@ extension APNSwiftClient {
156
166
priority: priority,
157
167
collapseIdentifier: collapseIdentifier,
158
168
topic: topic,
159
- logger : logger ?? self . logger ,
169
+ loggerConfig : loggerConfig ,
160
170
apnsID: apnsID)
161
171
} catch {
162
172
return self . eventLoop. makeFailedFuture ( error)
@@ -172,7 +182,7 @@ extension APNSwiftClient {
172
182
priority: Int ? ,
173
183
collapseIdentifier: String ? ,
174
184
topic: String ? ,
175
- logger : Logger ? = nil ,
185
+ loggerConfig : LoggerConfig = . clientLogger ,
176
186
apnsID: UUID ? = nil ) -> EventLoopFuture < Void >
177
187
where Bytes : Collection , Bytes. Element == UInt8 {
178
188
var buffer = ByteBufferAllocator ( ) . buffer ( capacity: payload. count)
@@ -184,7 +194,7 @@ extension APNSwiftClient {
184
194
priority: priority,
185
195
collapseIdentifier: collapseIdentifier,
186
196
topic: topic,
187
- logger: logger ?? self . logger ,
197
+ logger: logger ( from : loggerConfig ) ,
188
198
apnsID: apnsID)
189
199
}
190
200
@@ -195,7 +205,7 @@ extension APNSwiftClient {
195
205
priority: Int ? = nil ,
196
206
collapseIdentifier: String ? = nil ,
197
207
topic: String ? = nil ,
198
- logger : Logger ? = nil ,
208
+ loggerConfig : LoggerConfig = . clientLogger ,
199
209
apnsID: UUID ? = nil ) -> EventLoopFuture < Void > {
200
210
return self . send (
201
211
rawBytes: payload,
@@ -205,11 +215,17 @@ extension APNSwiftClient {
205
215
priority: priority,
206
216
collapseIdentifier: collapseIdentifier,
207
217
topic: topic,
208
- logger: logger ?? self . logger ,
218
+ logger: logger ( from : loggerConfig ) ,
209
219
apnsID: apnsID)
210
220
}
211
221
}
212
222
213
223
private struct BasicNotification : APNSwiftNotification {
214
224
let aps : APNSwiftPayload
215
225
}
226
+
227
+ public enum LoggerConfig {
228
+ case none
229
+ case clientLogger
230
+ case custom( Logger )
231
+ }
0 commit comments