ingo@1022: /*
ingo@1022: * Copyright (c) 2010 by Intevation GmbH
ingo@1022: *
ingo@1022: * This program is free software under the LGPL (>=v2.1)
ingo@1022: * Read the file LGPL.txt coming with the software for details
ingo@1022: * or visit http://www.gnu.org/licenses/ if it does not exist.
ingo@1022: */
ingo@1022:
tim@2: package de.intevation.gnv.artifactdatabase.objects;
tim@36:
tim@165: import java.io.Serializable;
tim@165:
tim@2: /**
ingo@690: * The ArtifactObject
provides some information about an artifact.
sascha@699: *
sascha@684: * @author Tim Englich
tim@2: */
tim@165: public interface ArtifactObject extends Serializable {
tim@36:
ingo@690: /**
ingo@690: * Retrieves the id of this object.
ingo@690: *
ingo@690: * @return the id.
ingo@690: */
tim@2: public String getId();
tim@36:
ingo@690: /**
ingo@690: * Retrieves information about the selection state of this object.
ingo@690: *
ingo@690: * @return true, if this object is selected - otherwise false.
ingo@690: */
tim@2: public boolean isSelected();
tim@36:
ingo@690: /**
ingo@690: * Set the selection of this object.
ingo@690: *
ingo@690: * @param selected the new selection.
ingo@690: */
tim@2: public void setSelected(boolean selected);
tim@36:
ingo@690: /**
ingo@690: * Retrieves the name of this object.
ingo@690: *
ingo@690: * @return the name.
ingo@690: */
tim@2: public String getName();
tim@36:
ingo@690: /**
ingo@690: * Retrieves the description of the object.
ingo@690: *
ingo@690: * @return the description.
ingo@690: */
tim@2: public String getDescription();
tim@36:
ingo@690: /**
ingo@690: * Retrieves the hash value of this object.
ingo@690: *
ingo@690: * @return the hash value.
ingo@690: */
tim@7: public String getHash();
tim@2: }
sascha@700: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :