/* * GeoTools - The Open Source Java GIS Toolkit * http://geotools.org * * (C) 2011, Open Source Geospatial Foundation (OSGeo) * (C) 2003-2005, Open Geospatial Consortium Inc. * * All Rights Reserved. http://www.opengis.org/legal/ */ package org.opengis.parameter; import org.opengis.util.InternationalString; /** * General parameter interface. * * @author Justin Deoliveira, OpenGeo * * @param <T> */ public interface Parameter<T> { /** * Name of the parameter. */ String getName(); /** * Title of the parameter. */ InternationalString getTitle(); /** * Description of the parameter. */ InternationalString getDescription(); /** * Type/class of the parameter. */ Class<T> getType(); /** * Flag indicating if the parameter is required or not. */ Boolean isRequired(); /** * The minimum number of occurrences of the parameter. * @return minimum number of occurrences, or -1 if no minimum needed */ int getMinOccurs(); /** * The maximum number of occurrences of the parameter. * @return maximum number of occurences, or -1 for unbound */ int getMaxOccurs(); /** * A default value for the parameter. */ T getDefaultValue(); }