Skip to content

Commit 857adfb

Browse files
committed
Fix new detekt inspection violations appeared after the update version of detekt plugin
1 parent f4792e1 commit 857adfb

23 files changed

Lines changed: 97 additions & 94 deletions

config/detekt.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
complexity:
2-
ComplexMethod:
2+
CyclomaticComplexMethod:
33
threshold: 40
44
LargeClass:
5-
excludes: ['**/test/**']
5+
excludes: [ '**/test/**' ]
66
LongMethod:
77
threshold: 100
8-
excludes: ['**/test/**']
8+
excludes: [ '**/test/**' ]
99
LongParameterList:
1010
functionThreshold: 10
1111
constructorThreshold: 15
12-
excludes: ['**/com/ecwid/apiclient/v3/ApiClient.kt']
12+
excludes: [ '**/com/ecwid/apiclient/v3/ApiClient.kt' ]
1313
NestedBlockDepth:
14-
excludes: ['**/test/**']
14+
excludes: [ '**/test/**' ]
1515
TooManyFunctions:
1616
thresholdInFiles: 50
1717
thresholdInClasses: 50
@@ -29,14 +29,16 @@ style:
2929
ReturnCount:
3030
max: 5
3131
UnnecessaryAbstractClass:
32-
excludes: ['**/test/**']
32+
excludes: [ '**/test/**' ]
3333
WildcardImport:
3434
active: false
3535

3636
# ktlint rules
3737
formatting:
3838
MaximumLineLength:
3939
maxLineLength: 180
40+
EnumEntryNameCase:
41+
active: false # We need to fix all enums before enabling this inspection
4042
# Initially enabled
4143
NoBlankLineBeforeRbrace:
4244
active: false

src/main/kotlin/com/ecwid/apiclient/v3/ApiClient.kt

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,12 +116,14 @@ interface StoreProfileApiClient {
116116
fun getStoreProfile(request: StoreProfileRequest): FetchedStoreProfile
117117
fun updateStoreProfile(request: StoreProfileUpdateRequest): StoreProfileUpdateResult
118118
fun getLatestStats(request: LatestStatsRequest): FetchedLatestStats
119-
fun getShippingOptions(request: ShippingOptionsRequest): ShippingOptionsResult
120-
// fun addShippingOption()
121-
// fun updateShippingOption()
122-
fun getPaymentOptions(request: PaymentOptionsRequest): PaymentOptionsResult
123-
// fun addPaymentOption()
124-
// fun updatePaymentOption()
119+
fun getShippingOptions(request: ShippingOptionsRequest): ShippingOptionsResult
120+
121+
// fun addShippingOption()
122+
// fun updateShippingOption()
123+
fun getPaymentOptions(request: PaymentOptionsRequest): PaymentOptionsResult
124+
125+
// fun addPaymentOption()
126+
// fun updatePaymentOption()
125127
fun uploadStoreLogo(request: StoreLogoUploadRequest): StoreLogoUploadResult
126128
fun removeStoreLogo(request: StoreLogoRemoveRequest): StoreLogoRemoveResult
127129
fun uploadInvoiceLogo(request: InvoiceLogoUploadRequest): InvoiceLogoUploadResult

src/main/kotlin/com/ecwid/apiclient/v3/ApiClientHelper.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,16 @@ class ApiClientHelper private constructor(
129129
)
130130
}
131131
}
132+
132133
is HttpResponse.Error -> {
133134
try {
134135
val responseBody = responseBytes.asString()
135136
logErrorResponseIfNeeded(requestId, requestTime, httpResponse.statusCode, responseBody)
136137
val ecwidError = if (responseBody.isNotBlank()) {
137138
jsonTransformer.deserialize(responseBody, EcwidApiError::class.java)
138-
} else null
139+
} else {
140+
null
141+
}
139142
throw EcwidApiException(
140143
statusCode = httpResponse.statusCode,
141144
reasonPhrase = httpResponse.reasonPhrase,
@@ -151,6 +154,7 @@ class ApiClientHelper private constructor(
151154
)
152155
}
153156
}
157+
154158
is HttpResponse.TransportError -> {
155159
logTransportErrorResponseIfNeeded(
156160
requestId,
@@ -196,16 +200,19 @@ class ApiClientHelper private constructor(
196200
uri = createApiEndpointUri(pathSegments),
197201
params = params.withCredentialsParams(credentials)
198202
)
203+
199204
HttpMethod.POST -> HttpRequest.HttpPostRequest(
200205
uri = createApiEndpointUri(pathSegments),
201206
params = params.withCredentialsParams(credentials),
202207
transportHttpBody = httpBody.prepare(jsonTransformer)
203208
)
209+
204210
HttpMethod.PUT -> HttpRequest.HttpPutRequest(
205211
uri = createApiEndpointUri(pathSegments),
206212
params = params.withCredentialsParams(credentials),
207213
transportHttpBody = httpBody.prepare(jsonTransformer)
208214
)
215+
209216
HttpMethod.DELETE -> HttpRequest.HttpDeleteRequest(
210217
uri = createApiEndpointUri(pathSegments),
211218
params = params.withCredentialsParams(credentials)
@@ -393,12 +400,15 @@ internal fun HttpBody.prepare(jsonTransformer: JsonTransformer): TransportHttpBo
393400
val bodyAsBytes = jsonTransformer.serialize(obj, objExt).toByteArray()
394401
TransportHttpBody.ByteArrayBody(bodyAsBytes, MIME_TYPE_APPLICATION_JSON)
395402
}
403+
396404
is HttpBody.ByteArrayBody -> {
397405
TransportHttpBody.ByteArrayBody(bytes, mimeType)
398406
}
407+
399408
is HttpBody.InputStreamBody -> {
400409
TransportHttpBody.InputStreamBody(stream, mimeType)
401410
}
411+
402412
is HttpBody.LocalFileBody -> {
403413
TransportHttpBody.LocalFileBody(file, mimeType)
404414
}

src/main/kotlin/com/ecwid/apiclient/v3/dto/batch/request/CreateBatchRequest.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,15 @@ private data class SingleBatchRequest(
7272
is HttpBody.EmptyBody -> {
7373
null
7474
}
75+
7576
is HttpBody.JsonBody -> {
7677
requestInfo.httpBody.obj
7778
}
79+
7880
is HttpBody.ByteArrayBody,
7981
is HttpBody.InputStreamBody,
8082
is HttpBody.LocalFileBody -> {
81-
throw IllegalStateException("Request type ${requestInfo.httpBody.javaClass.simpleName} is not allowed in batch requests")
83+
error("Request type ${requestInfo.httpBody.javaClass.simpleName} is not allowed in batch requests")
8284
}
8385
}
8486
)

src/main/kotlin/com/ecwid/apiclient/v3/dto/category/result/FetchedCategory.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ data class FetchedCategory(
2020

2121
val hdThumbnailUrl: String? = null,
2222
val thumbnailUrl: String? = null,
23-
val imageUrl: String? = null, // TODO Cannot test due to bug https://track.ecwid.com/youtrack/issue/ECWID-53222
23+
val imageUrl: String? = null, // TODO Cannot test due to bug https://track.ecwid.com/youtrack/issue/ECWID-53222
2424
val originalImageUrl: String? = null,
2525
val originalImage: PictureInfo? = null,
2626
val url: String? = null,

src/main/kotlin/com/ecwid/apiclient/v3/dto/custom/CustomAppRequest.kt

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -290,25 +290,4 @@ data class CustomAppRequest(
290290
val height: Double? = null
291291
)
292292

293-
fun forLogging(): CustomAppRequest {
294-
return this.copy(merchantAppSettings = merchantAppSettings?.let {
295-
MerchantAppSettings(it.map { (key, value) -> key to formatSettingValue(key, value) }.toMap())
296-
})
297-
}
298-
299-
private fun formatSettingValue(key: String, value: String): String {
300-
if (key == STORAGE_PUBLIC_CONFIG_KEY) {
301-
return value
302-
}
303-
if (value.length <= 2) {
304-
return SECRET_KEYS_PLACEHOLDER
305-
}
306-
return value.first() + SECRET_KEYS_PLACEHOLDER + value.last()
307-
}
308-
309-
companion object {
310-
private const val STORAGE_PUBLIC_CONFIG_KEY = "public"
311-
private const val SECRET_KEYS_PLACEHOLDER = "XXX"
312-
}
313-
314293
}

src/main/kotlin/com/ecwid/apiclient/v3/dto/product/request/GetProductFiltersRequest.kt

Lines changed: 41 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.ecwid.apiclient.v3.dto.product.request
22

33
import com.ecwid.apiclient.v3.dto.ApiRequest
4+
import com.ecwid.apiclient.v3.dto.product.request.GetProductFiltersRequest.*
45
import com.ecwid.apiclient.v3.impl.RequestInfo
56
import java.util.*
67
import java.util.concurrent.TimeUnit
@@ -110,28 +111,24 @@ data class GetProductFiltersRequest(
110111
private fun toParams(): Map<String, String> {
111112
val request = this
112113
return mutableMapOf<String, String>().apply {
113-
put("filterFields", request.filterFields.joinToString(separator = ",") { filterFieldType ->
114-
filterFieldType.getFilterFieldName()
115-
})
114+
put("filterFields", request.filterFields.toFilterFields())
116115
request.filterFacetLimits?.let { filterFacetLimits ->
117-
val filterFacetLimitValue = filterFacetLimits
118-
.toList()
119-
.joinToString(separator = ",") { (filterFieldType, filterFacetLimit) ->
120-
"${filterFieldType.getFilterFieldName()}:${filterFacetLimit.getFilterFacetLimitValue()}"
121-
}
122-
put("filterFacetLimit", filterFacetLimitValue)
116+
put("filterFacetLimit", filterFacetLimits.toFilterFacetLimitValue())
123117
}
124118
request.filterParentCategoryId?.let { filterParentCategoryId ->
125119
put("filterParentCategoryId", filterParentCategoryId.getFilterParentCategoryIdValue())
126120
}
127-
request.keyword?.let { keyword -> put("keyword", keyword) }
128-
request.priceFrom?.let { priceFrom -> put("priceFrom", "$priceFrom") }
129-
request.priceTo?.let { priceTo -> put("priceTo", "$priceTo") }
121+
request.keyword?.let { keyword ->
122+
put("keyword", keyword)
123+
}
124+
request.priceFrom?.let { priceFrom ->
125+
put("priceFrom", "$priceFrom")
126+
}
127+
request.priceTo?.let { priceTo ->
128+
put("priceTo", "$priceTo")
129+
}
130130
request.categories?.let { categories ->
131-
val categoriesValue = categories.joinToString(separator = ",") { categoryId ->
132-
categoryId.getFilterParentCategoryIdValue()
133-
}
134-
put("categories", categoriesValue)
131+
put("categories", categories.toCategoriesValue())
135132
}
136133
request.includeProductsFromSubcategories?.let { includeProductsFromSubcategories ->
137134
put("includeProductsFromSubcategories", "$includeProductsFromSubcategories")
@@ -161,9 +158,34 @@ data class GetProductFiltersRequest(
161158
put(attributeField.getFilterFieldName(), attributeValues.joinToString(separator = ","))
162159
}
163160
}
164-
request.inventory?.let { inventory -> put("inventory", if (inventory) "instock" else "outofstock") }
165-
request.onSale?.let { onSale -> put("onsale", if (onSale) "onsale" else "notonsale") }
166-
request.lang?.let { lang -> put("lang", lang) }
161+
request.inventory?.let { inventory ->
162+
put("inventory", if (inventory) "instock" else "outofstock")
163+
}
164+
request.onSale?.let { onSale ->
165+
put("onsale", if (onSale) "onsale" else "notonsale")
166+
}
167+
request.lang?.let { lang ->
168+
put("lang", lang)
169+
}
167170
}.toMap()
168171
}
172+
173+
}
174+
175+
private fun List<FilterFieldType>.toFilterFields(): String {
176+
return joinToString(separator = ",", transform = FilterFieldType::getFilterFieldName)
177+
}
178+
179+
private fun Map<FilterFieldType, FilterFacetLimit>.toFilterFacetLimitValue(): String {
180+
return toList()
181+
.joinToString(separator = ",") { (filterFieldType, filterFacetLimit) ->
182+
"${filterFieldType.getFilterFieldName()}:${filterFacetLimit.getFilterFacetLimitValue()}"
183+
}
184+
}
185+
186+
private fun List<FilterCategoryId>.toCategoriesValue(): String {
187+
val categoriesValue = joinToString(separator = ",") { categoryId ->
188+
categoryId.getFilterParentCategoryIdValue()
189+
}
190+
return categoriesValue
169191
}

src/main/kotlin/com/ecwid/apiclient/v3/dto/profile/request/UpdatedExtrafieldConfig.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ package com.ecwid.apiclient.v3.dto.profile.request
33
import com.ecwid.apiclient.v3.dto.common.ApiUpdatedDTO
44
import com.ecwid.apiclient.v3.dto.common.ApiUpdatedDTO.ModifyKind
55
import com.ecwid.apiclient.v3.dto.common.LocalizedValueMap
6+
import com.ecwid.apiclient.v3.dto.profile.enums.CheckoutDisplaySection
67
import com.ecwid.apiclient.v3.dto.profile.enums.ExtrafieldType
7-
import com.ecwid.apiclient.v3.dto.profile.enums.SurchargeType
88
import com.ecwid.apiclient.v3.dto.profile.enums.OrderDetailsDisplaySection
9-
import com.ecwid.apiclient.v3.dto.profile.enums.CheckoutDisplaySection
9+
import com.ecwid.apiclient.v3.dto.profile.enums.SurchargeType
1010
import com.ecwid.apiclient.v3.dto.profile.result.FetchedExtrafieldConfig
1111

1212
data class UpdatedExtrafieldConfig(

src/main/kotlin/com/ecwid/apiclient/v3/dto/profile/result/FetchedExtrafieldConfig.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ package com.ecwid.apiclient.v3.dto.profile.result
33
import com.ecwid.apiclient.v3.dto.common.ApiFetchedDTO
44
import com.ecwid.apiclient.v3.dto.common.ApiFetchedDTO.ModifyKind
55
import com.ecwid.apiclient.v3.dto.common.LocalizedValueMap
6+
import com.ecwid.apiclient.v3.dto.profile.enums.CheckoutDisplaySection
67
import com.ecwid.apiclient.v3.dto.profile.enums.ExtrafieldType
7-
import com.ecwid.apiclient.v3.dto.profile.enums.SurchargeType
88
import com.ecwid.apiclient.v3.dto.profile.enums.OrderDetailsDisplaySection
9-
import com.ecwid.apiclient.v3.dto.profile.enums.CheckoutDisplaySection
9+
import com.ecwid.apiclient.v3.dto.profile.enums.SurchargeType
1010
import com.ecwid.apiclient.v3.dto.profile.request.UpdatedExtrafieldConfig
1111

1212
data class FetchedExtrafieldConfig(

src/main/kotlin/com/ecwid/apiclient/v3/impl/ProductVariationsApiClientImpl.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package com.ecwid.apiclient.v3.impl
22

33
import com.ecwid.apiclient.v3.ApiClientHelper
44
import com.ecwid.apiclient.v3.ProductVariationsApiClient
5-
import com.ecwid.apiclient.v3.dto.variation.request.ProductVariationImageAsyncUploadRequest
6-
import com.ecwid.apiclient.v3.dto.variation.result.ProductVariationImageAsyncUploadResult
75
import com.ecwid.apiclient.v3.dto.variation.request.*
86
import com.ecwid.apiclient.v3.dto.variation.result.*
97

0 commit comments

Comments
 (0)