T
- The type of parameter values.@UML(identifier="CC_ParameterValue", specification=ISO_19111) public interface ParameterValue<T> extends GeneralParameterValue
intValue()
or doubleValue()
methods. But other types of
parameter values are possible and can be handled by the more generic getValue()
and
setValue(Object)
methods. The type and constraints on parameter values are given
by the descriptor.
Instances of ParameterValue
are created by the ParameterDescriptor.createValue()
method.
ParameterDescriptor
,
ParameterValueGroup
Modifier and Type | Method and Description |
---|---|
boolean |
booleanValue()
Returns the boolean value of an operation parameter
A boolean value does not have an associated unit of measure.
|
ParameterValue<T> |
clone()
Returns a copy of this parameter value.
|
double |
doubleValue()
Returns the numeric value of the coordinate operation parameter with its
associated unit of measure.
|
double |
doubleValue(Unit<?> unit)
Returns the numeric value of the coordinate operation parameter in the specified unit
of measure.
|
double[] |
doubleValueList()
Returns an ordered sequence of two or more numeric values of an operation parameter
list, where each value has the same associated unit of measure.
|
double[] |
doubleValueList(Unit<?> unit)
Returns an ordered sequence of numeric values in the specified unit of measure.
|
ParameterDescriptor<T> |
getDescriptor()
Returns the abstract definition of this parameter value.
|
Unit<?> |
getUnit()
Returns the unit of measure of the parameter value.
|
T |
getValue()
Returns the parameter value as an object.
|
int |
intValue()
Returns the positive integer value of an operation parameter, usually used
for a count.
|
int[] |
intValueList()
Returns an ordered sequence of two or more integer values of an operation parameter list,
usually used for counts.
|
void |
setValue(boolean value)
Set the parameter value as a boolean.
|
void |
setValue(double value)
Sets the parameter value as a floating point.
|
void |
setValue(double[] values,
Unit<?> unit)
Sets the parameter value as an array of floating point and their associated unit.
|
void |
setValue(double value,
Unit<?> unit)
Sets the parameter value as a floating point and its associated unit.
|
void |
setValue(int value)
Set the parameter value as an integer.
|
void |
setValue(Object value)
Set the parameter value as an object.
|
String |
stringValue()
Returns the string value of an operation parameter.
|
URI |
valueFile()
Returns a reference to a file or a part of a file containing one or more parameter
values.
|
ParameterDescriptor<T> getDescriptor()
getDescriptor
in interface GeneralParameterValue
Unit<?> getUnit()
String
type),
then this method returns null
. Note that "no unit" doesn't means
"dimensionless".doubleValue()
,
doubleValueList()
,
getValue()
double doubleValue(Unit<?> unit) throws IllegalArgumentException, IllegalStateException
unit
- The unit of measure for the value to be returned.double
and conversion to unit
.IllegalArgumentException
- if the specified unit is invalid for this parameter.InvalidParameterTypeException
- if the value is not a numeric type.IllegalStateException
- if the value can not be returned for an other raison.getUnit()
,
setValue(double,Unit)
,
doubleValueList(Unit)
double doubleValue() throws IllegalStateException
double
.InvalidParameterTypeException
- if the value is not a numeric type.IllegalStateException
- if the value can not be returned for an other raison.getUnit()
,
setValue(double)
,
doubleValueList()
Departure from OGC/ISO specification:
Renamed the method from "value
" to "doubleValue
" for consistency withNumber.doubleValue()
and the other "*Value
" methods defined in this interface.
@UML(identifier="integerValue", obligation=CONDITIONAL, specification=ISO_19111) int intValue() throws IllegalStateException
int
.InvalidParameterTypeException
- if the value is not an integer type.IllegalStateException
- if the value can not be returned for an other raison.setValue(int)
,
intValueList()
Departure from OGC/ISO specification:
Renamed the method from "integerValue
" to "intValue
" for consistency withNumber.intValue()
and theint
Java primitive type.
@UML(identifier="booleanValue", obligation=CONDITIONAL, specification=ISO_19111) boolean booleanValue() throws IllegalStateException
InvalidParameterTypeException
- if the value is not a boolean type.IllegalStateException
- if the value can not be returned for an other raison.setValue(boolean)
@UML(identifier="stringValue", obligation=CONDITIONAL, specification=ISO_19111) String stringValue() throws IllegalStateException
InvalidParameterTypeException
- if the value is not a string.IllegalStateException
- if the value can not be returned for an other raison.getValue()
,
setValue(Object)
double[] doubleValueList(Unit<?> unit) throws IllegalArgumentException, IllegalStateException
unit
- The unit of measure for the value to be returned.double
and conversion to unit
.IllegalArgumentException
- if the specified unit is invalid for this parameter.InvalidParameterTypeException
- if the value is not an array of double
s.IllegalStateException
- if the value can not be returned for an other raison.getUnit()
,
setValue(double[],Unit)
,
doubleValue(Unit)
@UML(identifier="valueList", obligation=CONDITIONAL, specification=ISO_19111) double[] doubleValueList() throws IllegalStateException
InvalidParameterTypeException
- if the value is not an array of double
s.IllegalStateException
- if the value can not be returned for an other raison.getUnit()
,
setValue(Object)
,
doubleValue()
Departure from OGC/ISO specification:
Renamed the method from "valueList
" to "doubleValueList
" both for consistency withdoubleValue()
and also because, likedoubleValue()
, this method returns an array ofdouble
values rather than aMeasure
object.
@UML(identifier="integerValueList", obligation=CONDITIONAL, specification=ISO_19111) int[] intValueList() throws IllegalStateException
InvalidParameterTypeException
- if the value is not an array of int
s.IllegalStateException
- if the value can not be returned for an other raison.setValue(Object)
,
intValue()
Departure from OGC/ISO specification:
Renamed the attribute from "integerValueList
" to "intValueList
" for consistency withintValue()
.
@UML(identifier="valueFile", obligation=CONDITIONAL, specification=ISO_19111) URI valueFile() throws IllegalStateException
InvalidParameterTypeException
- if the value is not a reference to a file or an URI.IllegalStateException
- if the value can not be returned for an other raison.getValue()
,
setValue(Object)
@UML(identifier="value", obligation=CONDITIONAL, specification=ISO_19111) T getValue()
Double
,
Integer
, Boolean
, String
, URI
, double[]
or
int[]
. If no value has been set, then this method returns the
default value (which may be null).null
if no value has been set and
there is no default value.setValue(Object)
void setValue(double[] values, Unit<?> unit) throws InvalidParameterValueException
values
- The parameter values.unit
- The unit for the specified value.InvalidParameterValueException
- if the floating point type is inappropriate for this
parameter, or if the value is illegal for some other reason (for example a value out
of range).void setValue(double value, Unit<?> unit) throws InvalidParameterValueException
value
- The parameter value.unit
- The unit for the specified value.InvalidParameterValueException
- if the floating point type is inappropriate for this
parameter, or if the value is illegal for some other reason (for example a value out
of range).setValue(double)
,
doubleValue(Unit)
void setValue(double value) throws InvalidParameterValueException
value
- The parameter value.InvalidParameterValueException
- if the floating point type is inappropriate for this
parameter, or if the value is illegal for some other reason (for example a value out
of range).setValue(double,Unit)
,
doubleValue()
void setValue(int value) throws InvalidParameterValueException
value
- The parameter value.InvalidParameterValueException
- if the integer type is inappropriate for this parameter,
or if the value is illegal for some other reason (for example a value out of range).intValue()
void setValue(boolean value) throws InvalidParameterValueException
value
- The parameter value.InvalidParameterValueException
- if the boolean type is inappropriate for this parameter.booleanValue()
void setValue(Object value) throws InvalidParameterValueException
Double
,
Integer
, Boolean
, String
, URI
, double[]
or int[]
.
The argument is not restricted to the parameterized type T
because the type
is typically unknown (as in group.parameter("name").setValue(value)
) and
because some implementations may choose to convert a wider range of types.
value
- The parameter value.InvalidParameterValueException
- if the type of value
is inappropriate
for this parameter, or if the value is illegal for some other reason (for example
the value is numeric and out of range).getValue()
ParameterValue<T> clone()
clone
in interface GeneralParameterValue
Copyright © 1994–2019 Open Geospatial Consortium. All rights reserved.