org.geotools.data
Class DerivedAttribtueType

java.lang.Object
  extended byorg.geotools.data.DerivedAttribtueType
All Implemented Interfaces:
AttributeType

public class DerivedAttribtueType
extends java.lang.Object
implements AttributeType

This is really just a normal attribute type.

DefaultAttributeType is locked away behind a builder interface and cannot be accessed directly. This class is used as a data transfer object to hold all the correct values so you can pass them into FeatureTypeFactory (*cough* builder).

Author:
Jody Garnett

Field Summary
 
Fields inherited from interface org.geotools.feature.AttributeType
UNBOUNDED
 
Constructor Summary
DerivedAttribtueType(java.lang.String name, java.lang.Class type, boolean nillable, boolean nested)
          Construct DerivedAttribtueType.
DerivedAttribtueType(java.lang.String name, java.lang.Class type, boolean nillable, boolean nested, int minOcc, int maxOcc)
           
 
Method Summary
 java.lang.Object createDefaultValue()
          Create a default value for this AttributeType.
 java.lang.Object duplicate(java.lang.Object src)
          Create a duplicate value of the passed Object.
 int getFieldLength()
           
 int getMaxOccurs()
          Returns the Max number of occurences ...
 int getMinOccurs()
          Returns the Min number of occurences ...
 java.lang.String getName()
          Gets the name of this attribute.
 Filter getRestriction()
          This represents a Facet in XML schema ... for example can be used to represent the max length of 20 for a string.
 java.lang.Class getType()
          Gets the type of this attribute.
 boolean isGeometry()
           
 boolean isNested()
           
 boolean isNillable()
          Returns whether nulls are allowed for this attribute.
 java.lang.Object parse(java.lang.Object value)
          Allows this AttributeType to convert an argument to its prefered storage type.
 void validate(java.lang.Object obj)
          Whether the tested object passes the validity constraints of this AttributeType.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DerivedAttribtueType

public DerivedAttribtueType(java.lang.String name,
                            java.lang.Class type,
                            boolean nillable,
                            boolean nested)
Construct DerivedAttribtueType.

Parameters:
name -
type -
nillable -
nested -

DerivedAttribtueType

public DerivedAttribtueType(java.lang.String name,
                            java.lang.Class type,
                            boolean nillable,
                            boolean nested,
                            int minOcc,
                            int maxOcc)
Method Detail

getMinOccurs

public int getMinOccurs()
Description copied from interface: AttributeType
Returns the Min number of occurences ...

Specified by:
getMinOccurs in interface AttributeType
Returns:

getMaxOccurs

public int getMaxOccurs()
Description copied from interface: AttributeType
Returns the Max number of occurences ...

Specified by:
getMaxOccurs in interface AttributeType
Returns:

isNested

public boolean isNested()

getName

public java.lang.String getName()
Description copied from interface: AttributeType
Gets the name of this attribute.

Specified by:
getName in interface AttributeType
Returns:
Name.

getType

public java.lang.Class getType()
Description copied from interface: AttributeType
Gets the type of this attribute.

Specified by:
getType in interface AttributeType
Returns:
Type.

isNillable

public boolean isNillable()
Description copied from interface: AttributeType
Returns whether nulls are allowed for this attribute.

Specified by:
isNillable in interface AttributeType
Returns:
true if nulls are permitted, false otherwise.

isGeometry

public boolean isGeometry()

parse

public java.lang.Object parse(java.lang.Object value)
                       throws java.lang.IllegalArgumentException
Description copied from interface: AttributeType
Allows this AttributeType to convert an argument to its prefered storage type. If no parsing is possible, returns the original value. If a parse is attempted, yet fails (i.e. a poor decimal format) throw the Exception. This is mostly for use internally in Features, but implementors should simply follow the rules to be safe.

Specified by:
parse in interface AttributeType
Parameters:
value - the object to attempt parsing of.
Returns:
value converted to the preferred storage of this AttributeType. If no parsing was possible then the same object is returned.
Throws:
java.lang.IllegalArgumentException - if parsing is attempted and is unsuccessful.

validate

public void validate(java.lang.Object obj)
              throws java.lang.IllegalArgumentException
Description copied from interface: AttributeType
Whether the tested object passes the validity constraints of this AttributeType. At a minimum it should be of the correct class specified by AttributeType.getType(), non-null if isNillable is false, and a geometry if isGeometry is true. If The object does not validate then an IllegalArgumentException reporting the error in validation should be thrown.

Specified by:
validate in interface AttributeType
Parameters:
obj - The object to be tested for validity.
Throws:
java.lang.IllegalArgumentException - if the object does not validate.

duplicate

public java.lang.Object duplicate(java.lang.Object src)
                           throws IllegalAttributeException
Description copied from interface: AttributeType
Create a duplicate value of the passed Object. For immutable Objects, it is not neccessary to create a new Object.

Specified by:
duplicate in interface AttributeType
Parameters:
src - The Object to duplicate.
Throws:
IllegalAttributeException - If the src Object is not the correct type.

createDefaultValue

public java.lang.Object createDefaultValue()
Description copied from interface: AttributeType
Create a default value for this AttributeType. If the type is nillable, the Object may or may not be null.

Specified by:
createDefaultValue in interface AttributeType

getFieldLength

public int getFieldLength()

getRestriction

public Filter getRestriction()
Description copied from interface: AttributeType
This represents a Facet in XML schema ... for example can be used to represent the max length of 20 for a string.

Specified by:
getRestriction in interface AttributeType
Returns:
Filter, or Filter.NONE if no restriction is needed.


Copyright © GeoTools. All Rights Reserved.