org.geotools.xml.gml
Class ChoiceGeometryTypeImpl

Object
  extended by PropertyTypeImpl
      extended by AttributeTypeImpl
          extended by ChoiceGeometryTypeImpl
All Implemented Interfaces:
ChoiceGeometryType, AttributeDescriptor, AttributeType, GeometryDescriptor, GeometryType, PropertyDescriptor, PropertyType

public class ChoiceGeometryTypeImpl
extends AttributeTypeImpl
implements ChoiceGeometryType, GeometryType

Created for GML generated FeatureTypes. Represents a Choice type. This is temporary and only for use by the parser. It should never be public or in common use.

Author:
Jesse

Field Summary
protected  Class[] types
           
 
Fields inherited from class AttributeTypeImpl
identified
 
Fields inherited from class PropertyTypeImpl
binding, description, isAbstract, name, restrictions, superType, userData
 
Constructor Summary
ChoiceGeometryTypeImpl(Name name, Class[] types, Class defaultType, boolean nillable, int min, int max, Object defaultValue, CoordinateReferenceSystem crs, List<Filter> filter)
           
 
Method Summary
 Object convert(Object obj)
          Yet another hack in order to use our FeatureType.
 Class[] getChoices()
          Gets the choices
 Class[] getChoices()
          Gets the choices
 CoordinateReferenceSystem getCoordinateReferenceSystem()
          The coordinate reference system in which geometries are defined.
 Object getDefaultValue()
          The default value for the attribute.
 String getLocalName()
          The local name for this AttributeDescriptor.
 int getMaxOccurs()
          The maximum number of occurrences of the property within its containing entity.
 int getMinOccurs()
          The minimum number of occurrences of the property within its containing entity.
 GeometryType getType()
          Override of PropertyDescriptor.getType() which type narrows to AttributeType.
 boolean isNillable()
          Flag indicating if null is an allowable value for the property.
 
Methods inherited from class AttributeTypeImpl
createDefaultValue, equals, getSuper, hashCode, isIdentified, parse, toString
 
Methods inherited from class PropertyTypeImpl
getBinding, getDescription, getName, getRestrictions, getUserData, isAbstract
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface AttributeType
getSuper, isIdentified
 
Methods inherited from interface PropertyType
equals, getBinding, getDescription, getName, getRestrictions, getUserData, hashCode, isAbstract
 
Methods inherited from interface AttributeDescriptor
getDefaultValue, getLocalName
 
Methods inherited from interface PropertyDescriptor
getMaxOccurs, getMinOccurs, getName, getUserData, isNillable
 

Field Detail

types

protected Class[] types
Constructor Detail

ChoiceGeometryTypeImpl

public ChoiceGeometryTypeImpl(Name name,
                              Class[] types,
                              Class defaultType,
                              boolean nillable,
                              int min,
                              int max,
                              Object defaultValue,
                              CoordinateReferenceSystem crs,
                              List<Filter> filter)
Method Detail

convert

public Object convert(Object obj)
Yet another hack in order to use our FeatureType. Converts object to the "real" attribute type. Best to explain by Example.

Consider a choice between Polygon and MultiPolygon. It doesn't make sense to be a Geometry Attribute Type since normal attribute type inspection will allow users/clients to set Points and lines as legal attribute. For parsing purposes, this make the FeatureType a little more accurate. It is not perfect of course since The choice Line, Polygon and MultiPolygon still has to be of Type Geometry but it is a little better.


getType

public GeometryType getType()
Description copied from interface: AttributeDescriptor
Override of PropertyDescriptor.getType() which type narrows to AttributeType.

Specified by:
getType in interface AttributeDescriptor
Specified by:
getType in interface GeometryDescriptor
Specified by:
getType in interface PropertyDescriptor
See Also:
PropertyDescriptor.getType()

getCoordinateReferenceSystem

public CoordinateReferenceSystem getCoordinateReferenceSystem()
Description copied from interface: GeometryType
The coordinate reference system in which geometries are defined.

This method may return null, but this should only occur in cases where the actual crs is not known. A common case is when a shapefile does not have an accompanied .prj file.

Specified by:
getCoordinateReferenceSystem in interface GeometryDescriptor
Specified by:
getCoordinateReferenceSystem in interface GeometryType

getChoices

public Class[] getChoices()
Gets the choices

Returns:
the potential types

getChoices

public Class[] getChoices()
Gets the choices

Returns:
the potential types

getDefaultValue

public Object getDefaultValue()
Description copied from interface: AttributeDescriptor
The default value for the attribute.

This value is used when an attribute is created and no value for it is specified.

This value may be null. If it is non-null it should be an instance of of the class specified by getType().getBinding().


getLocalName

public String getLocalName()
Description copied from interface: AttributeDescriptor
The local name for this AttributeDescriptor. Specifically this returns getName().getLocalPart().

Returns:
The local name for this attribute descriptor.

getMaxOccurs

public int getMaxOccurs()
Description copied from interface: PropertyDescriptor
The maximum number of occurrences of the property within its containing entity.

This value is a positive integer. A value of -1 means that the max number of occurrences is unbounded.

Returns:
An integer >= 0, or -1.

getMinOccurs

public int getMinOccurs()
Description copied from interface: PropertyDescriptor
The minimum number of occurrences of the property within its containing entity.

This value is always an integer greater than or equal to zero.

Returns:
An integer >= 0

isNillable

public boolean isNillable()
Description copied from interface: PropertyDescriptor
Flag indicating if null is an allowable value for the property.

Returns:
true if the property is allowed to be null, otherwise false.


Copyright © 1996-2014 Geotools. All Rights Reserved.