Revision 44669 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.dbf/src/main/java/org/gvsig/fmap/dal/store/dbf/DBFFilesystemServerProvider.java

View differences:

DBFFilesystemServerProvider.java
145 145

  
146 146
					writer.begin(
147 147
                                                params, 
148
                                                fixFeatureType(params.getDefaultFeatureType()), 
148
//                                                fixFeatureType(params.getDefaultFeatureType()), 
149
                                                params.getDefaultFeatureType(), 
149 150
                                                0
150 151
                                        );
151 152
					writer.end();
......
213 214
		// Do nothing
214 215
	}
215 216

  
216
        protected EditableFeatureType fixFeatureType(FeatureType featureType) {
217
            EditableFeatureType newFeatureType;
218
            
219
            if( featureType instanceof EditableFeatureType ) {
220
                newFeatureType = (EditableFeatureType) featureType.getCopy();
221
            } else {
222
                newFeatureType = featureType.getEditable();
223
            }
224
            
225
            for( int i=0; i<newFeatureType.size(); i++ ) {
226
                EditableFeatureAttributeDescriptor attr = (EditableFeatureAttributeDescriptor) newFeatureType.getAttributeDescriptor(i);
227
                String s; 
228
                switch(attr.getType()) {
229
                case DataTypes.INT:
230
                    s = String.valueOf(Integer.MAX_VALUE);
231
                    attr.setSize(18);
232
                    attr.setPrecision(0);
233
                    break;
234
                case DataTypes.LONG:
235
                    s = String.valueOf(Long.MAX_VALUE);
236
                    attr.setSize(18);
237
                    attr.setPrecision(0);
238
                    break;
239
                case DataTypes.FLOAT:
240
                    attr.setSize(18);
241
                    attr.setPrecision(6);
242
                    break;
243
                case DataTypes.DOUBLE:
244
                    attr.setSize(18);
245
                    attr.setPrecision(6);
246
                    break;
247
                }
248
            }
249
            return newFeatureType;
250
        }
217
//        protected EditableFeatureType fixFeatureType(FeatureType featureType) {
218
//            EditableFeatureType newFeatureType;
219
//            
220
//            if( featureType instanceof EditableFeatureType ) {
221
//                newFeatureType = (EditableFeatureType) featureType.getCopy();
222
//            } else {
223
//                newFeatureType = featureType.getEditable();
224
//            }
225
//            
226
//            for( int i=0; i<newFeatureType.size(); i++ ) {
227
//                EditableFeatureAttributeDescriptor attr = (EditableFeatureAttributeDescriptor) newFeatureType.getAttributeDescriptor(i);
228
//                String s; 
229
//                switch(attr.getType()) {
230
//                case DataTypes.INT:
231
//                    s = String.valueOf(Integer.MAX_VALUE);
232
//                    attr.setSize(10);
233
//                    attr.setPrecision(0);
234
//                    break;
235
//                case DataTypes.LONG:
236
//                    s = String.valueOf(Long.MAX_VALUE);
237
//                    attr.setSize(18);
238
//                    attr.setPrecision(0);
239
//                    break;
240
//                case DataTypes.FLOAT:
241
//                    attr.setSize(10);
242
//                    attr.setPrecision(6);
243
//                    break;
244
//                case DataTypes.DOUBLE:
245
//                    attr.setSize(18);
246
//                    attr.setPrecision(6);
247
//                    break;
248
//                }
249
//            }
250
//            return newFeatureType;
251
//        }
251 252
        
252 253
}

Also available in: Unified diff