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 9ba100d7a64acff9f8ee85b0ca0457c1ff56a5f1 Author: Rene Cordier <rcord...@linagora.com> AuthorDate: Fri Mar 1 14:10:08 2019 +0700 MAILBOX-382 serializer should be at the route level --- .../james/webadmin/routes/EventDeadLettersRoutes.java | 10 ++++++++-- .../james/webadmin/service/EventDeadLettersService.java | 13 ++----------- .../james/webadmin/routes/EventDeadLettersRoutesTest.java | 4 ++-- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/routes/EventDeadLettersRoutes.java b/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/routes/EventDeadLettersRoutes.java index 46b3242..fb8949b 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/routes/EventDeadLettersRoutes.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/routes/EventDeadLettersRoutes.java @@ -29,6 +29,7 @@ import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.Produces; +import org.apache.james.event.json.EventSerializer; import org.apache.james.mailbox.events.Event; import org.apache.james.mailbox.events.Group; import org.apache.james.task.Task; @@ -64,12 +65,15 @@ public class EventDeadLettersRoutes implements Routes { private static final String INTERNAL_SERVER_ERROR = "Internal server error - Something went bad on the server side."; private final EventDeadLettersService eventDeadLettersService; + private final EventSerializer eventSerializer; private final TaskManager taskManager; private final JsonTransformer jsonTransformer; @Inject - EventDeadLettersRoutes(EventDeadLettersService eventDeadLettersService, TaskManager taskManager, JsonTransformer jsonTransformer) { + EventDeadLettersRoutes(EventDeadLettersService eventDeadLettersService, EventSerializer eventSerializer, + TaskManager taskManager, JsonTransformer jsonTransformer) { this.eventDeadLettersService = eventDeadLettersService; + this.eventSerializer = eventSerializer; this.taskManager = taskManager; this.jsonTransformer = jsonTransformer; } @@ -218,7 +222,9 @@ public class EventDeadLettersRoutes implements Routes { Group group = parseGroup(request); Event.EventId eventId = parseEventId(request); - return eventDeadLettersService.getSerializedEvent(group, eventId); + return eventDeadLettersService.getEvent(group, eventId) + .map(eventSerializer::toJson) + .block(); } @DELETE diff --git a/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/service/EventDeadLettersService.java b/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/service/EventDeadLettersService.java index 639e322..2ea4649 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/service/EventDeadLettersService.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/main/java/org/apache/james/webadmin/service/EventDeadLettersService.java @@ -25,7 +25,6 @@ import java.util.function.Supplier; import javax.inject.Inject; -import org.apache.james.event.json.EventSerializer; import org.apache.james.mailbox.events.Event; import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventDeadLetters; @@ -41,13 +40,11 @@ import reactor.util.function.Tuple2; public class EventDeadLettersService { private final EventDeadLetters deadLetters; private final EventBus eventBus; - private final EventSerializer eventSerializer; @Inject - public EventDeadLettersService(EventDeadLetters deadLetters, EventBus eventBus, EventSerializer eventSerializer) { + public EventDeadLettersService(EventDeadLetters deadLetters, EventBus eventBus) { this.deadLetters = deadLetters; this.eventBus = eventBus; - this.eventSerializer = eventSerializer; } public List<String> listGroupsAsStrings() { @@ -78,13 +75,7 @@ public class EventDeadLettersService { .flatMap(eventId -> getEvent(group, eventId)); } - public String getSerializedEvent(Group group, Event.EventId eventId) { - return getEvent(group, eventId) - .map(eventSerializer::toJson) - .block(); - } - - private Mono<Event> getEvent(Group group, Event.EventId eventId) { + public Mono<Event> getEvent(Group group, Event.EventId eventId) { return deadLetters.failedEvent(group, eventId); } diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/EventDeadLettersRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/EventDeadLettersRoutesTest.java index e5c2661..9a55014 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/EventDeadLettersRoutesTest.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/EventDeadLettersRoutesTest.java @@ -111,12 +111,12 @@ class EventDeadLettersRoutesTest { JsonTransformer jsonTransformer = new JsonTransformer(); EventSerializer eventSerializer = new EventSerializer(new InMemoryId.Factory(), new InMemoryMessageId.Factory()); eventBus = new InVMEventBus(new InVmEventDelivery(new NoopMetricFactory()), RetryBackoffConfiguration.DEFAULT, deadLetters); - EventDeadLettersService service = new EventDeadLettersService(deadLetters, eventBus, eventSerializer); + EventDeadLettersService service = new EventDeadLettersService(deadLetters, eventBus); taskManager = new MemoryTaskManager(); webAdminServer = WebAdminUtils.createWebAdminServer( new DefaultMetricFactory(), - new EventDeadLettersRoutes(service, taskManager, jsonTransformer), + new EventDeadLettersRoutes(service, eventSerializer, taskManager, jsonTransformer), new TasksRoutes(taskManager, jsonTransformer)); webAdminServer.configure(NO_CONFIGURATION); webAdminServer.await(); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org