Revision 41637 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.shp/src/main/java/org/gvsig/fmap/dal/store/shp/SHPFilesystemServerProvider.java
SHPFilesystemServerProvider.java | ||
---|---|---|
25 | 25 |
|
26 | 26 |
import java.io.File; |
27 | 27 |
import java.io.IOException; |
28 |
import javax.xml.datatype.DatatypeConfigurationException; |
|
28 | 29 |
|
29 | 30 |
import org.gvsig.fmap.dal.DALLocator; |
30 | 31 |
import org.gvsig.fmap.dal.DataManager; |
... | ... | |
46 | 47 |
import org.gvsig.fmap.dal.resource.spi.ResourceProvider; |
47 | 48 |
import org.gvsig.fmap.dal.serverexplorer.filesystem.AbsolutePathRequiredException; |
48 | 49 |
import org.gvsig.fmap.dal.store.dbf.DBFFilesystemServerProvider; |
50 |
import org.gvsig.tools.dataTypes.DataTypes; |
|
49 | 51 |
|
50 | 52 |
/** |
51 | 53 |
* @author jmvivo |
... | ... | |
139 | 141 |
throws CreateException { |
140 | 142 |
|
141 | 143 |
final SHPNewStoreParameters params = (SHPNewStoreParameters) parameters; |
142 |
final FeatureType fType; |
|
143 |
// TODO Comprobar que el campo de geometria |
|
144 |
final EditableFeatureType dbfFtype; |
|
145 |
if (params.getDefaultFeatureType() instanceof EditableFeatureType) { |
|
146 |
fType = params.getDefaultFeatureType(); |
|
147 |
dbfFtype = (EditableFeatureType) fType.getCopy(); |
|
148 |
} else { |
|
149 |
fType = params.getDefaultFeatureType(); |
|
150 |
dbfFtype = fType.getEditable(); |
|
151 |
params.setDefaultFeatureType(fType.getEditable()); |
|
152 |
} |
|
144 |
final EditableFeatureType fType = params.getDefaultFeatureType(); |
|
153 | 145 |
|
146 |
// Parche para crear con el tama?o que tocan los campos del DBF |
|
147 |
// Asumo que el dbfFtype se va a destruir tras crear el dbf. |
|
148 |
final EditableFeatureType dbfFtype = fixFeatureType(fType); |
|
149 |
|
|
154 | 150 |
SHPStoreProvider.removeGeometryColumn(dbfFtype); |
151 |
|
|
155 | 152 |
EditableFeatureAttributeDescriptor efad = SHPStoreProvider.addGeometryColumn((EditableFeatureType) fType); |
156 | 153 |
efad.setGeometryType(params.getGeometryType()); |
157 | 154 |
|
... | ... | |
233 | 230 |
resource.removeConsumer(this); |
234 | 231 |
} |
235 | 232 |
} |
236 |
|
|
233 |
|
|
237 | 234 |
// private boolean closeResources(FileResource[] resources) |
238 | 235 |
// throws ResourceException { |
239 | 236 |
// for (int i = 0; i < resources.length; i++) { |
Also available in: Unified diff