All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ru.taskurotta.service.storage.TaskDao Maven / Gradle / Ivy

package ru.taskurotta.service.storage;

import ru.taskurotta.service.console.model.GenericPage;
import ru.taskurotta.service.console.retriever.command.TaskSearchCommand;
import ru.taskurotta.transport.model.DecisionContainer;
import ru.taskurotta.transport.model.TaskContainer;

import java.util.Collection;
import java.util.List;
import java.util.Set;
import java.util.UUID;

/**
 * User: moroz
 * Date: 09.04.13
 */
public interface TaskDao {

    UUID startTask(UUID taskId, UUID processId, long workerTimeout, boolean failOnWorkerTimeout);

    boolean restartTask(UUID taskId, UUID processId, long timeToStart, boolean force);

    boolean retryTask(UUID taskId, UUID processId, long timeToStart);

    boolean finishTask(DecisionContainer taskDecision);

    TaskContainer getTask(UUID taskId, UUID processId);

    void addTask(TaskContainer taskContainer);

    void updateTask(TaskContainer taskContainer);

    DecisionContainer getDecision(UUID taskId, UUID processId);

    boolean isTaskReleased(UUID taskId, UUID processId);

    GenericPage listTasks(int pageNumber, int pageSize);

    List getRepeatedTasks(int iterationCount);

    void deleteTasks(Set taskIds, UUID processId);

    void deleteDecisions(Set decisionsIds, UUID processId);

    void archiveProcessData(UUID processId, Collection finishedTaskIds);

    List findTasks(TaskSearchCommand command);

    void updateTaskDecision(DecisionContainer taskDecision);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy