diff --git a/hawkbit-ddi/hawkbit-ddi-resource/src/main/java/org/eclipse/hawkbit/ddi/rest/resource/DdiRootController.java b/hawkbit-ddi/hawkbit-ddi-resource/src/main/java/org/eclipse/hawkbit/ddi/rest/resource/DdiRootController.java index ae7a8b3bc..0149e5b04 100644 --- a/hawkbit-ddi/hawkbit-ddi-resource/src/main/java/org/eclipse/hawkbit/ddi/rest/resource/DdiRootController.java +++ b/hawkbit-ddi/hawkbit-ddi-resource/src/main/java/org/eclipse/hawkbit/ddi/rest/resource/DdiRootController.java @@ -178,7 +178,7 @@ public class DdiRootController implements DdiRootControllerRestApi { .orElseThrow(() -> new EntityNotFoundException(SoftwareModule.class, softwareModuleId)); if (checkModule(fileName, module)) { - log.warn("Software module with id {} could not be found.", softwareModuleId); + log.warn("Software module with id {} could not be found (1).", softwareModuleId); result = ResponseEntity.notFound().build(); } else { // Artifact presence is ensured in 'checkModule' @@ -219,7 +219,7 @@ public class DdiRootController implements DdiRootControllerRestApi { .orElseThrow(() -> new EntityNotFoundException(SoftwareModule.class, softwareModuleId)); if (checkModule(fileName, module)) { - log.warn("Software module with id {} could not be found.", softwareModuleId); + log.warn("Software module with id {} could not be found (2).", softwareModuleId); return ResponseEntity.notFound().build(); } diff --git a/hawkbit-mgmt/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtActionResource.java b/hawkbit-mgmt/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtActionResource.java index 956139583..510a5a6e9 100644 --- a/hawkbit-mgmt/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtActionResource.java +++ b/hawkbit-mgmt/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtActionResource.java @@ -47,7 +47,7 @@ public class MgmtActionResource implements MgmtActionRestApi { final Pageable pageable = new OffsetBasedPageRequest(sanitizedOffsetParam, sanitizedLimitParam, sorting); final Slice actions; - final Long totalActionCount; + final long totalActionCount; if (rsqlParam != null) { actions = this.deploymentManagement.findActions(rsqlParam, pageable); totalActionCount = this.deploymentManagement.countActions(rsqlParam); diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/event/remote/entity/TargetFilterQueryCreatedEvent.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/event/remote/entity/TargetFilterQueryCreatedEvent.java index 104eef460..af6dcb64d 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/event/remote/entity/TargetFilterQueryCreatedEvent.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/event/remote/entity/TargetFilterQueryCreatedEvent.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.event.remote.entity; +import java.io.Serial; + import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.eclipse.hawkbit.repository.event.entity.EntityCreatedEvent; @@ -20,6 +22,7 @@ import org.eclipse.hawkbit.repository.model.TargetFilterQuery; @NoArgsConstructor(access = AccessLevel.PUBLIC) // for serialization libs like jackson public class TargetFilterQueryCreatedEvent extends RemoteEntityEvent implements EntityCreatedEvent { + @Serial private static final long serialVersionUID = 1L; /** diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/model/AssignedSoftwareModule.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/model/AssignedSoftwareModule.java index d94100cc9..69aa58ba6 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/model/AssignedSoftwareModule.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/model/AssignedSoftwareModule.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.model; +import java.io.Serial; import java.io.Serializable; import lombok.Data; @@ -20,6 +21,7 @@ import org.eclipse.hawkbit.repository.Identifiable; @Data public class AssignedSoftwareModule implements Serializable, Identifiable { + @Serial private static final long serialVersionUID = 1L; private final SoftwareModule softwareModule; diff --git a/hawkbit-repository/hawkbit-repository-core/src/main/java/org/eclipse/hawkbit/repository/builder/AbstractMetadataUpdateCreate.java b/hawkbit-repository/hawkbit-repository-core/src/main/java/org/eclipse/hawkbit/repository/builder/AbstractMetadataUpdateCreate.java index 72feb137b..644f88c6f 100644 --- a/hawkbit-repository/hawkbit-repository-core/src/main/java/org/eclipse/hawkbit/repository/builder/AbstractMetadataUpdateCreate.java +++ b/hawkbit-repository/hawkbit-repository-core/src/main/java/org/eclipse/hawkbit/repository/builder/AbstractMetadataUpdateCreate.java @@ -11,6 +11,7 @@ package org.eclipse.hawkbit.repository.builder; import java.util.Optional; +import lombok.Getter; import org.eclipse.hawkbit.repository.ValidString; import org.springframework.util.StringUtils; @@ -22,6 +23,7 @@ import org.springframework.util.StringUtils; public abstract class AbstractMetadataUpdateCreate { @ValidString + @Getter protected String key; @ValidString protected String value; @@ -31,10 +33,6 @@ public abstract class AbstractMetadataUpdateCreate { return (T) this; } - public String getKey() { - return key; - } - public T value(final String value) { this.value = StringUtils.trimWhitespace(value); return (T) this; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/RepositoryApplicationConfiguration.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/RepositoryApplicationConfiguration.java index 9baf10501..c292cf983 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/RepositoryApplicationConfiguration.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/RepositoryApplicationConfiguration.java @@ -235,8 +235,7 @@ public class RepositoryApplicationConfiguration extends JpaBaseConfiguration { // ValidatorFactory shall NOT be closed because after closing the generated Validator // methods shall not be called - we need the validator in future processor.setValidator(Validation.byDefaultProvider().configure() - .addProperty(BaseHibernateValidatorConfiguration.ALLOW_PARALLEL_METHODS_DEFINE_PARAMETER_CONSTRAINTS, - "true") + .addProperty(BaseHibernateValidatorConfiguration.ALLOW_PARALLEL_METHODS_DEFINE_PARAMETER_CONSTRAINTS,"true") .buildValidatorFactory().getValidator()); return processor; } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignChecker.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignChecker.java index bc39d0c04..9d904b521 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignChecker.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignChecker.java @@ -120,7 +120,7 @@ public class AutoAssignChecker extends AbstractAutoAssignExecutor { } catch (final PersistenceException | AbstractServerRtException e) { log.error("Error during auto assign check of target filter query id {}", targetFilterQuery.getId(), e); } - log.debug("Auto assign check call for tenant {} and target filter query id {} finished", - getContextAware().getCurrentTenant(), targetFilterQuery.getId()); + log.debug("Auto assign check call for tenant {} and target filter query id {} for device {} finished", + getContextAware().getCurrentTenant(), targetFilterQuery.getId(), controllerId); } } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/executor/AfterTransactionCommitDefaultServiceExecutor.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/executor/AfterTransactionCommitDefaultServiceExecutor.java index e3123c571..e53200ab6 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/executor/AfterTransactionCommitDefaultServiceExecutor.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/executor/AfterTransactionCommitDefaultServiceExecutor.java @@ -36,7 +36,7 @@ public class AfterTransactionCommitDefaultServiceExecutor extends TransactionSyn try { afterCommitRunnable.run(); } catch (final RuntimeException e) { - log.error("Failed to execute runnable " + afterCommitRunnable, e); + log.error("Failed to execute runnable {}", afterCommitRunnable, e); } } } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDeploymentManagement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDeploymentManagement.java index 116c9c468..bc08b85b8 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDeploymentManagement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDeploymentManagement.java @@ -556,7 +556,7 @@ public class JpaDeploymentManagement extends JpaActionManagement implements Depl try { assertTargetUpdateAllowed(action); forceQuitAction(action.getId()); - log.debug("Action {} force canceled", action.getId()); + log.debug("Action {} force canceled (force)", action.getId()); } catch (final InsufficientPermissionException e) { log.trace("Could not cancel action {} due to insufficient permissions.", action.getId(), e); } catch (final EntityNotFoundException e) { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTargetFilterQueryManagement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTargetFilterQueryManagement.java index 202d50b02..67f4248dd 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTargetFilterQueryManagement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTargetFilterQueryManagement.java @@ -145,7 +145,7 @@ public class JpaTargetFilterQueryManagement implements TargetFilterQueryManageme RSQLUtility.validateRsqlFor(query, TargetFields.class); return true; } catch (final RSQLParserException | RSQLParameterUnsupportedFieldException e) { - log.debug("The RSQL query '" + query + "' is invalid.", e); + log.debug("The RSQL query '{}}' is invalid.", query, e); return false; } } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java index f7e763179..e7ee20b21 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java @@ -106,8 +106,8 @@ public class JpaTenantConfigurationManagement implements TenantConfigurationMana } @Override - public TenantConfigurationValue getConfigurationValue( - final String configurationKeyName) { + @Cacheable(value = "tenantConfiguration", key = "#configurationKeyName") + public TenantConfigurationValue getConfigurationValue(final String configurationKeyName) { checkAccess(configurationKeyName); final TenantConfigurationKey configurationKey = tenantConfigurationProperties.fromKeyName(configurationKeyName); @@ -117,16 +117,15 @@ public class JpaTenantConfigurationManagement implements TenantConfigurationMana @Override @Cacheable(value = "tenantConfiguration", key = "#configurationKeyName") - public TenantConfigurationValue getConfigurationValue(final String configurationKeyName, - final Class propertyType) { + public TenantConfigurationValue getConfigurationValue( + final String configurationKeyName, final Class propertyType) { checkAccess(configurationKeyName); final TenantConfigurationKey configurationKey = tenantConfigurationProperties.fromKeyName(configurationKeyName); validateTenantConfigurationDataType(configurationKey, propertyType); - final TenantConfiguration tenantConfiguration = tenantConfigurationRepository - .findByKey(configurationKey.getKeyName()); + final TenantConfiguration tenantConfiguration = tenantConfigurationRepository.findByKey(configurationKey.getKeyName()); return buildTenantConfigurationValueByKey(configurationKey, propertyType, tenantConfiguration); } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaMetaData.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaMetaData.java index 719089a1d..c3948dbfc 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaMetaData.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaMetaData.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.util.Objects; import jakarta.persistence.Basic; @@ -26,6 +27,7 @@ import org.eclipse.hawkbit.repository.model.MetaData; @MappedSuperclass public abstract class AbstractJpaMetaData implements MetaData { + @Serial private static final long serialVersionUID = 1L; @Id diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedEntity.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedEntity.java index 35d7e725c..ef59260e8 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedEntity.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedEntity.java @@ -24,8 +24,7 @@ import org.eclipse.hawkbit.repository.model.TenantAwareBaseEntity; * addition to their technical ID. */ @MappedSuperclass -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public abstract class AbstractJpaNamedEntity extends AbstractJpaTenantAwareBaseEntity implements NamedEntity { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedVersionedEntity.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedVersionedEntity.java index 17dea311b..2496af0be 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedVersionedEntity.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaNamedVersionedEntity.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Column; import jakarta.persistence.MappedSuperclass; import jakarta.validation.constraints.NotNull; @@ -21,11 +23,11 @@ import org.eclipse.hawkbit.repository.model.NamedVersionedEntity; * Extension for {@link NamedEntity} that are versioned. */ @MappedSuperclass -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public abstract class AbstractJpaNamedVersionedEntity extends AbstractJpaNamedEntity implements NamedVersionedEntity { + @Serial private static final long serialVersionUID = 1L; @Column(name = "version", nullable = false, length = NamedVersionedEntity.VERSION_MAX_SIZE) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaTenantAwareBaseEntity.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaTenantAwareBaseEntity.java index 734b2cfff..d366e6512 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaTenantAwareBaseEntity.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaTenantAwareBaseEntity.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Column; import jakarta.persistence.MappedSuperclass; import jakarta.persistence.PrePersist; @@ -31,6 +33,7 @@ import org.eclipse.persistence.annotations.TenantDiscriminatorColumn; @Multitenant(MultitenantType.SINGLE_TABLE) public abstract class AbstractJpaTenantAwareBaseEntity extends AbstractJpaBaseEntity implements TenantAwareBaseEntity { + @Serial private static final long serialVersionUID = 1L; @Column(name = "tenant", nullable = false, insertable = false, updatable = false, length = 40) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElement.java index 40ca85776..6fd8bdb6a 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElement.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; import jakarta.persistence.Column; @@ -34,6 +35,7 @@ import org.eclipse.hawkbit.repository.model.SoftwareModuleType; @Table(name = "sp_ds_type_element") public class DistributionSetTypeElement implements Serializable { + @Serial private static final long serialVersionUID = 1L; @EmbeddedId diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElementCompositeKey.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElementCompositeKey.java index fca65bd84..0aa6e924d 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElementCompositeKey.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DistributionSetTypeElementCompositeKey.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; import jakarta.persistence.Column; @@ -20,6 +21,7 @@ import jakarta.persistence.Embeddable; @Embeddable public class DistributionSetTypeElementCompositeKey implements Serializable { + @Serial private static final long serialVersionUID = 1L; @Column(name = "distribution_set_type", nullable = false, updatable = false) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DsMetadataCompositeKey.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DsMetadataCompositeKey.java index cad6d0c92..42654e321 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DsMetadataCompositeKey.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/DsMetadataCompositeKey.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; /** @@ -17,6 +18,7 @@ import java.io.Serializable; */ public final class DsMetadataCompositeKey implements Serializable { + @Serial private static final long serialVersionUID = 1L; private String key; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaArtifact.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaArtifact.java index 52ac0478c..145108732 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaArtifact.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaArtifact.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.CascadeType; import jakarta.persistence.Column; import jakarta.persistence.ConstraintMode; @@ -34,11 +36,11 @@ import org.eclipse.hawkbit.repository.model.SoftwareModule; @Index(name = "sp_idx_artifact_02", columnList = "tenant,sha1_hash"), @Index(name = "sp_idx_artifact_prim", columnList = "tenant,id") }) @Entity -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaArtifact extends AbstractJpaTenantAwareBaseEntity implements Artifact { + @Serial private static final long serialVersionUID = 1L; @Column(name = "sha1_hash", length = 40, nullable = false, updatable = false) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSet.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSet.java index 98f58fb97..e20fa1b3f 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSet.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSet.java @@ -66,8 +66,7 @@ import org.springframework.context.ApplicationEvent; @Index(name = "sp_idx_distribution_set_prim", columnList = "tenant,id") }) @NamedEntityGraph(name = "DistributionSet.detail", attributeNodes = { @NamedAttributeNode("modules"), @NamedAttributeNode("tags"), @NamedAttributeNode("type") }) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaDistributionSet extends AbstractJpaNamedVersionedEntity implements DistributionSet, EventAwareEntity { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetMetadata.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetMetadata.java index bd3a175c9..dfbb103ec 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetMetadata.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetMetadata.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.ConstraintMode; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; @@ -30,6 +32,7 @@ import org.eclipse.hawkbit.repository.model.DistributionSetMetadata; @Table(name = "sp_ds_metadata") public class JpaDistributionSetMetadata extends AbstractJpaMetaData implements DistributionSetMetadata { + @Serial private static final long serialVersionUID = 1L; @Id diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetTag.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetTag.java index dc89c137c..40e751170 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetTag.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetTag.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.util.List; import jakarta.persistence.Entity; @@ -30,12 +31,14 @@ import org.eclipse.hawkbit.repository.model.helper.EventPublisherHolder; * and use them also for filtering the DistributionSet list. */ @Entity -@Table(name = "sp_distributionset_tag", indexes = { - @Index(name = "sp_idx_distribution_set_tag_prim", columnList = "tenant,id"), - @Index(name = "sp_idx_distribution_set_tag_01", columnList = "tenant,name") }, uniqueConstraints = @UniqueConstraint(columnNames = { - "name", "tenant" }, name = "uk_ds_tag")) +@Table(name = "sp_distributionset_tag", + indexes = { + @Index(name = "sp_idx_distribution_set_tag_prim", columnList = "tenant,id"), + @Index(name = "sp_idx_distribution_set_tag_01", columnList = "tenant,name") }, + uniqueConstraints = @UniqueConstraint(columnNames = { "name", "tenant" }, name = "uk_ds_tag")) public class JpaDistributionSetTag extends JpaTag implements DistributionSetTag, EventAwareEntity { + @Serial private static final long serialVersionUID = 1L; @ManyToMany(mappedBy = "tags", targetEntity = JpaDistributionSet.class, fetch = FetchType.LAZY) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetType.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetType.java index c35febaeb..d40456aa4 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetType.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaDistributionSetType.java @@ -48,8 +48,7 @@ import org.springframework.util.CollectionUtils; @Index(name = "sp_idx_distribution_set_type_prim", columnList = "tenant,id") }, uniqueConstraints = { @UniqueConstraint(columnNames = { "name", "tenant" }, name = "uk_dst_name"), @UniqueConstraint(columnNames = { "type_key", "tenant" }, name = "uk_dst_key") }) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaDistributionSetType extends AbstractJpaTypeEntity implements DistributionSetType, EventAwareEntity { @@ -136,11 +135,11 @@ public class JpaDistributionSetType extends AbstractJpaTypeEntity implements Dis @Override public boolean checkComplete(final DistributionSet distributionSet) { final List smTypes = distributionSet.getModules().stream().map(SoftwareModule::getType) - .distinct().collect(Collectors.toList()); + .distinct().toList(); if (smTypes.isEmpty()) { return false; } - return smTypes.containsAll(getMandatoryModuleTypes()); + return new HashSet<>(smTypes).containsAll(getMandatoryModuleTypes()); } public JpaDistributionSetType addOptionalModuleType(final SoftwareModuleType smType) { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModule.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModule.java index 383fadb61..fb70e930d 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModule.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModule.java @@ -61,8 +61,7 @@ import org.eclipse.hawkbit.repository.model.helper.EventPublisherHolder; @Index(name = "sp_idx_base_sw_module_02", columnList = "tenant,deleted,module_type"), @Index(name = "sp_idx_base_sw_module_prim", columnList = "tenant,id") }) @NamedEntityGraph(name = "SoftwareModule.artifacts", attributeNodes = { @NamedAttributeNode("artifacts") }) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaSoftwareModule extends AbstractJpaNamedVersionedEntity implements SoftwareModule, EventAwareEntity { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleMetadata.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleMetadata.java index daaab8a60..3f2cadd64 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleMetadata.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleMetadata.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Column; import jakarta.persistence.ConstraintMode; import jakarta.persistence.Entity; @@ -31,6 +33,7 @@ import org.eclipse.hawkbit.repository.model.SoftwareModuleMetadata; @Table(name = "sp_sw_metadata") public class JpaSoftwareModuleMetadata extends AbstractJpaMetaData implements SoftwareModuleMetadata { + @Serial private static final long serialVersionUID = 1L; @Id diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleType.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleType.java index 9501a678a..2bf83548a 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleType.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaSoftwareModuleType.java @@ -33,8 +33,7 @@ import org.eclipse.hawkbit.repository.model.helper.EventPublisherHolder; @Index(name = "sp_idx_software_module_type_prim", columnList = "tenant,id") }, uniqueConstraints = { @UniqueConstraint(columnNames = { "type_key", "tenant" }, name = "uk_smt_type_key"), @UniqueConstraint(columnNames = { "name", "tenant" }, name = "uk_smt_name") }) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaSoftwareModuleType extends AbstractJpaTypeEntity implements SoftwareModuleType, EventAwareEntity { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTag.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTag.java index 82a0e0388..525ceced1 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTag.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTag.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Column; import jakarta.persistence.MappedSuperclass; import jakarta.validation.constraints.Size; @@ -20,11 +22,11 @@ import org.eclipse.hawkbit.repository.model.Tag; * kind of entity. */ @MappedSuperclass -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaTag extends AbstractJpaNamedEntity implements Tag { + @Serial private static final long serialVersionUID = 1L; @Column(name = "colour", nullable = true, length = Tag.COLOUR_MAX_SIZE) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTarget.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTarget.java index f09e7db78..bcc808381 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTarget.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTarget.java @@ -76,8 +76,7 @@ import org.eclipse.hawkbit.security.SystemSecurityContext; @Index(name = "sp_idx_target_05", columnList = "tenant,last_modified_at"), @Index(name = "sp_idx_target_prim", columnList = "tenant,id") }, uniqueConstraints = @UniqueConstraint(columnNames = { "controller_id", "tenant" }, name = "uk_tenant_controller_id")) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") @Slf4j public class JpaTarget extends AbstractJpaNamedEntity implements Target, EventAwareEntity { diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTargetMetadata.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTargetMetadata.java index 754d632a9..a1a64937f 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTargetMetadata.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTargetMetadata.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.ConstraintMode; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; @@ -30,6 +32,7 @@ import org.eclipse.hawkbit.repository.model.TargetMetadata; @Table(name = "sp_target_metadata") public class JpaTargetMetadata extends AbstractJpaMetaData implements TargetMetadata { + @Serial private static final long serialVersionUID = 1L; @Id diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantConfiguration.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantConfiguration.java index 270458539..c1a16424d 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantConfiguration.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantConfiguration.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Basic; import jakarta.persistence.Column; import jakarta.persistence.Entity; @@ -29,12 +31,11 @@ import org.eclipse.hawkbit.repository.model.helper.EventPublisherHolder; @Entity @Table(name = "sp_tenant_configuration", uniqueConstraints = @UniqueConstraint(columnNames = { "conf_key", "tenant" }, name = "uk_tenant_key")) -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") -public class JpaTenantConfiguration extends AbstractJpaTenantAwareBaseEntity - implements TenantConfiguration, EventAwareEntity { +public class JpaTenantConfiguration extends AbstractJpaTenantAwareBaseEntity implements TenantConfiguration, EventAwareEntity { + @Serial private static final long serialVersionUID = 1L; @Column(name = "conf_key", length = TenantConfiguration.KEY_MAX_SIZE, nullable = false, updatable = false) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantMetaData.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantMetaData.java index 0fe857863..70cc35002 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantMetaData.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaTenantMetaData.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; + import jakarta.persistence.Column; import jakarta.persistence.ConstraintMode; import jakarta.persistence.Entity; @@ -38,11 +40,11 @@ import org.eclipse.hawkbit.repository.model.TenantMetaData; @Index(name = "sp_idx_tenant_prim", columnList = "tenant,id") }, uniqueConstraints = { @UniqueConstraint(columnNames = { "tenant" }, name = "uk_tenantmd_tenant") }) @Entity -// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for -// sub entities +// exception squid:S2160 - BaseEntity equals/hashcode is handling correctly for sub entities @SuppressWarnings("squid:S2160") public class JpaTenantMetaData extends AbstractJpaBaseEntity implements TenantMetaData { + @Serial private static final long serialVersionUID = 1L; @Column(name = "tenant", nullable = false, updatable = false, length = 40) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/RolloutTargetGroupId.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/RolloutTargetGroupId.java index 169b7d1fb..e0bbd66ff 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/RolloutTargetGroupId.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/RolloutTargetGroupId.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; import org.eclipse.hawkbit.repository.model.RolloutGroup; @@ -19,6 +20,7 @@ import org.eclipse.hawkbit.repository.model.Target; */ public class RolloutTargetGroupId implements Serializable { + @Serial private static final long serialVersionUID = 1L; private Long rolloutGroup; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/SwMetadataCompositeKey.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/SwMetadataCompositeKey.java index 90f2ca5d6..a42203a2a 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/SwMetadataCompositeKey.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/SwMetadataCompositeKey.java @@ -9,30 +9,27 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; +import lombok.NoArgsConstructor; + /** - * The Software Module meta data composite key which contains the meta data key + * The Software Module meta-data composite key which contains the meta-data key * and the ID of the software module itself. */ +@NoArgsConstructor // Default constructor for JPA public final class SwMetadataCompositeKey implements Serializable { + @Serial private static final long serialVersionUID = 1L; private String key; - private Long softwareModule; /** - * Default constructor for JPA. - */ - public SwMetadataCompositeKey() { - // Default constructor for JPA. - } - - /** - * @param moduleId the software module for this meta data - * @param key the key of the meta data + * @param moduleId the software module for this meta-data + * @param key the key of the meta-data */ public SwMetadataCompositeKey(final Long moduleId, final String key) { this.softwareModule = moduleId; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/TargetMetadataCompositeKey.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/TargetMetadataCompositeKey.java index 8855baae9..aba13bade 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/TargetMetadataCompositeKey.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/TargetMetadataCompositeKey.java @@ -9,28 +9,27 @@ */ package org.eclipse.hawkbit.repository.jpa.model; +import java.io.Serial; import java.io.Serializable; import java.util.Objects; +import lombok.NoArgsConstructor; + /** - * The Target Metadata composite key which contains the meta data key and the ID - * of the Target itself. + * The Target Metadata composite key which contains the meta-data key and the ID of the Target itself. */ +@NoArgsConstructor // Default constructor for JPA public final class TargetMetadataCompositeKey implements Serializable { + @Serial private static final long serialVersionUID = 1L; private String key; - private Long target; - public TargetMetadataCompositeKey() { - // Default constructor for JPA. - } - /** - * @param target the target Id for this meta data - * @param key the key of the meta data + * @param target the target Id for this meta-data + * @param key the key of the meta-data */ public TargetMetadataCompositeKey(final Long target, final String key) { this.target = target; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/RolloutGroupEvaluationManager.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/RolloutGroupEvaluationManager.java index 4c1f55cca..5d6698f2f 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/RolloutGroupEvaluationManager.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/RolloutGroupEvaluationManager.java @@ -77,7 +77,7 @@ public class RolloutGroupEvaluationManager { final List> evaluators, final T action) { return evaluators.stream().filter(evaluator -> evaluator.getAction() == action).findFirst().orElseThrow(() -> { log.warn("Could not find suitable evaluator for the '{}' action.", action.name()); - throw new EvaluatorNotConfiguredException(action.name()); + return new EvaluatorNotConfiguredException(action.name()); }); } @@ -86,7 +86,7 @@ public class RolloutGroupEvaluationManager { return evaluators.stream().filter(evaluator -> evaluator.getCondition() == condition).findFirst() .orElseThrow(() -> { log.warn("Could not find suitable evaluator for the '{}' condition.", condition.name()); - throw new EvaluatorNotConfiguredException(condition.name()); + return new EvaluatorNotConfiguredException(condition.name()); }); } } \ No newline at end of file diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupErrorCondition.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupErrorCondition.java index b5daf6af0..ffd047dbd 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupErrorCondition.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupErrorCondition.java @@ -39,7 +39,7 @@ public class ThresholdRolloutGroupErrorCondition final Long error = actionRepository.countByRolloutIdAndRolloutGroupIdAndStatus(rollout.getId(), rolloutGroup.getId(), Action.Status.ERROR); try { - final Integer threshold = Integer.valueOf(expression); + final int threshold = Integer.parseInt(expression); if (totalGroup == 0) { // in case e.g. targets has been deleted we don't have any @@ -50,7 +50,7 @@ public class ThresholdRolloutGroupErrorCondition // calculate threshold return ((float) error / (float) totalGroup) > ((float) threshold / 100F); } catch (final NumberFormatException e) { - log.error("Cannot evaluate condition expression " + expression, e); + log.error("Cannot evaluate condition expression {}", expression, e); return false; } } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupSuccessCondition.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupSuccessCondition.java index 29f7739cf..f29194fbc 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupSuccessCondition.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rollout/condition/ThresholdRolloutGroupSuccessCondition.java @@ -54,7 +54,7 @@ public class ThresholdRolloutGroupSuccessCondition return ((float) finished / (float) totalGroup) >= ((float) threshold / 100F); } catch (final NumberFormatException e) { - log.error("Cannot evaluate condition expression " + expression, e); + log.error("Cannot evaluate condition expression {}", expression, e); return false; } } diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rsql/RsqlParserValidationOracle.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rsql/RsqlParserValidationOracle.java index 24e20775b..52966cd80 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rsql/RsqlParserValidationOracle.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/rsql/RsqlParserValidationOracle.java @@ -225,15 +225,15 @@ public class RsqlParserValidationOracle implements RsqlValidationOracle { return builder; } - builder = message.substring(message.indexOf(':') + 1, message.length()); - if (builder.indexOf("Was expecting") != -1) { + builder = message.substring(message.indexOf(':') + 1); + if (builder.contains("Was expecting")) { builder = builder.substring(0, builder.lastIndexOf("Was expecting")); } if (!CollectionUtils.isEmpty(expectedTokens)) { final StringBuilder tokens = new StringBuilder(); - expectedTokens.stream().forEach(value -> tokens.append(value.getSuggestion() + ",")); - builder = builder.concat("Was expecting :" + tokens.toString().substring(0, tokens.length() - 1)); + expectedTokens.stream().forEach(value -> tokens.append(value.getSuggestion()).append(",")); + builder = builder.concat("Was expecting :" + tokens.substring(0, tokens.length() - 1)); } builder = builder.replace('\r', ' '); builder = builder.replace('\n', ' '); @@ -290,7 +290,7 @@ public class RsqlParserValidationOracle implements RsqlValidationOracle { final String finalTmpTokenName = tmpTokenName; return Arrays.stream(TargetFields.values()) .filter(field -> field.toString().equalsIgnoreCase(finalTmpTokenName)) - .map(TargetFields::getSubEntityAttributes).flatMap(List::stream).count() > 0; + .map(TargetFields::getSubEntityAttributes).mapToLong(List::size).sum() > 0; } private static boolean isMap(final String tokenImageName) { @@ -316,16 +316,14 @@ public class RsqlParserValidationOracle implements RsqlValidationOracle { private static boolean containsValue(final String imageName) { if (!imageName.contains(".")) { - return FIELD_NAMES.stream().filter(value -> value.equalsIgnoreCase(imageName)).count() > 0; + return FIELD_NAMES.stream().anyMatch(value -> value.equalsIgnoreCase(imageName)); } final String[] split = imageName.split("\\."); if (split.length > 1 && FIELD_NAMES.contains(split[0].toLowerCase())) { return SUB_NAMES.get(split[0].toLowerCase()).stream() - .filter(subname -> (split[0] + "." + subname).equalsIgnoreCase(imageName)).count() > 0; + .anyMatch(subname -> (split[0] + "." + subname).equalsIgnoreCase(imageName)); } - return FIELD_NAMES.stream().filter(value -> value.equalsIgnoreCase(imageName)).count() > 0; + return FIELD_NAMES.stream().anyMatch(value -> value.equalsIgnoreCase(imageName)); } - } - -} +} \ No newline at end of file diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/specifications/TargetSpecifications.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/specifications/TargetSpecifications.java index 1a3d924dd..5a9f23866 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/specifications/TargetSpecifications.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/specifications/TargetSpecifications.java @@ -578,7 +578,7 @@ public final class TargetSpecifications { hasTagsPredicates.add(exp.isNull()); } if (isAtLeastOneTagActive(tagNames)) { - hasTagsPredicates.add(exp.in(tagNames)); + hasTagsPredicates.add(exp.in((Object[]) tagNames)); } return hasTagsPredicates.stream().reduce(cb::or) diff --git a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/matcher/EventVerifier.java b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/matcher/EventVerifier.java index f48c6bba4..ed9bf975a 100644 --- a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/matcher/EventVerifier.java +++ b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/matcher/EventVerifier.java @@ -14,6 +14,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.junit.jupiter.api.Assertions.fail; +import java.io.Serial; import java.lang.reflect.Method; import java.util.HashSet; import java.util.Iterator; @@ -175,11 +176,11 @@ public class EventVerifier extends AbstractTestExecutionListener { private static final class ResetCounterMarkerEvent extends RemoteApplicationEvent { + @Serial private static final long serialVersionUID = 1L; private ResetCounterMarkerEvent() { super(new Object(), "resetcounter"); } } - -} +} \ No newline at end of file diff --git a/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/json/model/ResponseList.java b/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/json/model/ResponseList.java index ee5632450..ed22b962e 100644 --- a/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/json/model/ResponseList.java +++ b/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/json/model/ResponseList.java @@ -10,6 +10,7 @@ package org.eclipse.hawkbit.rest.json.model; import java.util.Collection; +import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.ListIterator; @@ -74,7 +75,7 @@ public class ResponseList extends RepresentationModel> implem @Override public boolean containsAll(final Collection c) { - return content.containsAll(c); + return new HashSet<>(content).containsAll(c); } @Override diff --git a/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/util/FileStreamingUtil.java b/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/util/FileStreamingUtil.java index a084aebbb..0b555679c 100644 --- a/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/util/FileStreamingUtil.java +++ b/hawkbit-rest-core/src/main/java/org/eclipse/hawkbit/rest/util/FileStreamingUtil.java @@ -208,8 +208,8 @@ public final class FileStreamingUtil { if (ifRangeTime != -1 && ifRangeTime + 1000 < lastModified) { ranges.add(full); } - } catch (final IllegalArgumentException ignore) { - log.info("Invalid if-range header field", ignore); + } catch (final IllegalArgumentException ignored) { + log.info("Invalid if-range header field", ignored); ranges.add(full); } } diff --git a/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/dmf/DmfApp.java b/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/dmf/DmfApp.java index 5954bbb4d..7c015188d 100644 --- a/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/dmf/DmfApp.java +++ b/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/dmf/DmfApp.java @@ -74,7 +74,7 @@ public class DmfApp { public void stopOne(@ShellOption("--id") final String controllerId) { dmfTenant.getController(controllerId).ifPresentOrElse( DmfController::stop, - () -> log.error("Controller with id " + controllerId + " not found!")); + () -> log.error("Controller with id {} not found!", controllerId)); } @ShellMethod(key = "start") diff --git a/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/multidevice/MultiDeviceApp.java b/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/multidevice/MultiDeviceApp.java index 6e1c10322..d1a958595 100644 --- a/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/multidevice/MultiDeviceApp.java +++ b/hawkbit-sdk/hawkbit-sdk-demo/src/main/java/org/eclipse/hawkbit/sdk/demo/multidevice/MultiDeviceApp.java @@ -108,7 +108,7 @@ public class MultiDeviceApp { public void stopOne(@ShellOption("--id") final String controllerId) { ddiTenant.getController(controllerId).ifPresentOrElse( DdiController::stop, - () -> log.error("Controller with id " + controllerId + " not found!")); + () -> log.error("Controller with id {} not found!", controllerId)); } diff --git a/hawkbit-sdk/hawkbit-sdk-dmf/src/main/java/org/eclipse/hawkbit/sdk/dmf/DmfController.java b/hawkbit-sdk/hawkbit-sdk-dmf/src/main/java/org/eclipse/hawkbit/sdk/dmf/DmfController.java index 977570ef5..d0385ce4a 100644 --- a/hawkbit-sdk/hawkbit-sdk-dmf/src/main/java/org/eclipse/hawkbit/sdk/dmf/DmfController.java +++ b/hawkbit-sdk/hawkbit-sdk-dmf/src/main/java/org/eclipse/hawkbit/sdk/dmf/DmfController.java @@ -82,7 +82,7 @@ public class DmfController { public void unregisterThing() { log.debug(LOG_PREFIX + "Removing Controller...", getTenantId(), getControllerId()); dmfSender.removeThing(getTenantId(), getControllerId()); - log.debug(LOG_PREFIX + "Done. Create thing sent.", getTenantId(), getControllerId()); + log.debug(LOG_PREFIX + "Done. Remove thing sent.", getTenantId(), getControllerId()); } public void stop() { diff --git a/hawkbit-security/hawkbit-security-controller/src/main/java/org/eclipse/hawkbit/security/controller/PreAuthTokenSourceTrustAuthenticationProvider.java b/hawkbit-security/hawkbit-security-controller/src/main/java/org/eclipse/hawkbit/security/controller/PreAuthTokenSourceTrustAuthenticationProvider.java index 851f6517f..e2ea049de 100644 --- a/hawkbit-security/hawkbit-security-controller/src/main/java/org/eclipse/hawkbit/security/controller/PreAuthTokenSourceTrustAuthenticationProvider.java +++ b/hawkbit-security/hawkbit-security-controller/src/main/java/org/eclipse/hawkbit/security/controller/PreAuthTokenSourceTrustAuthenticationProvider.java @@ -10,6 +10,7 @@ package org.eclipse.hawkbit.security.controller; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.List; @@ -69,9 +70,7 @@ public class PreAuthTokenSourceTrustAuthenticationProvider implements Authentica */ public PreAuthTokenSourceTrustAuthenticationProvider(final String... authorizedSourceIps) { this.authorizedSourceIps = new ArrayList<>(); - for (final String ip : authorizedSourceIps) { - this.authorizedSourceIps.add(ip); - } + this.authorizedSourceIps.addAll(Arrays.asList(authorizedSourceIps)); } @Override diff --git a/hawkbit-security/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java b/hawkbit-security/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java index 2c3e7ea66..01d144564 100644 --- a/hawkbit-security/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java +++ b/hawkbit-security/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java @@ -9,6 +9,7 @@ */ package org.eclipse.hawkbit.security; +import java.io.Serial; import java.util.Collection; import java.util.Collections; import java.util.List; @@ -200,6 +201,7 @@ public class SystemSecurityContext { */ public static final class SystemCodeAuthentication implements Authentication { + @Serial private static final long serialVersionUID = 1L; private static final List AUTHORITIES = Collections .singletonList(new SimpleGrantedAuthority(SpringEvalExpressions.SYSTEM_ROLE));