@@ -9,30 +9,18 @@ import java.lang.Exception
9
9
10
10
internal object HttpResponse {
11
11
fun createHttpResponse (code : Int , responseBody : String? ): AnalyticsResponse {
12
- when (code) {
13
- HttpStatus .SUCCESS .code -> {
14
- return SuccessResponse ()
15
- }
16
-
17
- HttpStatus .BAD_REQUEST .code -> {
18
- return BadRequestResponse (JSONObject (responseBody))
19
- }
20
-
21
- HttpStatus .PAYLOAD_TOO_LARGE .code -> {
22
- return PayloadTooLargeResponse (JSONObject (responseBody))
23
- }
24
-
25
- HttpStatus .TOO_MANY_REQUESTS .code -> {
26
- return TooManyRequestsResponse (JSONObject (responseBody))
27
- }
28
-
29
- HttpStatus .TIMEOUT .code -> {
30
- return TimeoutResponse ()
31
- }
32
-
33
- else -> {
34
- return FailedResponse (parseResponseBodyOrGetDefault(responseBody))
35
- }
12
+ return when (code) {
13
+ HttpStatus .SUCCESS .code -> SuccessResponse ()
14
+
15
+ HttpStatus .BAD_REQUEST .code -> BadRequestResponse (JSONObject (responseBody))
16
+
17
+ HttpStatus .PAYLOAD_TOO_LARGE .code -> PayloadTooLargeResponse (JSONObject (responseBody))
18
+
19
+ HttpStatus .TOO_MANY_REQUESTS .code -> TooManyRequestsResponse (JSONObject (responseBody))
20
+
21
+ HttpStatus .TIMEOUT .code -> TimeoutResponse ()
22
+
23
+ else -> FailedResponse (parseResponseBodyOrGetDefault(responseBody))
36
24
}
37
25
}
38
26
@@ -61,17 +49,17 @@ interface AnalyticsResponse {
61
49
}
62
50
}
63
51
64
- class SuccessResponse () : AnalyticsResponse {
52
+ class SuccessResponse : AnalyticsResponse {
65
53
override val status: HttpStatus = HttpStatus .SUCCESS
66
54
}
67
55
68
56
class BadRequestResponse (response : JSONObject ) : AnalyticsResponse {
69
57
override val status: HttpStatus = HttpStatus .BAD_REQUEST
70
58
val error: String = response.getStringWithDefault(" error" , " " )
71
- var eventsWithInvalidFields: Set <Int > = setOf ()
72
- var eventsWithMissingFields: Set <Int > = setOf ()
73
- var silencedEvents: Set <Int > = setOf ()
74
- var silencedDevices: Set <String > = setOf ()
59
+ private var eventsWithInvalidFields: Set <Int > = setOf ()
60
+ private var eventsWithMissingFields: Set <Int > = setOf ()
61
+ private var silencedEvents: Set <Int > = setOf ()
62
+ private var silencedDevices: Set <String > = setOf ()
75
63
76
64
init {
77
65
if (response.has(" events_with_invalid_fields" )) {
@@ -99,10 +87,12 @@ class BadRequestResponse(response: JSONObject) : AnalyticsResponse {
99
87
}
100
88
101
89
fun isEventSilenced (event : BaseEvent ): Boolean {
102
- event.deviceId?.let {
103
- return silencedDevices.contains(it)
104
- } ? : let {
105
- return false
90
+ val eventDeviceId = event.deviceId
91
+
92
+ return if (eventDeviceId != null ) {
93
+ silencedDevices.contains(eventDeviceId)
94
+ } else {
95
+ false
106
96
}
107
97
}
108
98
@@ -150,7 +140,7 @@ class TooManyRequestsResponse(response: JSONObject) : AnalyticsResponse {
150
140
}
151
141
}
152
142
153
- class TimeoutResponse () : AnalyticsResponse {
143
+ class TimeoutResponse : AnalyticsResponse {
154
144
override val status: HttpStatus = HttpStatus .TIMEOUT
155
145
}
156
146
@@ -162,33 +152,32 @@ class FailedResponse(response: JSONObject) : AnalyticsResponse {
162
152
interface ResponseHandler {
163
153
fun handle (response : AnalyticsResponse , events : Any , eventsString : String ) {
164
154
when (response) {
165
- is SuccessResponse -> {
155
+ is SuccessResponse ->
166
156
handleSuccessResponse(response, events, eventsString)
167
- }
168
157
169
- is BadRequestResponse -> {
158
+ is BadRequestResponse ->
170
159
handleBadRequestResponse(response, events, eventsString)
171
- }
172
160
173
- is PayloadTooLargeResponse -> {
161
+ is PayloadTooLargeResponse ->
174
162
handlePayloadTooLargeResponse(response, events, eventsString)
175
- }
176
163
177
- is TooManyRequestsResponse -> {
164
+ is TooManyRequestsResponse ->
178
165
handleTooManyRequestsResponse(response, events, eventsString)
179
- }
180
166
181
- is TimeoutResponse -> {
167
+ is TimeoutResponse ->
182
168
handleTimeoutResponse(response, events, eventsString)
183
- }
184
169
185
- else -> {
170
+ else ->
186
171
handleFailedResponse(response as FailedResponse , events, eventsString)
187
- }
188
172
}
189
173
}
190
174
191
- fun handleSuccessResponse (successResponse : SuccessResponse , events : Any , eventsString : String )
175
+ fun handleSuccessResponse (
176
+ successResponse : SuccessResponse ,
177
+ events : Any ,
178
+ eventsString : String
179
+ )
180
+
192
181
fun handleBadRequestResponse (
193
182
badRequestResponse : BadRequestResponse ,
194
183
events : Any ,
@@ -207,6 +196,15 @@ interface ResponseHandler {
207
196
eventsString : String
208
197
)
209
198
210
- fun handleTimeoutResponse (timeoutResponse : TimeoutResponse , events : Any , eventsString : String )
211
- fun handleFailedResponse (failedResponse : FailedResponse , events : Any , eventsString : String )
199
+ fun handleTimeoutResponse (
200
+ timeoutResponse : TimeoutResponse ,
201
+ events : Any ,
202
+ eventsString : String
203
+ )
204
+
205
+ fun handleFailedResponse (
206
+ failedResponse : FailedResponse ,
207
+ events : Any ,
208
+ eventsString : String
209
+ )
212
210
}
0 commit comments