Redesigning REST interface

This commit is contained in:
Luca Frosini 2019-08-02 18:29:46 +02:00
parent eeb7cb4a77
commit 45c3dee7c1
2 changed files with 11 additions and 20 deletions

View File

@ -4,11 +4,12 @@ public class RestConstants {
public static final String PLUGINS_PATH_PART = "plugins"; public static final String PLUGINS_PATH_PART = "plugins";
public static final String SCHEDULED_PATH_PART = "scheduled"; public static final String ALL_PATH_PART = "ALL";
public static final String ITERATION_NUMBER_PARAM = "iterationNumber"; public static final String EXECUTIONS_PATH_PART = "executions";
public static final String GLOBALLY_PARAM = "globally"; public static final String ITERATION_PARAM = "iteration";
public static final String UNSCHEDULE_PARAM = "unschedule";
} }

View File

@ -1,31 +1,21 @@
package org.gcube.vremanagement.executor.api.rest; package org.gcube.vremanagement.executor.api.rest;
import java.util.UUID;
import org.gcube.vremanagement.executor.api.types.LaunchParameter;
import org.gcube.vremanagement.executor.exception.ExecutorException; import org.gcube.vremanagement.executor.exception.ExecutorException;
import org.gcube.vremanagement.executor.exception.InputsNullException;
import org.gcube.vremanagement.executor.exception.LaunchException;
import org.gcube.vremanagement.executor.exception.PluginInstanceNotFoundException; import org.gcube.vremanagement.executor.exception.PluginInstanceNotFoundException;
import org.gcube.vremanagement.executor.exception.PluginNotFoundException;
import org.gcube.vremanagement.executor.plugin.PluginStateEvolution;
public interface SmartExecutor { public interface SmartExecutor {
public String launch(String launchParameterString) throws ExecutorException; public String getAvailablePlugins() throws ExecutorException;
public UUID launch(LaunchParameter launchParameter) public String getLaunches(String pluginName) throws ExecutorException;
throws InputsNullException, PluginNotFoundException, LaunchException, ExecutorException;
public String getPluginStateEvolution(String executionIdentifier, Integer iterationNumber) throws PluginInstanceNotFoundException, ExecutorException; public String launch(String pluginName, String launchParameterString) throws ExecutorException;
public PluginStateEvolution getPluginStateEvolution(UUID executionIdentifier, Integer iterationNumber) public String getPluginStateEvolution(String pluginName, String executionIdentifier, Integer iteration)
throws PluginInstanceNotFoundException, ExecutorException; throws PluginInstanceNotFoundException, ExecutorException;
public boolean delete(String executionIdentifier, boolean globally) public boolean delete(String pluginName, String executionIdentifier, Boolean unschedule) throws ExecutorException;
throws ExecutorException;
public boolean delete(UUID executionIdentifier, boolean globally) public boolean purge(String pluginName, String executionIdentifier) throws ExecutorException;
throws ExecutorException;
} }