Revision 28 org.gvsig.sextante/trunk/org.gvsig.sextante.app/org.gvsig.sextante.app.algorithm/org.gvsig.sextante.app.algorithm.base/src/main/java/org/gvsig/sextante/app/algorithm/base/core/DALFeaturePersister.java
DALFeaturePersister.java | ||
---|---|---|
20 | 20 |
|
21 | 21 |
package org.gvsig.sextante.app.algorithm.base.core; |
22 | 22 |
|
23 |
import java.util.Iterator; |
|
24 |
|
|
23 | 25 |
import org.gvsig.fmap.dal.exception.DataException; |
24 | 26 |
import org.gvsig.fmap.dal.feature.EditableFeature; |
25 | 27 |
import org.gvsig.fmap.dal.feature.Feature; |
28 |
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor; |
|
26 | 29 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
30 |
import org.gvsig.fmap.dal.feature.FeatureType; |
|
27 | 31 |
import org.gvsig.fmap.geom.exception.CreateGeometryException; |
28 | 32 |
import org.gvsig.fmap.geom.util.Converter; |
33 |
import org.gvsig.sextante.app.extension.core.gvVectorLayer; |
|
29 | 34 |
|
30 | 35 |
import com.vividsolutions.jts.geom.Geometry; |
31 | 36 |
|
32 | 37 |
import es.unex.sextante.core.Sextante; |
38 |
import es.unex.sextante.dataObjects.IVectorLayer; |
|
39 |
import es.unex.sextante.exceptions.UnsupportedOutputChannelException; |
|
33 | 40 |
|
34 | 41 |
/** |
35 | 42 |
* Writes features in a FeatureStore |
... | ... | |
62 | 69 |
*/ |
63 | 70 |
public EditableFeature addFeature(Feature feature, Geometry newGeom) throws CreateGeometryException, DataException { |
64 | 71 |
org.gvsig.fmap.geom.Geometry newDalGeom = Converter.jtsToGeometry(newGeom); |
65 |
EditableFeature feat = store.createNewFeature(); |
|
66 |
for (int i = 0; i < fieldNames.length; i++) |
|
67 |
try { |
|
68 |
feat.set(fieldNames[i], feature.get(fieldNames[i])); |
|
69 |
} catch (NullPointerException e) { |
|
70 |
|
|
71 |
} |
|
72 |
|
|
72 |
EditableFeature feat = store.createNewFeature(store.getDefaultFeatureType(), feature); |
|
73 | 73 |
feat.setGeometry("GEOMETRY", newDalGeom); |
74 | 74 |
store.insert(feat); |
75 | 75 |
return feat; |
... | ... | |
83 | 83 |
* @throws DataException |
84 | 84 |
*/ |
85 | 85 |
public EditableFeature addFeature(Feature feature, org.gvsig.fmap.geom.Geometry newGeom) throws CreateGeometryException, DataException { |
86 |
EditableFeature feat = store.createNewFeature(); |
|
87 |
for (int i = 0; i < fieldNames.length; i++) |
|
88 |
feat.set(fieldNames[i], feature.get(i)); |
|
89 |
|
|
86 |
EditableFeature feat = store.createNewFeature(store.getDefaultFeatureType(), feature); |
|
90 | 87 |
feat.setGeometry(fieldNames.length, newGeom); |
91 | 88 |
store.insert(feat); |
92 | 89 |
return feat; |
... | ... | |
104 | 101 |
feature.set(fieldNames[i], feature.get(i)); |
105 | 102 |
|
106 | 103 |
feature.setGeometry(fieldNames.length, newGeom); |
104 |
store.update(feature); |
|
107 | 105 |
return feature; |
108 | 106 |
} |
109 | 107 |
|
Also available in: Unified diff