Use Runnable instead of Callable in MailReceiver
Callable fails with this exception: java.lang.UnsupportedOperationException: Callable not implemented Other parts in Gerrit use Runnable. Using Runnable here as well fixed the issue. Change-Id: I36c96c8408a7295b06217f2d6df18e8253b0e1c8
This commit is contained in:
@@ -27,8 +27,6 @@ import java.util.List;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.Timer;
|
import java.util.Timer;
|
||||||
import java.util.TimerTask;
|
import java.util.TimerTask;
|
||||||
import java.util.concurrent.Callable;
|
|
||||||
import java.util.concurrent.Future;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
@@ -124,7 +122,9 @@ public abstract class MailReceiver implements LifecycleListener {
|
|||||||
protected void dispatchMailProcessor(List<MailMessage> messages, boolean async) {
|
protected void dispatchMailProcessor(List<MailMessage> messages, boolean async) {
|
||||||
for (MailMessage m : messages) {
|
for (MailMessage m : messages) {
|
||||||
if (async) {
|
if (async) {
|
||||||
Callable<?> task =
|
workQueue
|
||||||
|
.getDefaultQueue()
|
||||||
|
.submit(
|
||||||
() -> {
|
() -> {
|
||||||
try {
|
try {
|
||||||
mailProcessor.process(m);
|
mailProcessor.process(m);
|
||||||
@@ -132,10 +132,7 @@ public abstract class MailReceiver implements LifecycleListener {
|
|||||||
} catch (OrmException e) {
|
} catch (OrmException e) {
|
||||||
log.error("Mail: Can't process message " + m.id() + " . Won't delete.", e);
|
log.error("Mail: Can't process message " + m.id() + " . Won't delete.", e);
|
||||||
}
|
}
|
||||||
return null;
|
});
|
||||||
};
|
|
||||||
@SuppressWarnings("unused")
|
|
||||||
Future<?> possiblyIgnoredError = workQueue.getDefaultQueue().submit(task);
|
|
||||||
} else {
|
} else {
|
||||||
// Synchronous processing is used only in tests.
|
// Synchronous processing is used only in tests.
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user