Statistics
| Revision:

svn-gvsig-desktop / branches / v2_0_0_prep / libraries / org.gvsig.geocoding / src-test / org / gvsig / geocoding / massive / NewDBFTest.java @ 32479

History | View | Annotate | Download (3.75 KB)

1
package org.gvsig.geocoding.massive;
2

    
3
import java.io.File;
4

    
5
import org.gvsig.fmap.dal.DALLocator;
6
import org.gvsig.fmap.dal.DataManager;
7
import org.gvsig.fmap.dal.DataServerExplorer;
8
import org.gvsig.fmap.dal.DataSet;
9
import org.gvsig.fmap.dal.DataTypes;
10
import org.gvsig.fmap.dal.NewDataStoreParameters;
11
import org.gvsig.fmap.dal.exception.DataException;
12
import org.gvsig.fmap.dal.feature.EditableFeature;
13
import org.gvsig.fmap.dal.feature.EditableFeatureType;
14
import org.gvsig.fmap.dal.feature.FeatureSet;
15
import org.gvsig.fmap.dal.feature.FeatureStore;
16
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
17
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemServerExplorer;
18
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemServerExplorerParameters;
19
import org.gvsig.fmap.dal.store.dbf.DBFNewStoreParameters;
20
import org.gvsig.fmap.dal.store.dbf.DBFStoreParameters;
21
import org.gvsig.fmap.dal.store.dbf.DBFStoreProvider;
22
import org.slf4j.Logger;
23
import org.slf4j.LoggerFactory;
24

    
25
/**
26
 * Test
27
 * 
28
 * @author <a href="mailto:jsanz@prodevelop.es"> Jorge Gaspar Sanz Salinas</a>
29
 * @author <a href="mailto:vsanjaime@prodevelop.es"> Vicent Sanjaime Calvet</a>
30
 */
31
public class NewDBFTest extends
32
                org.gvsig.tools.junit.AbstractLibraryAutoInitTestCase {
33

    
34
        private Logger log = LoggerFactory.getLogger(NewDBFTest.class);
35
        private DataManager manager = null;
36
        private FeatureStore store = null;
37

    
38
        /**
39
         * tearDown
40
         */
41
        protected void tearDown() throws Exception {
42

    
43
        }
44

    
45
        /**
46
         * Simple search
47
         * 
48
         * @throws DataException
49
         */
50
        public void testNewDBFFile() throws Exception {
51

    
52
                File dbfFile = File.createTempFile("0_midbf", ".dbf");
53

    
54
                // build DBF store
55
                File parentfile = dbfFile.getParentFile();
56

    
57
                FilesystemServerExplorerParameters exParam = null;
58

    
59
                exParam = (FilesystemServerExplorerParameters) manager
60
                                .createServerExplorerParameters(FilesystemServerExplorer.NAME);
61

    
62
                exParam.setRoot(parentfile.getAbsolutePath());
63

    
64
                DataServerExplorer serverExplorer = manager
65
                                .createServerExplorer(exParam);
66

    
67
                NewDataStoreParameters newDBFParams = serverExplorer
68
                                .getAddParameters(DBFStoreProvider.NAME);
69
                ((DBFNewStoreParameters) newDBFParams).setDBFFile(dbfFile);
70
                EditableFeatureType featureType = generateFeatureTypeAllResults(newDBFParams);
71
                ((DBFNewStoreParameters) newDBFParams)
72
                                .setDefaultFeatureType(featureType);
73

    
74
                serverExplorer.add(newDBFParams, true);
75

    
76
                DBFStoreParameters dbfParameters = (DBFStoreParameters) manager
77
                                .createStoreParameters(DBFStoreProvider.NAME);
78
                dbfParameters.setFile(dbfFile);
79

    
80
                store = (FeatureStore) manager.createStore(dbfParameters);
81
                store.edit(FeatureStore.MODE_APPEND);
82

    
83
                EditableFeature feat1 = store.createNewFeature();
84
                feat1.setInt("CAMPO1", 5);
85
                feat1.setDouble("CAMPO2", 5.658);
86
                store.insert(feat1);
87

    
88
                EditableFeature feat2 = store.createNewFeature();
89
                feat2.setInt("CAMPO1", 4);
90
                feat2.setDouble("CAMPO2", 2.876);
91
                store.insert(feat2);
92

    
93
                store.finishEditing();
94
                store.dispose();
95

    
96
                assertTrue(dbfFile.exists());
97
//                FeatureSet feats = store.getFeatureSet();
98
//                long cant = feats.getSize();
99
//                log.debug("Features number:   " + cant);
100
//                assertEquals(2, cant);
101
//                // dbfFile.delete();
102
        }
103

    
104
        /**
105
         * Build feature type dbf all results
106
         * 
107
         * @return
108
         */
109
        private EditableFeatureType generateFeatureTypeAllResults(
110
                        NewDataStoreParameters params) {
111

    
112
                EditableFeatureType eFType = (EditableFeatureType) ((NewFeatureStoreParameters) params)
113
                                .getDefaultFeatureType();
114
                eFType.add("CAMPO1", DataTypes.INT).setSize(10);
115
                eFType.add("CAMPO2", DataTypes.DOUBLE).setSize(10);
116

    
117
                return eFType;
118
        }
119

    
120
        @Override
121
        protected void doSetUp() throws Exception {
122
                manager = DALLocator.getDataManager();
123

    
124
        }
125
}