ingo@104: /* ingo@104: * Copyright (c) 2011 by Intevation GmbH ingo@104: * ingo@104: * This program is free software under the LGPL (>=v2.1) ingo@104: * Read the file LGPL.txt coming with the software for details ingo@104: * or visit http://www.gnu.org/licenses/ if it does not exist. ingo@104: */ ingo@104: package de.intevation.artifactdatabase.data; ingo@104: ingo@104: import java.io.Serializable; ingo@104: ingo@104: ingo@104: /** ingo@104: * @author Ingo Weinzierl ingo@104: */ ingo@104: public interface StateData extends Serializable { ingo@104: ingo@104: /** ingo@104: * Returns the name of the data object. ingo@104: * ingo@104: * @return the name. ingo@104: */ ingo@104: public String getName(); ingo@104: ingo@104: ingo@104: /** ingo@104: * Returns the description of the data object. ingo@104: * ingo@104: * @return the description of the data object. ingo@104: */ ingo@104: public String getDescription(); ingo@104: ingo@104: ingo@104: /** ingo@104: * Returns the type of the data object as string. ingo@104: * ingo@104: * @return the type as string. ingo@104: */ ingo@104: public String getType(); ingo@104: ingo@104: ingo@104: /** ingo@104: * Returns the value of the data object. ingo@104: * ingo@104: * @return the value. ingo@104: */ ingo@104: public Object getValue(); ingo@110: ingo@110: ingo@110: /** ingo@110: * Set the value of this data object. ingo@110: * ingo@110: * @param value The new value for this data object. ingo@110: */ ingo@110: public void setValue(Object value); sascha@322: sascha@322: public StateData deepCopy(); ingo@104: } ingo@104: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :