Revision 92
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.spi/src/main/java/org/gvsig/vectorediting/lib/spi/DefaultEditingServiceinfo.java | ||
---|---|---|
9 | 9 |
import java.awt.Image; |
10 | 10 |
import java.util.List; |
11 | 11 |
|
12 |
import org.gvsig.fmap.dal.exception.DataException; |
|
13 | 12 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
13 |
import org.gvsig.fmap.geom.GeometryLocator; |
|
14 | 14 |
import org.gvsig.fmap.geom.type.GeometryType; |
15 | 15 |
import org.gvsig.vectorediting.lib.api.EditingServiceInfo; |
16 | 16 |
import org.gvsig.vectorediting.lib.api.EditingServiceParameter; |
... | ... | |
76 | 76 |
throws ServiceInformationException { |
77 | 77 |
int[] supportedTypes = getSupportedPrimitiveGeometryTypes(); |
78 | 78 |
GeometryType featureGeomType; |
79 |
GeometryType supportedGeomtype; |
|
79 | 80 |
try { |
80 | 81 |
featureGeomType = featureStore.getDefaultFeatureType() |
81 | 82 |
.getDefaultGeometryAttribute().getGeomType(); |
82 |
} |
|
83 |
catch (DataException e) { |
|
83 |
} catch (Exception e) { |
|
84 | 84 |
throw new ServiceInformationException("Can't get geometry type of " |
85 | 85 |
+ featureStore.getName(), e); |
86 | 86 |
} |
87 | 87 |
for (int i = 0; i < supportedTypes.length; i++) { |
88 |
if (featureGeomType.isTypeOf(supportedTypes[i])) { |
|
88 |
try { |
|
89 |
supportedGeomtype = GeometryLocator.getGeometryManager().getGeometryType(supportedTypes[i], featureGeomType.getSubType()); |
|
90 |
}catch (Exception e){ |
|
91 |
throw new ServiceInformationException("Can't get geometry type with type " |
|
92 |
+ supportedTypes[i] + " and subtype " + featureGeomType.getSubType(), e); |
|
93 |
} |
|
94 |
if (supportedGeomtype.isTypeOf(featureGeomType.getType())) { |
|
89 | 95 |
return true; |
90 | 96 |
} |
91 | 97 |
} |
Also available in: Unified diff