ingo@8: package de.intevation.flys.client.shared.model; ingo@8: ingo@8: /** ingo@8: * The artifact description describes a state of an artifact. There are ingo@8: * operations defined that return former inserted data, possible input values ingo@8: * and output targets that are available in the current state of the artifact. ingo@8: * ingo@8: * @author Ingo Weinzierl ingo@8: */ ingo@8: public interface ArtifactDescription { ingo@8: ingo@8: /** ingo@8: * Returns the data that have been inserted in former states of the ingo@8: * artifact. ingo@8: * ingo@8: * @return the old data of former states. ingo@8: */ ingo@8: public Data[] getOldData(); ingo@8: ingo@8: ingo@8: /** ingo@8: * Returns the data with all its options that might be inserted in the ingo@8: * current state of the artifact. ingo@8: * ingo@8: * @return the current data. ingo@8: */ ingo@8: public Data getCurrentData(); ingo@8: ingo@8: ingo@8: /** ingo@8: * Returns the current state as string. ingo@8: * ingo@8: * @return the current state. ingo@8: */ ingo@8: public String getCurrentState(); ingo@8: ingo@8: ingo@8: /** ingo@8: * Returns the reachable states as string. ingo@8: * ingo@8: * @return the reachable states. ingo@8: */ ingo@8: public String[] getReachableStates(); ingo@8: } ingo@8: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :