package org.robotninjas.barge;
import com.google.common.base.Optional;
import com.google.common.collect.Maps;
import org.jetlang.core.BatchExecutorImpl;
import org.jetlang.core.EventReader;
import org.slf4j.MDC;
import java.util.Map;
class BatchExecutor extends BatchExecutorImpl {
Map contextMap = Maps.newHashMap();
@Override
public void execute(EventReader toExecute) {
Optional<Map> oldContext = Optional.fromNullable(MDC.getCopyOfContextMap());
MDC.setContextMap(contextMap);
super.execute(toExecute);
contextMap = MDC.getCopyOfContextMap();
if (oldContext.isPresent()) {
MDC.setContextMap(oldContext.get());
}
}
}