package eu.dnetlib.enabling.ui.common.services;

import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;

import eu.dnetlib.enabling.ui.common.beans.GraphInfo;
import eu.dnetlib.enabling.ui.common.beans.ManagerRuleInfo;
import eu.dnetlib.enabling.ui.common.beans.ProcessHtmlInfo;
import eu.dnetlib.enabling.ui.common.beans.ProcessInfo;




public interface ManagerServiceAsync {
	public void listOrchestrationProcess(String rsId, int maxProcesses, AsyncCallback<List<ProcessInfo>> callback);
	public void obtainHtmlProcess(String pid, AsyncCallback<ProcessHtmlInfo> callback);
	public void obtainHtmlProcessNode(String pid, String nodeId, AsyncCallback<String> callback);
	public void listCategoryRules(AsyncCallback<List<String>> callback);
	public void listRules(String category, AsyncCallback<List<ManagerRuleInfo>> callback);
	public void updateRule(ManagerRuleInfo info, AsyncCallback<Boolean> callback);
	public void verifyRule(String ruleId, AsyncCallback<ProcessHtmlInfo> callback);
	public void reactivateRule(String ruleId, String action, AsyncCallback<Boolean> callback);
	public void listSavedGraphs(String ruleId, AsyncCallback<List<GraphInfo>> callback);
	public void asImageMap(String ruleId, AsyncCallback<ProcessHtmlInfo> callback);
	public void asSavedImageMap(String ruleId, int i, AsyncCallback<ProcessHtmlInfo> callback);
}
