This is an automated email from the ASF dual-hosted git repository. rcordier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 9efb89854cac12839764614a12f395ab5c9f6f26 Author: Benoit Tellier <btell...@linagora.com> AuthorDate: Tue Dec 17 11:03:05 2019 +0700 JAMES-2813 BlobStoreVaultGarbageCollectionTask::AdditionalInformation should be immutable --- .../vault/blob/BlobStoreVaultGarbageCollectionTask.java | 17 +++++------------ ...ltGarbageCollectionTaskAdditionalInformationDTO.java | 2 +- ...toreVaultGarbageCollectionTaskSerializationTest.java | 5 +++-- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTask.java b/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTask.java index 61b4e5d..01690dc 100644 --- a/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTask.java +++ b/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTask.java @@ -35,18 +35,19 @@ import org.apache.james.task.TaskExecutionDetails; import org.apache.james.task.TaskType; import com.github.steveash.guavate.Guavate; +import com.google.common.collect.ImmutableSet; + import reactor.core.publisher.Flux; import reactor.core.scheduler.Schedulers; public class BlobStoreVaultGarbageCollectionTask implements Task { public static class AdditionalInformation implements TaskExecutionDetails.AdditionalInformation { - private final ZonedDateTime beginningOfRetentionPeriod; - private final Collection<BucketName> deletedBuckets; + private final ImmutableSet<BucketName> deletedBuckets; private final Instant timestamp; - AdditionalInformation(ZonedDateTime beginningOfRetentionPeriod, Collection<BucketName> deletedBuckets, Instant timestamp) { + AdditionalInformation(ZonedDateTime beginningOfRetentionPeriod, ImmutableSet<BucketName> deletedBuckets, Instant timestamp) { this.beginningOfRetentionPeriod = beginningOfRetentionPeriod; this.deletedBuckets = deletedBuckets; this.timestamp = timestamp; @@ -111,14 +112,6 @@ public class BlobStoreVaultGarbageCollectionTask implements Task { @Override public Optional<TaskExecutionDetails.AdditionalInformation> details() { - return Optional.of(new AdditionalInformation(beginningOfRetentionPeriod, deletedBuckets, Clock.systemUTC().instant())); - } - - ZonedDateTime getBeginningOfRetentionPeriod() { - return beginningOfRetentionPeriod; - } - - Flux<BucketName> getRetentionOperation() { - return retentionOperation; + return Optional.of(new AdditionalInformation(beginningOfRetentionPeriod, ImmutableSet.copyOf(deletedBuckets), Clock.systemUTC().instant())); } } diff --git a/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO.java b/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO.java index fff7526..c757f38 100644 --- a/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO.java +++ b/mailbox/plugin/deleted-messages-vault/src/main/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO.java @@ -73,7 +73,7 @@ public class BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO impleme deletedBuckets .stream() .map(BucketName::of) - .collect(Guavate.toImmutableList()), + .collect(Guavate.toImmutableSet()), timestamp); } diff --git a/mailbox/plugin/deleted-messages-vault/src/test/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskSerializationTest.java b/mailbox/plugin/deleted-messages-vault/src/test/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskSerializationTest.java index ab2fff9..2d2cd34 100644 --- a/mailbox/plugin/deleted-messages-vault/src/test/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskSerializationTest.java +++ b/mailbox/plugin/deleted-messages-vault/src/test/java/org/apache/james/vault/blob/BlobStoreVaultGarbageCollectionTaskSerializationTest.java @@ -37,7 +37,8 @@ import org.junit.jupiter.api.Test; import org.mockito.Mockito; import com.fasterxml.jackson.core.JsonProcessingException; -import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableSet; + import reactor.core.publisher.Flux; class BlobStoreVaultGarbageCollectionTaskSerializationTest { @@ -46,7 +47,7 @@ class BlobStoreVaultGarbageCollectionTaskSerializationTest { private static final JsonTaskSerializer TASK_SERIALIZER = JsonTaskSerializer.of(BlobStoreVaultGarbageCollectionTaskDTO.module(TASK_FACTORY)); private static final ZonedDateTime BEGINNING_OF_RETENTION_PERIOD = ZonedDateTime.parse("2019-09-03T15:26:13.356+02:00[Europe/Paris]"); - private static final ImmutableList<BucketName> BUCKET_IDS = ImmutableList.of(BucketName.of("1"), BucketName.of("2"), BucketName.of("3")); + private static final ImmutableSet<BucketName> BUCKET_IDS = ImmutableSet.of(BucketName.of("1"), BucketName.of("2"), BucketName.of("3")); private static final Flux<BucketName> RETENTION_OPERATION = Flux.fromIterable(BUCKET_IDS); private static final Instant TIMESTAMP = Instant.parse("2018-11-13T12:00:55Z"); private static final BlobStoreVaultGarbageCollectionTask.AdditionalInformation DETAILS = new BlobStoreVaultGarbageCollectionTask.AdditionalInformation(BEGINNING_OF_RETENTION_PERIOD, BUCKET_IDS, TIMESTAMP); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org