Class UniqueNameFeatureTypeFactoryImpl
Object
FeatureTypeFactoryImpl
UniqueNameFeatureTypeFactoryImpl
- All Implemented Interfaces:
FeatureTypeFactory
- Direct Known Subclasses:
ComplexFeatureTypeFactoryImpl
A specialisation of
FeatureTypeFactoryImpl that returns UniqueNameFeatureTypeImpl instead of
FeatureTypeImpl to avoid equality tests on types with cyclic definitions.
Users of this factory must not use it to create multiple FeatureType instances with the same name unless they represent the same type, because other parts of the implementation will assume they are equal, and if they are not, Bad Things Will Happen.
- Author:
- Ben Caradoc-Davies (CSIRO Earth Science and Resource Engineering)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateFeatureType(Name name, Collection<PropertyDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Override superclass to returnUniqueNameFeatureTypeImplinstead ofFeatureTypeImpl.Methods inherited from class FeatureTypeFactoryImpl
createAssociationDescriptor, createAssociationType, createAttributeDescriptor, createAttributeType, createComplexType, createGeometryDescriptor, createGeometryType, createSchema, createSimpleFeatureType, getCRSFactory, getFilterFactory, setCRSFactory, setFilterFactory
-
Constructor Details
-
UniqueNameFeatureTypeFactoryImpl
public UniqueNameFeatureTypeFactoryImpl()
-
-
Method Details
-
createFeatureType
public FeatureType createFeatureType(Name name, Collection<PropertyDescriptor> schema, GeometryDescriptor defaultGeometry, boolean isAbstract, List<Filter> restrictions, AttributeType superType, InternationalString description) Override superclass to returnUniqueNameFeatureTypeImplinstead ofFeatureTypeImpl.- Specified by:
createFeatureTypein interfaceFeatureTypeFactory- Overrides:
createFeatureTypein classFeatureTypeFactoryImpl- 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.- See Also:
-