From 8a390d4dbb13db5512b2a45f95b7a23de22ccf1a Mon Sep 17 00:00:00 2001 From: Suresh Srinivas Date: Tue, 4 Jan 2022 10:04:24 -0800 Subject: [PATCH] Fixes #2031 - Fix some sonarcloud flagged issues (#2032) --- .../catalog/events/EventPubSub.java | 10 ++++---- .../ingestion/AirflowConfiguration.java | 3 +-- .../catalog/ingestion/AirflowRESTClient.java | 2 +- .../catalog/jdbi3/EntityRepository.java | 10 ++++---- .../catalog/jdbi3/LocationRepository.java | 6 +++-- .../catalog/jdbi3/TableRepository.java | 2 +- .../catalog/jdbi3/TagRepository.java | 2 +- .../catalog/jdbi3/WebhookRepository.java | 13 ++++------- .../catalog/resources/CollectionRegistry.java | 14 ++++++----- .../resources/events/WebhookResource.java | 4 ++-- .../operations/IngestionResource.java | 2 +- .../messaging/MessagingServiceResource.java | 3 +-- .../catalog/resources/tags/TagResource.java | 2 +- .../catalog/resources/teams/TeamResource.java | 2 +- .../resources/topics/TopicResource.java | 4 ---- .../catalog/security/DefaultAuthorizer.java | 2 +- .../policyevaluator/CommonFields.java | 12 +++++----- .../openmetadata/catalog/util/JsonUtils.java | 19 +++++++-------- .../openmetadata/common/utils/CommonUtil.java | 23 +++++++++++-------- 19 files changed, 67 insertions(+), 68 deletions(-) diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/events/EventPubSub.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/events/EventPubSub.java index 39ac9f0512f..455acac1ca1 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/events/EventPubSub.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/events/EventPubSub.java @@ -33,28 +33,28 @@ public class EventPubSub { private static Disruptor disruptor; private static ExecutorService executor; private static RingBuffer ringBuffer; - private static boolean STARTED = false; + private static boolean started = false; public static void start() { - if (!STARTED) { + if (!started) { disruptor = new Disruptor<>(ChangeEventHolder::new, 1024, DaemonThreadFactory.INSTANCE); disruptor.setDefaultExceptionHandler(new DefaultExceptionHandler()); executor = Executors.newCachedThreadPool(DaemonThreadFactory.INSTANCE); ringBuffer = disruptor.start(); LOG.info("Disruptor started"); - STARTED = true; + started = true; } } public static void shutdown() throws InterruptedException { - if (STARTED) { + if (started) { disruptor.shutdown(); disruptor.halt(); executor.shutdownNow(); executor.awaitTermination(10, TimeUnit.SECONDS); disruptor = null; ringBuffer = null; - STARTED = false; + started = false; LOG.info("Disruptor stopped"); } } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowConfiguration.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowConfiguration.java index 249daa8892f..7aa381a49f6 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowConfiguration.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowConfiguration.java @@ -70,8 +70,7 @@ public class AirflowConfiguration { } public String getSecretKey() { - String secretKey = ""; - return secretKey; + return ""; } @Override diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowRESTClient.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowRESTClient.java index 6294fab70d5..d024f11aa97 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowRESTClient.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/ingestion/AirflowRESTClient.java @@ -36,7 +36,7 @@ public class AirflowRESTClient { private final String username; private final String password; private final HttpClient client; - private final String authHeader = "Bearer %s"; + private static final String authHeader = "Bearer %s"; public AirflowRESTClient(CatalogApplicationConfig config) { AirflowConfiguration airflowConfig = config.getAirflowConfiguration(); diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/EntityRepository.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/EntityRepository.java index 8983f7fb98a..43e3cb71d62 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/EntityRepository.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/EntityRepository.java @@ -221,7 +221,8 @@ public abstract class EntityRepository { } int total = dao.listCount(fqnPrefix); - String beforeCursor, afterCursor = null; + String beforeCursor; + String afterCursor = null; beforeCursor = after == null ? null : getFullyQualifiedName(entities.get(0)); if (entities.size() > limitParam) { // If extra result exists, then next page exists - return after cursor entities.remove(limitParam); @@ -243,7 +244,8 @@ public abstract class EntityRepository { } int total = dao.listCount(fqnPrefix); - String beforeCursor = null, afterCursor; + String beforeCursor = null; + String afterCursor; if (entities.size() > limitParam) { // If extra result exists, then previous page exists - return before cursor entities.remove(0); beforeCursor = getFullyQualifiedName(entities.get(0)); @@ -341,7 +343,7 @@ public abstract class EntityRepository { // Validate follower User user = daoCollection.userDAO().findEntityById(userId); - if (user.getDeleted()) { + if (Boolean.TRUE.equals(user.getDeleted())) { throw new IllegalArgumentException(CatalogExceptionMessage.deactivatedUser(userId)); } @@ -376,7 +378,7 @@ public abstract class EntityRepository { List contains = daoCollection.relationshipDAO().findTo(id.toString(), entityName, Relationship.CONTAINS.ordinal()); - if (contains.size() > 0) { + if (!contains.isEmpty()) { if (!recursive) { throw new IllegalArgumentException(entityName + " is not empty"); } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/LocationRepository.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/LocationRepository.java index d6c47e43691..7e684f8729a 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/LocationRepository.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/LocationRepository.java @@ -102,7 +102,8 @@ public class LocationRepository extends EntityRepository { .listPrefixesCount( daoCollection.locationDAO().getTableName(), daoCollection.locationDAO().getNameColumn(), fqn, service); - String beforeCursor = null, afterCursor; + String beforeCursor = null; + String afterCursor; if (entities.size() > limitParam) { // If extra result exists, then previous page exists - return before cursor entities.remove(0); beforeCursor = getFullyQualifiedName(entities.get(0)); @@ -137,7 +138,8 @@ public class LocationRepository extends EntityRepository { .listPrefixesCount( daoCollection.locationDAO().getTableName(), daoCollection.locationDAO().getNameColumn(), fqn, service); - String beforeCursor, afterCursor = null; + String beforeCursor; + String afterCursor = null; beforeCursor = after == null ? null : getFullyQualifiedName(entities.get(0)); if (entities.size() > limitParam) { // If extra result exists, then next page exists - return after cursor entities.remove(limitParam); diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TableRepository.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TableRepository.java index 118faf31ccb..99d92df897f 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TableRepository.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TableRepository.java @@ -620,7 +620,7 @@ public class TableRepository extends EntityRepository { .listFromByPrefix( table.getFullyQualifiedName(), "table.columns.column", "table.columns.column", JOINED_WITH.ordinal())); - if (list.size() == 0) { // No join information found. Return empty list + if (list.isEmpty()) { // No join information found. Return empty list return tableJoins; } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TagRepository.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TagRepository.java index 7b00519ae3e..efe16ce90d7 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TagRepository.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/TagRepository.java @@ -235,7 +235,7 @@ public class TagRepository { Tag childTag = setFields(JsonUtils.readValue(json, Tag.class), fields); tagList.add(populateChildrenTags(childTag, fields)); } - return tag.withChildren(tagList.size() > 0 ? tagList : null); + return tag.withChildren(!tagList.isEmpty() ? tagList : null); } private TagCategory setFields(TagCategory category, Fields fields) { diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/WebhookRepository.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/WebhookRepository.java index f2a0088638a..a5184943662 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/WebhookRepository.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/jdbi3/WebhookRepository.java @@ -114,7 +114,7 @@ public class WebhookRepository extends EntityRepository { } public void addWebhookPublisher(Webhook webhook) { - if (!webhook.getEnabled()) { // Only add webhook that is enabled for publishing events + if (Boolean.FALSE.equals(webhook.getEnabled())) { // Only add webhook that is enabled for publishing events webhook.setStatus(Status.NOT_STARTED); return; } @@ -126,7 +126,7 @@ public class WebhookRepository extends EntityRepository { } public void updateWebhookPublisher(Webhook webhook) throws InterruptedException { - if (webhook.getEnabled()) { // Only add webhook that is enabled for publishing + if (Boolean.TRUE.equals(webhook.getEnabled())) { // Only add webhook that is enabled for publishing // If there was a previous webhook either in disabled state or stopped due // to errors, update it and restart publishing WebhookPublisher previousPublisher = getPublisher(webhook.getId()); @@ -396,12 +396,7 @@ public class WebhookRepository extends EntityRepository { private void initFilter() { filter.clear(); - webhook - .getEventFilters() - .forEach( - f -> { // Set up filters - filter.put(f.getEventType(), f.getEntities()); - }); + webhook.getEventFilters().forEach(f -> filter.put(f.getEventType(), f.getEntities())); } private void setErrorStatus(Long attemptTime, Integer statusCode, String reason) throws IOException { @@ -491,7 +486,7 @@ public class WebhookRepository extends EntityRepository { updatedWebhook .withStatus(publisher.getWebhook().getStatus()) .withFailureDetails(publisher.getWebhook().getFailureDetails()); - if (updatedWebhook.getEnabled() == false) { + if (Boolean.FALSE.equals(updatedWebhook.getEnabled())) { updatedWebhook.setStatus(Status.NOT_STARTED); } } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/CollectionRegistry.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/CollectionRegistry.java index aac16eaa216..aeea161b2c2 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/CollectionRegistry.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/CollectionRegistry.java @@ -47,7 +47,7 @@ import org.slf4j.LoggerFactory; */ public final class CollectionRegistry { private static final Logger LOG = LoggerFactory.getLogger(CollectionRegistry.class); - private static CollectionRegistry INSTANCE = null; + private static CollectionRegistry instance = null; /** Map of collection endpoint path to collection details */ private final Map collectionMap = new HashMap<>(); @@ -58,11 +58,11 @@ public final class CollectionRegistry { private CollectionRegistry() {} public static CollectionRegistry getInstance() { - if (INSTANCE == null) { - INSTANCE = new CollectionRegistry(); - INSTANCE.initialize(); + if (instance == null) { + instance = new CollectionRegistry(); + instance.initialize(); } - return INSTANCE; + return instance; } private void initialize() { @@ -144,7 +144,9 @@ public final class CollectionRegistry { /** Get collection details based on annotations in Resource classes */ private static CollectionDetails getCollection(Class cl) { - String href, doc, name; + String href; + String doc; + String name; href = null; doc = null; name = null; diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/events/WebhookResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/events/WebhookResource.java index 562f9b4f64b..7af5934abfa 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/events/WebhookResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/events/WebhookResource.java @@ -234,7 +234,7 @@ public class WebhookResource { throws IOException { SecurityUtil.checkAdminOrBotRole(authorizer, securityContext); Webhook webhook = getWebhook(securityContext, create); - webhook.setStatus(webhook.getEnabled() ? Status.STARTED : Status.NOT_STARTED); + webhook.setStatus(Boolean.TRUE.equals(webhook.getEnabled()) ? Status.STARTED : Status.NOT_STARTED); webhook = dao.create(uriInfo, webhook); dao.addWebhookPublisher(webhook); return Response.created(webhook.getHref()).entity(webhook).build(); @@ -259,7 +259,7 @@ public class WebhookResource { // SecurityUtil.checkAdminOrBotRole(authorizer, securityContext); // Table table = getTable(securityContext, create); Webhook webhook = getWebhook(securityContext, create); - webhook.setStatus(webhook.getEnabled() ? Status.STARTED : Status.NOT_STARTED); + webhook.setStatus(Boolean.TRUE.equals(webhook.getEnabled()) ? Status.STARTED : Status.NOT_STARTED); PutResponse putResponse = dao.createOrUpdate(uriInfo, webhook); dao.updateWebhookPublisher(webhook); return putResponse.toResponse(); diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/operations/IngestionResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/operations/IngestionResource.java index 107816ac491..2ec750fc568 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/operations/IngestionResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/operations/IngestionResource.java @@ -431,7 +431,7 @@ public class IngestionResource { } private void deploy(Ingestion ingestion) { - if (ingestion.getForceDeploy()) { + if (Boolean.TRUE.equals(ingestion.getForceDeploy())) { airflowRESTClient.deploy(ingestion, config); } } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/services/messaging/MessagingServiceResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/services/messaging/MessagingServiceResource.java index f4b4be388ea..e092ad125b4 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/services/messaging/MessagingServiceResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/services/messaging/MessagingServiceResource.java @@ -140,8 +140,7 @@ public class MessagingServiceResource { public MessagingService get( @Context UriInfo uriInfo, @Context SecurityContext securityContext, @PathParam("id") String id) throws IOException, ParseException { - MessagingService service = dao.get(uriInfo, id, null); - return service; + return dao.get(uriInfo, id, null); } @GET diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/tags/TagResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/tags/TagResource.java index 19ad7a50edc..d3131d40abb 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/tags/TagResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/tags/TagResource.java @@ -122,7 +122,7 @@ public class TagResource { } static final String FIELDS = "usageCount"; - public static final List FIELD_LIST = Arrays.asList(FIELDS.replaceAll(" ", "").split(",")); + protected static final List FIELD_LIST = Arrays.asList(FIELDS.replaceAll(" ", "").split(",")); @GET @Operation( diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/teams/TeamResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/teams/TeamResource.java index 8fecf5e37bf..3a35edf6a42 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/teams/TeamResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/teams/TeamResource.java @@ -99,7 +99,7 @@ public class TeamResource { } } - public static final String FIELDS = "profile,users,owns"; + protected static final String FIELDS = "profile,users,owns"; public static final List FIELD_LIST = Arrays.asList(FIELDS.replaceAll(" ", "").split(",")); @GET diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/topics/TopicResource.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/topics/TopicResource.java index 58d3d58f720..6e05d6caa79 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/topics/TopicResource.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/topics/TopicResource.java @@ -282,9 +282,7 @@ public class TopicResource { public Response create(@Context UriInfo uriInfo, @Context SecurityContext securityContext, @Valid CreateTopic create) throws IOException { SecurityUtil.checkAdminOrBotRole(authorizer, securityContext); - System.out.println("XXX topic retention time" + create.getRetentionTime()); Topic topic = getTopic(securityContext, create); - System.out.println("XXX topic retention time" + topic.getRetentionTime()); topic = addHref(uriInfo, dao.create(uriInfo, topic)); return Response.created(topic.getHref()).entity(topic).build(); @@ -336,9 +334,7 @@ public class TopicResource { @Context UriInfo uriInfo, @Context SecurityContext securityContext, @Valid CreateTopic create) throws IOException, ParseException { - System.out.println("XXX topic retention time" + create.getRetentionTime()); Topic topic = getTopic(securityContext, create); - System.out.println("XXX topic retention time" + topic.getRetentionTime()); PutResponse response = dao.createOrUpdate(uriInfo, topic); addHref(uriInfo, response.getEntity()); return response.toResponse(); diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/DefaultAuthorizer.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/DefaultAuthorizer.java index 8f6d896c95f..7430b8b3169 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/DefaultAuthorizer.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/DefaultAuthorizer.java @@ -42,7 +42,7 @@ public class DefaultAuthorizer implements Authorizer { private String principalDomain; private UserRepository userRepository; - private final String fieldsParam = "teams"; + private static final String fieldsParam = "teams"; @Override public void init(AuthorizerConfiguration config, Jdbi dbi) { diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/policyevaluator/CommonFields.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/policyevaluator/CommonFields.java index d3fb0493e6e..76c9a3ac2d3 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/policyevaluator/CommonFields.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/security/policyevaluator/CommonFields.java @@ -5,12 +5,12 @@ package org.openmetadata.catalog.security.policyevaluator; * PolicyEvaluator} */ class CommonFields { - static String ALLOW = "allow"; - static String ENTITY_TAGS = "entityTags"; - static String ENTITY_TYPE = "entityType"; - static String OPERATION = "operation"; - static String USER_ROLES = "userRoles"; + static final String ALLOW = "allow"; + static final String ENTITY_TAGS = "entityTags"; + static final String ENTITY_TYPE = "entityType"; + static final String OPERATION = "operation"; + static final String USER_ROLES = "userRoles"; // By default, if no rule matches, do not grant access. - static boolean DEFAULT_ACCESS = false; + static final boolean DEFAULT_ACCESS = false; } diff --git a/catalog-rest-service/src/main/java/org/openmetadata/catalog/util/JsonUtils.java b/catalog-rest-service/src/main/java/org/openmetadata/catalog/util/JsonUtils.java index 61c44cbad3f..f5a98288e20 100644 --- a/catalog-rest-service/src/main/java/org/openmetadata/catalog/util/JsonUtils.java +++ b/catalog-rest-service/src/main/java/org/openmetadata/catalog/util/JsonUtils.java @@ -30,6 +30,7 @@ import javax.json.JsonArray; import javax.json.JsonArrayBuilder; import javax.json.JsonObject; import javax.json.JsonPatch; +import javax.json.JsonReader; import javax.json.JsonStructure; import javax.json.JsonValue; import javax.ws.rs.core.MediaType; @@ -153,18 +154,18 @@ public final class JsonUtils { // Apply sortedPatch JsonValue patchedJson = sortedPatch.apply(targetJson); - return JsonUtils.convertValue(patchedJson, clz); - } - - public static T convertValue(JsonValue patched, Class clz) { - return OBJECT_MAPPER.convertValue(patched, clz); + return OBJECT_MAPPER.convertValue(patchedJson, clz); } public static JsonPatch getJsonPatch(String v1, String v2) { - System.out.println(v1); - System.out.println(v2); - JsonValue source = Json.createReader(new StringReader(v1)).readValue(); - JsonValue dest = Json.createReader(new StringReader(v2)).readValue(); + JsonValue source = readJson(v1); + JsonValue dest = readJson(v2); return Json.createDiff(source.asJsonObject(), dest.asJsonObject()); } + + public static JsonValue readJson(String s) { + try (JsonReader reader = Json.createReader(new StringReader(s))) { + return reader.readValue(); + } + } } diff --git a/common/src/main/java/org/openmetadata/common/utils/CommonUtil.java b/common/src/main/java/org/openmetadata/common/utils/CommonUtil.java index a4905a7d03f..37be5fc4b74 100644 --- a/common/src/main/java/org/openmetadata/common/utils/CommonUtil.java +++ b/common/src/main/java/org/openmetadata/common/utils/CommonUtil.java @@ -28,6 +28,7 @@ import java.util.Enumeration; import java.util.List; import java.util.regex.Pattern; import java.util.stream.Collectors; +import java.util.stream.Stream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; import org.slf4j.Logger; @@ -71,16 +72,18 @@ public final class CommonUtil { public static Collection getResourcesFromDirectory(File file, Pattern pattern) throws IOException { final Path root = Path.of(file.getPath()); - return Files.walk(Paths.get(file.getPath())) - .filter(Files::isRegularFile) - .filter(path -> pattern.matcher(path.toString()).matches()) - .map( - path -> { - String relativePath = root.relativize(path).toString(); - LOG.info("Adding directory file {}", relativePath); - return relativePath; - }) - .collect(Collectors.toSet()); + try (Stream paths = Files.walk(Paths.get(file.getPath()))) { + return paths + .filter(Files::isRegularFile) + .filter(path -> pattern.matcher(path.toString()).matches()) + .map( + path -> { + String relativePath = root.relativize(path).toString(); + LOG.info("Adding directory file {}", relativePath); + return relativePath; + }) + .collect(Collectors.toSet()); + } } /** Get date after {@code days} from the given date or before i{@code days} when it is negative */