1
0
Files
parallel-programming/src/main/java/ru/lionarius/impl/disruptor/CommandEventHandler.java
2024-11-28 05:49:23 +03:00

23 lines
631 B
Java

package ru.lionarius.impl.disruptor;
import com.lmax.disruptor.EventHandler;
import ru.lionarius.impl.CommandProcessor;
public class CommandEventHandler implements EventHandler<CommandEvent> {
private final CommandProcessor commandProcessor;
public CommandEventHandler(CommandProcessor commandProcessor) {
this.commandProcessor = commandProcessor;
}
@Override
public void onEvent(CommandEvent event, long sequence, boolean endOfBatch) throws Exception {
try {
commandProcessor.processCommand(event.getCommand());
} finally {
event.clear();
}
}
}