From ee062a35f8d690f4f6529b31149de8d885781908 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20Hessenm=C3=BCller?= Date: Mon, 23 Mar 2020 14:54:10 +0100 Subject: [PATCH] bug5197: Created SendMailOperation --- .../sap/sse/mail/impl/MailServiceImpl.java | 3 ++- .../mail/operations/MailServiceOperation.java | 8 +++++++ .../mail/operations/SendMailOperation.java | 22 +++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 java/com.sap.sse.mail/src/com/sap/sse/mail/operations/MailServiceOperation.java create mode 100644 java/com.sap.sse.mail/src/com/sap/sse/mail/operations/SendMailOperation.java diff --git a/java/com.sap.sse.mail/src/com/sap/sse/mail/impl/MailServiceImpl.java b/java/com.sap.sse.mail/src/com/sap/sse/mail/impl/MailServiceImpl.java index 18bff2641a0..4a84568b0ca 100644 --- a/java/com.sap.sse.mail/src/com/sap/sse/mail/impl/MailServiceImpl.java +++ b/java/com.sap.sse.mail/src/com/sap/sse/mail/impl/MailServiceImpl.java @@ -28,6 +28,7 @@ import com.sap.sse.common.IsManagedByCache; import com.sap.sse.common.mail.MailException; import com.sap.sse.mail.MailServiceResolver; import com.sap.sse.mail.SerializableMultipartSupplier; +import com.sap.sse.mail.operations.SendMailOperation; import com.sap.sse.replication.OperationExecutionListener; import com.sap.sse.replication.OperationWithResult; import com.sap.sse.replication.OperationWithResultWithIdWrapper; @@ -138,7 +139,7 @@ public class MailServiceImpl implements ReplicableMailService { @Override public void sendMail(String toAddress, String subject, String body) throws MailException { - apply(s -> s.internalSendMail(toAddress, subject, body)); + apply(new SendMailOperation(toAddress, subject, body)); } @Override diff --git a/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/MailServiceOperation.java b/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/MailServiceOperation.java new file mode 100644 index 00000000000..11a9d87b3ba --- /dev/null +++ b/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/MailServiceOperation.java @@ -0,0 +1,8 @@ +package com.sap.sse.mail.operations; + +import com.sap.sse.mail.impl.ReplicableMailService; +import com.sap.sse.replication.OperationWithResult; + +public interface MailServiceOperation extends OperationWithResult { + +} diff --git a/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/SendMailOperation.java b/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/SendMailOperation.java new file mode 100644 index 00000000000..1dca7693aaf --- /dev/null +++ b/java/com.sap.sse.mail/src/com/sap/sse/mail/operations/SendMailOperation.java @@ -0,0 +1,22 @@ +package com.sap.sse.mail.operations; + +import com.sap.sse.mail.impl.ReplicableMailService; + +public class SendMailOperation implements MailServiceOperation { + private static final long serialVersionUID = 3410841670705846547L; + protected final String toAddress; + protected final String subject; + protected final String body; + + public SendMailOperation(String toAddress, String subject, String body) { + this.toAddress = toAddress; + this.subject = subject; + this.body = body; + } + + @Override + public Void internalApplyTo(ReplicableMailService toState) throws Exception { + toState.internalSendMail(toAddress, subject, body); + return null; + } +}