
com.networknt.tram.command.consumer.CommandHandlers Maven / Gradle / Ivy
package com.networknt.tram.command.consumer;
import com.networknt.tram.message.common.Message;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import static java.util.stream.Collectors.toSet;
public class CommandHandlers {
private List handlers;
public CommandHandlers(List handlers) {
this.handlers = handlers;
}
public Set getChannels() {
return handlers.stream().map(CommandHandler::getChannel).collect(toSet());
}
public Optional findTargetMethod(Message message) {
return handlers.stream().filter(h -> h.handles(message)).findFirst();
}
public Optional findExceptionHandler(Throwable cause) {
cause.printStackTrace();
throw new UnsupportedOperationException("implement me", cause);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy