view artifact-database/src/main/java/org/dive4elements/artifactdatabase/state/Settings.java @ 473:d0ac790a6c89 dive4elements-move

Moved directories to org.dive4elements
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 10:57:18 +0200
parents artifact-database/src/main/java/de/intevation/artifactdatabase/state/Settings.java@f93edbfcf2bc
children 415df0fc4fa1
line wrap: on
line source
package de.intevation.artifactdatabase.state;

import java.io.Serializable;

import org.w3c.dom.Node;


/**
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public interface Settings extends Serializable {

    /**
     * Adds a new Section to this Settings object.
     *
     * @param section the new Section.
     */
    void addSection(Section section);

    /**
     * Returns the number of Sections in this Settings object.
     *
     * @return the number of sections.
     */
    int getSectionCount();

    /**
     * Returns the section at position <i>pos</i>.
     *
     * @param pos the position of the target Section.
     *
     * @return the Section at position <i>pos</i> or null if no Section is
     * existing at <i>pos</i>.
     */
    Section getSection(int pos);

    /**
     * Removes a Section if it is existing in this Settings.
     *
     * @param section The section that should be removed.
     */
    void removeSection(Section section);

    /**
     * Transforms this Settings object into a XML representation. Therefore,
     * each Section object's <i>toXML</i> method is called to append its XML
     * representation to the final document.
     *
     * @param parent The parent node.
     */
    void toXML(Node parent);
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org