view flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultData.java @ 1442:4a6814be92ba

Cosmetics, doc. flys-client/trunk@3438 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Fri, 16 Dec 2011 13:26:19 +0000
parents f6fbfdc813f0
children d0a9acddbea2
line wrap: on
line source
package de.intevation.flys.client.shared.model;

import de.intevation.flys.client.shared.model.DefaultDataItem;

/**
 * The default implementation of a {@link Data} item. This class just implements
 * constructors to create instances and the necessary methods of the interface.
 *
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class DefaultData implements Data {

    /** The label of this Data object. */
    protected String label;

    /** The description. */
    protected String description;

    /** The type. */
    protected String type;

    /** The DataItems. */
    protected DataItem[] items;

    /** The default DataItem. */
    protected DataItem defaultItem;


    public DefaultData() {
    }


    /**
     * The default constructor to create new DefaultData objects.
     *
     * @param label The label.
     * @param description The description.
     * @param type The type.
     * @param items The DataItems.
     */
    public DefaultData(
        String label,
        String description,
        String type,
        DataItem[] items)
    {
        this(label, description, type, items, null);
    }


    /**
     * The constructor to create new DefaultData objects with a default value.
     *
     * @param label The label.
     * @param description The description.
     * @param type The type.
     * @param items The DataItems.
     * @param defaultItem The default DataItem.
     */
    public DefaultData(
        String label,
        String description,
        String type,
        DataItem[] items,
        DataItem defaultItem)
    {
        this.label       = label;
        this.description = description;
        this.type        = type;
        this.items       = items;
        this.defaultItem = defaultItem;
    }


    public String getLabel() {
        return label;
    }


    public String getDescription() {
        return description;
    }


    public String getType() {
        return type;
    }


    public DataItem[] getItems() {
        return items;
    }


    public DataItem getDefault() {
        return defaultItem;
    }


    /** Conveniently create simplistic data. */
    public static DefaultData createSimpleStringData(
        String name,
        String value
    ) {
        DefaultDataItem d = new DefaultDataItem(name, name, value);
        return new DefaultData(name, null, null, new DataItem[] {d});
    }

    /** Conveniently create simplistic data array. */
    public static Data[] createSimpleStringDataArray(
        String name,
        String value
    ) {
        DefaultDataItem d = new DefaultDataItem(name, name, value);
        return new Data[]
            { new DefaultData(name, null, null, new DataItem[] {d})};
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org