Skip to content

Commit

Permalink
Sonar Fixes (#2229)
Browse files Browse the repository at this point in the history
Signed-off-by: Avgustin Marinov <[email protected]>
  • Loading branch information
avgustinmm authored Jan 24, 2025
1 parent 99e545b commit e6c8215
Show file tree
Hide file tree
Showing 10 changed files with 128 additions and 105 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

import static org.assertj.core.api.Assertions.assertThatExceptionOfType;

import java.util.ArrayList;
import java.util.List;

import io.qameta.allure.Description;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
*/
@Slf4j
@RestController
@SuppressWarnings("java:S5738") // will be removed at some point
public class DeprecatedMgmtResource implements DeprecatedMgmtRestApi {

// logger that logs usage of deprecated API
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
@Deprecated(forRemoval = true, since = "0.6.0")
@Tag(name = "Deprecated operations", description = "Deprecated REST operations.",
extensions = @Extension(name = OpenApiConfiguration.X_HAWKBIT, properties = @ExtensionProperty(name = "order", value = "2147483647")))
@SuppressWarnings("java:S1133") // will be removed at some point
public interface DeprecatedMgmtRestApi {

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
@Getter
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@SuppressWarnings("java:S1133") // will be removed at some point
public class DistributionSetTagAssignmentResult extends AbstractAssignmentResult<DistributionSet> {

private final DistributionSetTag distributionSetTag;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
@Getter
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@SuppressWarnings("java:S1133") // will be removed at some point
public class TargetTagAssignmentResult extends AbstractAssignmentResult<Target> {

private final TargetTag targetTag;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
package org.eclipse.hawkbit.repository.builder;

import java.util.Collection;
import java.util.Optional;

import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@

import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.eclipse.hawkbit.repository.jpa.model.AbstractJpaBaseEntity_;
import org.eclipse.hawkbit.repository.jpa.model.AbstractJpaNamedEntity_;
import org.eclipse.hawkbit.repository.jpa.model.AbstractJpaNamedVersionedEntity_;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSet;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSetTag;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSetTag_;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSetType_;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSet_;
import org.eclipse.hawkbit.repository.model.DistributionSet;
import org.springframework.data.jpa.domain.Specification;
Expand Down Expand Up @@ -84,7 +85,7 @@ public static Specification<JpaDistributionSet> isValid(final Boolean isValid) {
*/
public static Specification<JpaDistributionSet> byIdFetch(final Long distid) {
return (dsRoot, query, cb) -> {
final Predicate predicate = cb.equal(dsRoot.get(JpaDistributionSet_.id), distid);
final Predicate predicate = cb.equal(dsRoot.get(AbstractJpaBaseEntity_.id), distid);
dsRoot.fetch(JpaDistributionSet_.modules, JoinType.LEFT);
dsRoot.fetch(JpaDistributionSet_.type, JoinType.LEFT);
query.distinct(true);
Expand All @@ -101,7 +102,7 @@ public static Specification<JpaDistributionSet> byIdFetch(final Long distid) {
*/
public static Specification<JpaDistributionSet> byIdsFetch(final Collection<Long> distids) {
return (dsRoot, query, cb) -> {
final Predicate predicate = dsRoot.get(JpaDistributionSet_.id).in(distids);
final Predicate predicate = dsRoot.get(AbstractJpaBaseEntity_.id).in(distids);
dsRoot.fetch(JpaDistributionSet_.modules, JoinType.LEFT);
dsRoot.fetch(JpaDistributionSet_.tags, JoinType.LEFT);
dsRoot.fetch(JpaDistributionSet_.type, JoinType.LEFT);
Expand All @@ -119,8 +120,8 @@ public static Specification<JpaDistributionSet> byIdsFetch(final Collection<Long
*/
public static Specification<JpaDistributionSet> likeNameAndVersion(final String name, final String version) {
return (dsRoot, query, cb) -> cb.and(
cb.like(cb.lower(dsRoot.get(JpaDistributionSet_.name)), name.toLowerCase()),
cb.like(cb.lower(dsRoot.get(JpaDistributionSet_.version)), version.toLowerCase()));
cb.like(cb.lower(dsRoot.get(AbstractJpaNamedEntity_.name)), name.toLowerCase()),
cb.like(cb.lower(dsRoot.get(AbstractJpaNamedVersionedEntity_.version)), version.toLowerCase()));
}

/**
Expand All @@ -147,8 +148,8 @@ public static Specification<JpaDistributionSet> hasTags(final Collection<String>
*/
public static Specification<JpaDistributionSet> equalsNameAndVersionIgnoreCase(final String name, final String version) {
return (dsRoot, query, cb) -> cb.and(
cb.equal(cb.lower(dsRoot.get(JpaDistributionSet_.name)), name.toLowerCase()),
cb.equal(cb.lower(dsRoot.get(JpaDistributionSet_.version)), version.toLowerCase()));
cb.equal(cb.lower(dsRoot.get(AbstractJpaNamedEntity_.name)), name.toLowerCase()),
cb.equal(cb.lower(dsRoot.get(AbstractJpaNamedVersionedEntity_.version)), version.toLowerCase()));
}

/**
Expand All @@ -158,7 +159,7 @@ public static Specification<JpaDistributionSet> equalsNameAndVersionIgnoreCase(f
* @return the {@link DistributionSet} {@link Specification}
*/
public static Specification<JpaDistributionSet> byType(final Long typeId) {
return (dsRoot, query, cb) -> cb.equal(dsRoot.get(JpaDistributionSet_.type).get(JpaDistributionSetType_.id), typeId);
return (dsRoot, query, cb) -> cb.equal(dsRoot.get(JpaDistributionSet_.type).get(AbstractJpaBaseEntity_.id), typeId);
}

/**
Expand All @@ -168,7 +169,7 @@ public static Specification<JpaDistributionSet> byType(final Long typeId) {
* @return the {@link DistributionSet} {@link Specification}
*/
public static Specification<JpaDistributionSet> hasType(final Collection<Long> typeIds) {
return (dsRoot, query, cb) -> dsRoot.get(JpaDistributionSet_.type).get(JpaDistributionSetType_.id).in(typeIds);
return (dsRoot, query, cb) -> dsRoot.get(JpaDistributionSet_.type).get(AbstractJpaBaseEntity_.id).in(typeIds);
}

/**
Expand All @@ -180,15 +181,15 @@ public static Specification<JpaDistributionSet> hasType(final Collection<Long> t
public static Specification<JpaDistributionSet> hasTag(final Long tagId) {
return (dsRoot, query, cb) -> {
final SetJoin<JpaDistributionSet, JpaDistributionSetTag> tags = dsRoot.join(JpaDistributionSet_.tags, JoinType.LEFT);
return cb.equal(tags.get(JpaDistributionSetTag_.id), tagId);
return cb.equal(tags.get(AbstractJpaBaseEntity_.id), tagId);
};
}

private static Predicate getHasTagsPredicate(
final Root<JpaDistributionSet> dsRoot, final CriteriaBuilder cb,
final Boolean selectDSWithNoTag, final Collection<String> tagNames) {
final SetJoin<JpaDistributionSet, JpaDistributionSetTag> tags = dsRoot.join(JpaDistributionSet_.tags, JoinType.LEFT);
final Path<String> exp = tags.get(JpaDistributionSetTag_.name);
final Path<String> exp = tags.get(AbstractJpaNamedEntity_.name);

final List<Predicate> hasTagsPredicates = new ArrayList<>();
if (isNoTagActive(selectDSWithNoTag)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,21 +11,19 @@

import jakarta.validation.constraints.NotEmpty;

import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.eclipse.hawkbit.repository.jpa.model.AbstractJpaNamedEntity_;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSetTag;
import org.eclipse.hawkbit.repository.jpa.model.JpaDistributionSetTag_;
import org.springframework.data.jpa.domain.Specification;

/**
* Utility class for {@link JpaDistributionSetTag}s {@link Specification}s. The class provides
* Spring Data JPQL Specifications.
* Utility class for {@link JpaDistributionSetTag}s {@link Specification}s. The class provides Spring Data JPQL Specifications.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class DistributionSetTagSpecifications {

private DistributionSetTagSpecifications() {
// utility class
}

public static Specification<JpaDistributionSetTag> byName(@NotEmpty final String name) {
return (targetRoot, query, cb) -> cb.equal(targetRoot.get(JpaDistributionSetTag_.name), name);
return (targetRoot, query, cb) -> cb.equal(targetRoot.get(AbstractJpaNamedEntity_.name), name);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -147,8 +147,9 @@ void assignAndUnassignDistributionSetTags() {

// toggle A only -> A is now assigned
List<DistributionSet> result = assignTag(groupA, tag);
assertThat(result).size().isEqualTo(20);
assertThat(result).containsAll(distributionSetManagement.get(groupA.stream().map(DistributionSet::getId).toList()));
assertThat(result)
.hasSize(20)
.containsAll(distributionSetManagement.get(groupA.stream().map(DistributionSet::getId).toList()));
assertThat(
distributionSetManagement.findByTag(tag.getId(), Pageable.unpaged()).getContent().stream()
.map(DistributionSet::getId)
Expand All @@ -159,18 +160,19 @@ void assignAndUnassignDistributionSetTags() {
final Collection<DistributionSet> groupAB = concat(groupA, groupB);
// toggle A+B -> A is still assigned and B is assigned as well
result = assignTag(groupAB, tag);
assertThat(result).size().isEqualTo(40);
assertThat(result).containsAll(distributionSetManagement
.get(groupAB.stream().map(DistributionSet::getId).toList()));
assertThat(result)
.hasSize(40)
.containsAll(distributionSetManagement.get(groupAB.stream().map(DistributionSet::getId).toList()));
assertThat(
distributionSetManagement.findByTag(tag.getId(), Pageable.unpaged()).getContent().stream().map(DistributionSet::getId).sorted()
.toList())
distributionSetManagement.findByTag(
tag.getId(), Pageable.unpaged()).getContent().stream().map(DistributionSet::getId).sorted().toList())
.isEqualTo(groupAB.stream().map(DistributionSet::getId).sorted().toList());

// toggle A+B -> both unassigned
result = unassignTag(concat(groupA, groupB), tag);
assertThat(result).size().isEqualTo(40);
assertThat(result).containsAll(distributionSetManagement.get(concat(groupB, groupA).stream().map(DistributionSet::getId).toList()));
assertThat(result)
.hasSize(40)
.containsAll(distributionSetManagement.get(concat(groupB, groupA).stream().map(DistributionSet::getId).toList()));
assertThat(distributionSetManagement.findByTag(tag.getId(), Pageable.unpaged()).getContent()).isEmpty();
}

Expand Down
Loading

0 comments on commit e6c8215

Please sign in to comment.