
io.mstream.trader.simulation.handlers.RootChain Maven / Gradle / Ivy
package io.mstream.trader.simulation.handlers;
import io.mstream.trader.simulation.handlers.api.Api;
import io.mstream.trader.simulation.handlers.monitoring.Monitoring;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ratpack.func.Action;
import ratpack.handling.Chain;
import ratpack.handling.RequestLogger;
import javax.inject.Inject;
public class RootChain
implements Action {
private static final Logger LOGGER = LoggerFactory.getLogger(RootChain.class);
private final Action monitoringChain;
private final Action apiChain;
@Inject
public RootChain(
@Monitoring Action monitoringChain,
@Api Action apiChain
) {
this.monitoringChain = monitoringChain;
this.apiChain = apiChain;
}
@Override
public void execute(Chain chain)
throws Exception {
chain.all(RequestLogger.ncsa(LOGGER))
.prefix("monitoring", monitoringChain)
.prefix("api", apiChain);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy