package io.cattle.platform.engine.process; import io.cattle.platform.engine.manager.impl.ProcessRecord; import io.cattle.platform.lock.definition.LockDefinition; import java.util.Map; public interface ProcessState { String getResourceId(); Object getResource(); LockDefinition getProcessLock(); String getState(); ProcessPhase getPhase(); void setPhase(ProcessPhase phase); Map<String, Object> getData(); boolean shouldCancel(ProcessRecord record); boolean isDone(boolean schedule); boolean isStart(ProcessRecord record); boolean isTransitioning(); void reload(); String setTransitioning(); String setDone(); Map<String, Object> convertData(Object data); void applyData(Map<String, Object> data); void rebuild(); }