package com.netflix.priam.agent;
import com.netflix.priam.utils.JMXNodeTool;
import org.codehaus.jettison.json.JSONException;
import org.codehaus.jettison.json.JSONObject;
import java.io.IOException;
import java.util.List;
import java.util.concurrent.ExecutionException;
public class NodeStatusImpl implements NodeStatus
{
private final JMXNodeTool nodeTool;
public NodeStatusImpl(JMXNodeTool nodeTool)
{
this.nodeTool = nodeTool;
}
@Override
public JSONObject info() throws JSONException
{
return nodeTool.info();
}
@Override
public boolean isJoined()
{
return nodeTool.isJoined();
}
@Override
public String getEndpoint()
{
return nodeTool.getEndpoint();
}
@Override
public int getExceptionCount()
{
return nodeTool.getExceptionCount();
}
@Override
public List<String> getLiveNodes()
{
return nodeTool.getLiveNodes();
}
@Override
public List<String> getMovingNodes()
{
return nodeTool.getMovingNodes();
}
@Override
public List<String> getJoiningNodes()
{
return nodeTool.getJoiningNodes();
}
@Override
public List<String> getUnreachableNodes()
{
return nodeTool.getUnreachableNodes();
}
@Override
public String getOperationMode()
{
return nodeTool.getOperationMode();
}
@Override
public String getGossipInfo()
{
return nodeTool.getGossipInfo();
}
@Override
public int getCompactionThroughput()
{
return nodeTool.getCompactionThroughput();
}
@Override
public void invalidateKeyCache() throws IOException
{
nodeTool.invalidateKeyCache();
}
@Override
public void compact() throws InterruptedException, ExecutionException, IOException
{
nodeTool.compact();
}
@Override
public void decommission() throws InterruptedException
{
nodeTool.decommission();
}
@Override
public void cleanup() throws InterruptedException, ExecutionException, IOException
{
nodeTool.cleanup();
}
@Override
public void joinRing() throws IOException
{
nodeTool.joinRing();
}
@Override
public void refresh(List<String> keyspaces) throws InterruptedException, ExecutionException, IOException
{
nodeTool.refresh(keyspaces);
}
@Override
public void removeNode(String token) throws Exception
{
nodeTool.removeNode(token);
}
@Override
public void startThriftServer() throws Exception
{
nodeTool.startThriftServer();
}
@Override
public void move(String token) throws Exception
{
nodeTool.move(token);
}
@Override
public void flush() throws Exception
{
nodeTool.flush();
}
@Override
public void repair(boolean sequential, boolean localDataCenterOnly) throws Exception
{
nodeTool.repair(sequential, localDataCenterOnly);
}
@Override
public void invalidateRowCache() throws Exception
{
nodeTool.invalidateRowCache();
}
@Override
public void stopGossiping() throws Exception
{
nodeTool.stopGossiping();
}
@Override
public void startGossiping() throws Exception
{
nodeTool.startGossiping();
}
@Override
public void stopThriftServer() throws Exception
{
nodeTool.stopThriftServer();
}
@Override
public void drain() throws Exception
{
nodeTool.drain();
}
}