Package org.geotools.api.feature.type
Interface FeatureTypeFactory
- All Known Implementing Classes:
 ComplexFeatureTypeFactoryImpl,FeatureTypeFactoryImpl,UniqueNameFeatureTypeFactoryImpl
public interface FeatureTypeFactory
Factory for types and descriptors.
 
Implementations of this interface should not contain any "special logic" for creating types. Method implementations should be straight through calls to a constructor.
- Author:
 - Gabriel Roldan (Axios Engineering), Justin Deoliveira (The Open Planning Project)
 
- 
Method Summary
Modifier and TypeMethodDescriptioncreateAssociationDescriptor(AssociationType type, Name name, int minOccurs, int maxOCcurs, boolean isNillable) Creates an association descriptor.createAssociationType(Name name, AttributeType relatedType, boolean isAbstract, List<Filter> restrictions, AssociationType superType, InternationalString description) Creates an association type.createAttributeDescriptor(AttributeType type, Name name, int minOccurs, int maxOccurs, boolean isNillable, Object defaultValue) Creates an attribute descriptor.createAttributeType(Name name, Class<?> binding, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates an attribute type.createComplexType(Name name, Collection<PropertyDescriptor> schema, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a complex type.createFeatureType(Name name, Collection<PropertyDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a feature type.createGeometryDescriptor(GeometryType type, Name name, int minOccurs, int maxOccurs, boolean isNillable, Object defaultValue) Creates a geometry descriptor.createGeometryType(Name name, Class<?> binding, CoordinateReferenceSystem crs, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a geometric attribute type.createSchema(String namespaceURI) Creates a schema.createSimpleFeatureType(Name name, List<AttributeDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a simple feature type. 
- 
Method Details
- 
createSchema
Creates a schema.- Parameters:
 namespaceURI- The uri of the schema.
 - 
createAssociationDescriptor
AssociationDescriptor createAssociationDescriptor(AssociationType type, Name name, int minOccurs, int maxOCcurs, boolean isNillable) Creates an association descriptor.- Parameters:
 type- The type of the described association.name- The name of the described association.minOccurs- The minimum number of occurences of the described association.maxOCcurs- The maximum number of occurences of the described association.isNillable- Flag indicating wether the association is allowed to benull.
 - 
createAttributeDescriptor
AttributeDescriptor createAttributeDescriptor(AttributeType type, Name name, int minOccurs, int maxOccurs, boolean isNillable, Object defaultValue) Creates an attribute descriptor.- Parameters:
 type- The type of the described attribute.name- The name of the described attribute.minOccurs- The minimum number of occurences of the described attribute.maxOccurs- The maximum number of occurences of the described attribute.isNillable- Flag indicating if the described attribute may have a null value.defaultValue- The default value of the described attribute.
 - 
createGeometryDescriptor
GeometryDescriptor createGeometryDescriptor(GeometryType type, Name name, int minOccurs, int maxOccurs, boolean isNillable, Object defaultValue) Creates a geometry descriptor.- Parameters:
 type- The type of the described attribute.name- The name of the described attribute.minOccurs- The minimum number of occurences of the described attribute.maxOccurs- The maximum number of occurences of the described attribute.isNillable- Flag indicating if the described attribute may have a null value.defaultValue- The default value of the described attribute.
 - 
createAssociationType
AssociationType createAssociationType(Name name, AttributeType relatedType, boolean isAbstract, List<Filter> restrictions, AssociationType superType, InternationalString description) Creates an association type.- Parameters:
 name- The name of the type.relatedType- The type of attributes referenced by the association.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the association.superType- Parent type.description- A description of the type..
 - 
createAttributeType
AttributeType createAttributeType(Name name, Class<?> binding, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates an attribute type.- Parameters:
 name- The name of the type.binding- The class that values of attributes of the type.isIdentifiable- Flag indicating if the attribute is identifiable.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the attribute.superType- Parent type.description- A description of the type.
 - 
createGeometryType
GeometryType createGeometryType(Name name, Class<?> binding, CoordinateReferenceSystem crs, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a geometric attribute type.- Parameters:
 name- The name of the type.binding- The class of values of attributes of the type.crs- The coordinate reference system of the type.isIdentifiable- Flag indicating if the attribute is identifiable.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the attribute.superType- Parent type.description- A description of the type.
 - 
createComplexType
ComplexType createComplexType(Name name, Collection<PropertyDescriptor> schema, boolean isIdentifiable, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a complex type.- Parameters:
 name- The name of the type.schema- Collection of property descriptors which define the type.isIdentifiable- Flag indicating if the attribute is identifiable.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the attribute.superType- Parent type.description- A description of the type.
 - 
createFeatureType
FeatureType createFeatureType(Name name, Collection<PropertyDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a feature type.- Parameters:
 name- The name of the type.schema- Collection of property descriptors which define the type.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the attribute.superType- Parent type.description- A description of the type.
 - 
createSimpleFeatureType
SimpleFeatureType createSimpleFeatureType(Name name, List<AttributeDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Creates a simple feature type.- Parameters:
 name- The name of the type.schema- List of attribute descriptors which define the type.isAbstract- Flag indicating if the type is abstract.restrictions- Set of restrictions on the attribute.superType- Parent type.description- A description of the type.
 
 -