2020-02-02 13:44:10 +01:00
|
|
|
package envoy.client.net;
|
2020-01-02 16:11:41 +01:00
|
|
|
|
|
|
|
import java.util.function.Consumer;
|
|
|
|
|
|
|
|
import envoy.client.event.MessageCreationEvent;
|
|
|
|
import envoy.data.Message;
|
|
|
|
import envoy.data.Message.MessageStatus;
|
2020-09-08 20:41:01 +02:00
|
|
|
|
|
|
|
import dev.kske.eventbus.EventBus;
|
2020-01-02 16:11:41 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Project: <strong>envoy-client</strong><br>
|
|
|
|
* File: <strong>ReceivedMessageProcessor.java</strong><br>
|
|
|
|
* Created: <strong>31.12.2019</strong><br>
|
2020-02-18 07:16:35 +01:00
|
|
|
*
|
2020-01-02 16:11:41 +01:00
|
|
|
* @author Kai S. K. Engelbart
|
2020-03-23 21:52:33 +01:00
|
|
|
* @since Envoy Client v0.3-alpha
|
2020-01-02 16:11:41 +01:00
|
|
|
*/
|
2020-08-22 13:37:07 +02:00
|
|
|
public final class ReceivedMessageProcessor implements Consumer<Message> {
|
2020-01-02 16:11:41 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void accept(Message message) {
|
2020-07-16 21:14:37 +02:00
|
|
|
// Update status to RECEIVED
|
|
|
|
if (message.getStatus() == MessageStatus.SENT) message.nextStatus();
|
2020-02-05 16:12:10 +01:00
|
|
|
|
2020-07-16 21:14:37 +02:00
|
|
|
// Dispatch event
|
|
|
|
EventBus.getInstance().dispatch(new MessageCreationEvent(message));
|
2020-01-02 16:11:41 +01:00
|
|
|
}
|
|
|
|
}
|