Revision 47643 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.csv/src/main/java/org/gvsig/fmap/dal/store/simplereader/SimpleReaderStoreParameters.java

View differences:

SimpleReaderStoreParameters.java
32 32
import org.gvsig.basicformats.CPGFile;
33 33
import org.gvsig.basicformats.FormatsFile;
34 34
import org.gvsig.basicformats.PRJFile;
35
import org.gvsig.fmap.dal.DALLocator;
35 36
import static org.gvsig.fmap.dal.DataParameters.CRS_PARAMTER_NAME;
36 37
import org.gvsig.fmap.dal.FileHelper;
37 38
import org.gvsig.fmap.dal.exception.ValidateDataParametersException;
39
import org.gvsig.fmap.dal.feature.EditableFeatureType;
38 40
import org.gvsig.fmap.dal.feature.FeatureType;
39 41
import org.gvsig.fmap.dal.feature.OpenFeatureStoreParameters;
40 42
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemStoreParameters;
......
75 77
        this.setDynValue(DataStoreProviderServices.PROVIDER_PARAMTER_NAME, name);
76 78
    }
77 79

  
78
    protected FeatureType getFeatureType() {
80
    protected SimpleReaderFeatureTypeLoader getFeatureTypeLoader() {
79 81
        return null;
80 82
    }
81 83
    
......
341 343
        }
342 344
        super.validate();
343 345
    }
346
    
347
    protected FeatureType getFeatureType() {
348
        if( this.featureType==null ) {
349
            try {
350
                SimpleReaderFeatureTypeLoader featureTypeLoader = this.getFeatureTypeLoader();
351
                if( featureTypeLoader!=null ) {
352
                    EditableFeatureType ftype = DALLocator.getDataManager().createFeatureType();
353
                    featureTypeLoader.loadFeatureType(ftype, false, null);
354
                    boolean all_fields_declare_type = featureTypeLoader.isAllFieldsDeclareType();
355
                    defaultValueOfAutomaticTypesDetection = !all_fields_declare_type;
356
                    this.featureType = ftype;
357
                }
358
            } catch (Exception ex) {
359
                LOGGER.debug("Can't detect feature of json file", ex);
360
                // Do nothing, continue
361
            }
362
        }
363
        return this.featureType;
364
    }
365
    
344 366
}

Also available in: Unified diff