This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 835a7ea127d97fbf6f464a3f4ba8f8ace0134ec5 Author: Rémi Kowalski <rkowal...@linagora.com> AuthorDate: Tue Sep 3 11:22:56 2019 +0200 JAMES-2813 extract DeletedMessagesVaultDeleteTaskDTO --- .../routes/DeletedMessagesVaultDeleteTask.java | 51 +++-------------- .../routes/DeletedMessagesVaultDeleteTaskDTO.java | 65 ++++++++++++++++++++++ ...edMessagesVaultDeleteTaskSerializationTest.java | 2 +- 3 files changed, 74 insertions(+), 44 deletions(-) diff --git a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTask.java b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTask.java index 4584a3e..c522107 100644 --- a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTask.java +++ b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTask.java @@ -20,65 +20,22 @@ package org.apache.james.webadmin.vault.routes; import java.util.Optional; -import java.util.function.Function; import javax.inject.Inject; import org.apache.james.core.User; -import org.apache.james.json.DTOModule; import org.apache.james.mailbox.model.MessageId; -import org.apache.james.server.task.json.dto.TaskDTO; -import org.apache.james.server.task.json.dto.TaskDTOModule; import org.apache.james.task.Task; import org.apache.james.task.TaskExecutionDetails; import org.apache.james.task.TaskType; import org.apache.james.vault.DeletedMessageVault; -import com.fasterxml.jackson.annotation.JsonProperty; import reactor.core.publisher.Mono; public class DeletedMessagesVaultDeleteTask implements Task { static final TaskType TYPE = TaskType.of("deletedMessages/delete"); - public static final Function<DeletedMessagesVaultDeleteTask.Factory, TaskDTOModule<DeletedMessagesVaultDeleteTask, DeletedMessagesVaultDeleteTaskDTO>> MODULE = (factory) -> - DTOModule - .forDomainObject(DeletedMessagesVaultDeleteTask.class) - .convertToDTO(DeletedMessagesVaultDeleteTask.DeletedMessagesVaultDeleteTaskDTO.class) - .toDomainObjectConverter(factory::create) - .toDTOConverter(DeletedMessagesVaultDeleteTask.DeletedMessagesVaultDeleteTaskDTO::of) - .typeName(TYPE.asString()) - .withFactory(TaskDTOModule::new); - - public static class DeletedMessagesVaultDeleteTaskDTO implements TaskDTO { - - private final String type; - private final String userName; - private final String messageId; - - public DeletedMessagesVaultDeleteTaskDTO(@JsonProperty("type") String type, @JsonProperty("userName") String userName, @JsonProperty("messageId") String messageId) { - this.type = type; - this.userName = userName; - this.messageId = messageId; - } - - public String getUserName() { - return userName; - } - - public String getMessageId() { - return messageId; - } - - public String getType() { - return type; - } - - public static DeletedMessagesVaultDeleteTaskDTO of(DeletedMessagesVaultDeleteTask task, String type) { - return new DeletedMessagesVaultDeleteTaskDTO(type, task.user.asString(), task.messageId.serialize()); - } - } - public static class Factory { private final DeletedMessageVault deletedMessageVault; @@ -140,6 +97,14 @@ public class DeletedMessagesVaultDeleteTask implements Task { return TYPE; } + MessageId getMessageId() { + return messageId; + } + + User getUser() { + return user; + } + @Override public Optional<TaskExecutionDetails.AdditionalInformation> details() { return Optional.of(new AdditionalInformation(user, messageId)); diff --git a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskDTO.java b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskDTO.java new file mode 100644 index 0000000..2c05a87 --- /dev/null +++ b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/main/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskDTO.java @@ -0,0 +1,65 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. The ASF licenses this file * + * to you under the Apache License, Version 2.0 (the * + * "License"); you may not use this file except in compliance * + * with the License. You may obtain a copy of the License at * + * * + * http://www.apache.org/licenses/LICENSE-2.0 * + * * + * Unless required by applicable law or agreed to in writing, * + * software distributed under the License is distributed on an * + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * + * KIND, either express or implied. See the License for the * + * specific language governing permissions and limitations * + * under the License. * + ****************************************************************/ +package org.apache.james.webadmin.vault.routes; + +import java.util.function.Function; + +import org.apache.james.json.DTOModule; +import org.apache.james.server.task.json.dto.TaskDTO; +import org.apache.james.server.task.json.dto.TaskDTOModule; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class DeletedMessagesVaultDeleteTaskDTO implements TaskDTO { + + public static final Function<DeletedMessagesVaultDeleteTask.Factory, TaskDTOModule<DeletedMessagesVaultDeleteTask, DeletedMessagesVaultDeleteTaskDTO>> MODULE = (factory) -> + DTOModule + .forDomainObject(DeletedMessagesVaultDeleteTask.class) + .convertToDTO(DeletedMessagesVaultDeleteTaskDTO.class) + .toDomainObjectConverter(factory::create) + .toDTOConverter(DeletedMessagesVaultDeleteTaskDTO::of) + .typeName(DeletedMessagesVaultDeleteTask.TYPE.asString()) + .withFactory(TaskDTOModule::new); + + private final String type; + private final String userName; + private final String messageId; + + public DeletedMessagesVaultDeleteTaskDTO(@JsonProperty("type") String type, @JsonProperty("userName") String userName, @JsonProperty("messageId") String messageId) { + this.type = type; + this.userName = userName; + this.messageId = messageId; + } + + public String getUserName() { + return userName; + } + + public String getMessageId() { + return messageId; + } + + public String getType() { + return type; + } + + public static DeletedMessagesVaultDeleteTaskDTO of(DeletedMessagesVaultDeleteTask task, String type) { + return new DeletedMessagesVaultDeleteTaskDTO(type, task.getUser().asString(), task.getMessageId().serialize()); + } +} diff --git a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskSerializationTest.java b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskSerializationTest.java index 236adc2..52c8159 100644 --- a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskSerializationTest.java +++ b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultDeleteTaskSerializationTest.java @@ -50,7 +50,7 @@ class DeletedMessagesVaultDeleteTaskSerializationTest { void setUp() { deletedMessageVault = mock(DeletedMessageVault.class); DeletedMessagesVaultDeleteTask.Factory factory = new DeletedMessagesVaultDeleteTask.Factory(deletedMessageVault, messageIdFactory); - taskSerializer = new JsonTaskSerializer(DeletedMessagesVaultDeleteTask.MODULE.apply(factory)); + taskSerializer = new JsonTaskSerializer(DeletedMessagesVaultDeleteTaskDTO.MODULE.apply(factory)); } @Test --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org