use of eu.esdihumboldt.hale.io.gml.geometry.Geometries in project hale by halestudio.
the class XmlTypeUtil method setSpecialBinding.
/**
* Determine if there is a special binding available for a type (apart from
* explicit definition in the schema)
*
* @param type the type definition
* @return the special binding or <code>null</code>
*/
public static boolean setSpecialBinding(XmlTypeDefinition type) {
// determine special bindings
// geometry bindings
Geometries geoms = Geometries.getInstance();
try {
Iterable<TypeConstraint> constraints = geoms.getTypeConstraints(type);
if (constraints != null) {
// GeometryType)
for (TypeConstraint constraint : constraints) {
type.setConstraint(constraint);
}
}
// enable augmented value, as the derived geometry will be stored as
// the value
// XXX should this be done in handler?!
type.setConstraint(AugmentedValueFlag.ENABLED);
type.setConstraint(SkipGeometryValidation.getInstance());
} catch (GeometryNotSupportedException e) {
// ignore - is no geometry or is not recognized
}
// otherwise the super type binding will be used
return false;
}
Aggregations