package com.taobao.tddl.executor.common;
import com.taobao.tddl.common.utils.thread.ThreadLocalMap;
import com.taobao.tddl.executor.repo.RepositoryHolder;
import com.taobao.tddl.executor.spi.ITopologyExecutor;
/**
* @author mengshi.sunmengshi 2013-12-4 下午6:16:32
* @since 5.0.0
*/
public class ExecutorContext {
private static final String EXECUTOR_CONTEXT_KEY = "_executor_context_";
private RepositoryHolder repositoryHolder = new RepositoryHolder();
private TopologyHandler topologyHandler = null;
private ITopologyExecutor topologyExecutor = null;
public static ExecutorContext getContext() {
return (ExecutorContext) ThreadLocalMap.get(EXECUTOR_CONTEXT_KEY);
}
public static void setContext(ExecutorContext context) {
ThreadLocalMap.put(EXECUTOR_CONTEXT_KEY, context);
}
public RepositoryHolder getRepositoryHolder() {
return repositoryHolder;
}
public void setRepositoryHolder(RepositoryHolder repositoryHolder) {
this.repositoryHolder = repositoryHolder;
}
public ITopologyExecutor getTopologyExecutor() {
return topologyExecutor;
}
public void setTopologyExecutor(ITopologyExecutor topologyExecutor) {
this.topologyExecutor = topologyExecutor;
}
public TopologyHandler getTopologyHandler() {
return topologyHandler;
}
public void setTopologyHandler(TopologyHandler topologyHandler) {
this.topologyHandler = topologyHandler;
}
}