From a72a9c51743d9d58b6ebfd025eb96fce09280921 Mon Sep 17 00:00:00 2001 From: dashevchenko Date: Wed, 25 Feb 2026 13:43:07 +0200 Subject: [PATCH] deleted redundant code, md file, reverted some swagger properties for OtaPackageInfo fields --- .../server/config/SwaggerConfiguration.java | 13 +++----- .../server/common/data/OtaPackageInfo.java | 10 +++--- .../server/common/data/TbResourceInfo.java | 2 +- openapi_client_test_generation.md | 32 ------------------- 4 files changed, 10 insertions(+), 47 deletions(-) delete mode 100644 openapi_client_test_generation.md diff --git a/application/src/main/java/org/thingsboard/server/config/SwaggerConfiguration.java b/application/src/main/java/org/thingsboard/server/config/SwaggerConfiguration.java index e68f829132..7c5d0d8bda 100644 --- a/application/src/main/java/org/thingsboard/server/config/SwaggerConfiguration.java +++ b/application/src/main/java/org/thingsboard/server/config/SwaggerConfiguration.java @@ -76,6 +76,7 @@ import java.util.Map; import java.util.Objects; import java.util.TreeMap; import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; @@ -308,7 +309,9 @@ public class SwaggerConfiguration { Schema errorCodeSchema = new Schema<>() .type("integer") .description("Platform error code") - ._enum(Arrays.asList(2, 10, 11, 15, 20, 30, 31, 32, 33, 34, 35, 40, 45, 46)); + ._enum(Arrays.stream(ThingsboardErrorCode.values()) + .map(ThingsboardErrorCode::getErrorCode) + .collect(Collectors.toList())); openAPI.getComponents() .addSchemas("LoginRequest", ModelConverters.getInstance().readAllAsResolvedSchema(new AnnotatedType().type(LoginRequest.class)).schema) .addSchemas("LoginResponse", ModelConverters.getInstance().readAllAsResolvedSchema(new AnnotatedType().type(LoginResponse.class)).schema) @@ -536,14 +539,6 @@ public class SwaggerConfiguration { }); } - private Tag tagsCustomization(Map.Entry entry) { - var tagItem = tagItemFromPathItem(entry.getValue()); - if (tagItem != null) { - return tagFromTagItem(tagItem); - } - return null; - } - private String tagItemFromPathItem(PathItem item) { var operations = item.readOperationsMap().values(); var operation = operations.stream().findAny(); diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/OtaPackageInfo.java b/common/data/src/main/java/org/thingsboard/server/common/data/OtaPackageInfo.java index 5db036f68f..647b584666 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/OtaPackageInfo.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/OtaPackageInfo.java @@ -41,7 +41,7 @@ public class OtaPackageInfo extends BaseDataWithAdditionalInfo imp @Serial private static final long serialVersionUID = 3168391583570815419L; - @Schema(description = "JSON object with Tenant Id. Tenant Id of the ota package can't be changed.") + @Schema(description = "JSON object with Tenant Id. Tenant Id of the ota package can't be changed.", accessMode = Schema.AccessMode.READ_ONLY) private TenantId tenantId; @Schema(description = "JSON object with Device Profile Id. Device Profile Id of the ota package can't be changed.") private DeviceProfileId deviceProfileId; @@ -67,16 +67,16 @@ public class OtaPackageInfo extends BaseDataWithAdditionalInfo imp private boolean hasData; @Length(fieldName = "file name") @NoXss - @Schema(description = "OTA Package file name.", example = "fw_1.0") + @Schema(description = "OTA Package file name.", example = "fw_1.0", accessMode = Schema.AccessMode.READ_ONLY) private String fileName; @NoXss @Length(fieldName = "contentType") - @Schema(description = "OTA Package content type.", example = "APPLICATION_OCTET_STREAM") + @Schema(description = "OTA Package content type.", example = "APPLICATION_OCTET_STREAM", accessMode = Schema.AccessMode.READ_ONLY) private String contentType; - @Schema(description = "OTA Package checksum algorithm.", example = "CRC32") + @Schema(description = "OTA Package checksum algorithm.", example = "CRC32", accessMode = Schema.AccessMode.READ_ONLY) private ChecksumAlgorithm checksumAlgorithm; @Length(fieldName = "checksum", max = 1020) - @Schema(description = "OTA Package checksum.", example = "0xd87f7e0c") + @Schema(description = "OTA Package checksum.", example = "0xd87f7e0c", accessMode = Schema.AccessMode.READ_ONLY) private String checksum; @Schema(description = "OTA Package data size.", example = "8", accessMode = Schema.AccessMode.READ_ONLY) private Long dataSize; diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/TbResourceInfo.java b/common/data/src/main/java/org/thingsboard/server/common/data/TbResourceInfo.java index 3dbe9d2f12..16e95d79ea 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/TbResourceInfo.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/TbResourceInfo.java @@ -40,7 +40,7 @@ public class TbResourceInfo extends BaseData implements HasName, H @Serial private static final long serialVersionUID = 7282664529021651736L; - @Schema(description = "JSON object with Tenant Id. Tenant Id of the resource can't be changed.") + @Schema(description = "JSON object with Tenant Id. Tenant Id of the resource can't be changed.", accessMode = Schema.AccessMode.READ_ONLY) private TenantId tenantId; @NoXss @Length(fieldName = "title") diff --git a/openapi_client_test_generation.md b/openapi_client_test_generation.md deleted file mode 100644 index f31815ef21..0000000000 --- a/openapi_client_test_generation.md +++ /dev/null @@ -1,32 +0,0 @@ - -## To generate tests for generated OpenAPI client, use following prompt in Claude code cli: - -Please add tests in `YourFileName` covering the following API client methods: -getDeviceById -getDeviceInfoById -saveDevice -saveDeviceWithCredentials -deleteDevice -assignDeviceToCustomer -unassignDeviceFromCustomer -assignDeviceToPublicCustomer -getDeviceCredentialsByDeviceId -updateDeviceCredentials -getTenantDevices -getTenantDeviceInfos -getTenantDevice -getTenantDeviceByName -getCustomerDevices -getCustomerDeviceInfos -getDevicesByIds -findByQuery -getDeviceTypes -claimDevice -reClaimDevice -getSecretKey -assignDeviceToTenant -assignDeviceToEdge -unassignDeviceFromEdge -getEdgeDevices -countByDeviceProfileAndEmptyOtaPackage -processDevicesBulkImport.... \ No newline at end of file