Statistics
| Revision:

root / branches / v2_0_0_prep / libraries / libFMap_dataFile / src-test / org / gvsig / fmap / data / feature / file / dbf / DBFTest.java @ 22934

History | View | Annotate | Download (5.17 KB)

1
package org.gvsig.fmap.data.feature.file.dbf;
2

    
3
import java.io.File;
4
import java.util.Iterator;
5

    
6
import junit.framework.TestCase;
7

    
8
import org.gvsig.exceptions.BaseException;
9
import org.gvsig.fmap.data.CloseException;
10
import org.gvsig.fmap.data.DataManager;
11
import org.gvsig.fmap.data.InitializeException;
12
import org.gvsig.fmap.data.ReadException;
13
import org.gvsig.fmap.data.feature.Feature;
14
import org.gvsig.fmap.data.feature.FeatureAttributeDescriptor;
15
import org.gvsig.fmap.data.feature.FeatureCollection;
16
import org.gvsig.fmap.data.feature.FeatureStore;
17
import org.gvsig.fmap.data.feature.FeatureType;
18
import org.gvsig.fmap.data.feature.file.DataStoreTest;
19
import org.gvsig.fmap.data.feature.visitor.PrintlnFeaturesVisitor;
20

    
21
public class DBFTest extends TestCase {
22
        private File file = new File(DataStoreTest.class.getResource("data/prueba.dbf").getFile());
23

    
24

    
25
        public static void main(String[] args) {
26
                junit.textui.TestRunner.run(DBFTest.class);
27
        }
28

    
29
        protected void setUp() throws Exception {
30
                super.setUp();
31
        }
32

    
33
        public void testInitialize() {
34
                DataManager manager = DataManager.getManager();
35
                Register.selfRegister();
36

    
37
                FeatureStore store=null;
38
                DBFStoreParameters dbfParameters=null;
39

    
40
                try {
41
                        dbfParameters=(DBFStoreParameters)manager.createDataStoreParameters(DBFStore.DATASTORE_NAME);
42
                } catch (InitializeException e3) {
43
                        e3.printStackTrace();
44
                        fail();
45
                }
46
                dbfParameters.setFile(file);
47

    
48

    
49
                try {
50
                        store = (FeatureStore)manager.createDataStore(dbfParameters);
51
                } catch (InitializeException e) {
52
                        // TODO Auto-generated catch block
53
                        e.printStackTrace();
54
                }
55

    
56
                FeatureType ft=store.getDefaultFeatureType();
57
                FeatureCollection featureCollection=null;
58
                try {
59
                        featureCollection = (FeatureCollection)store.getDataCollection(ft,null,null);
60
                } catch (ReadException e1) {
61
                        // TODO Auto-generated catch block
62
                        e1.printStackTrace();
63
                }
64
                Iterator iter = featureCollection.iterator();
65
                while (iter.hasNext()) {
66

    
67
                        Feature feature = (Feature)iter.next();
68
                        System.out.println("DBF Feature ------------------- ");
69
                        Iterator iterator=ft.iterator();
70
                        while (iterator.hasNext()) {
71
                                FeatureAttributeDescriptor descriptor = (FeatureAttributeDescriptor) iterator.next();
72
                                int i=descriptor.ordinal();
73
                                String type=descriptor.getDataType();
74
                                System.out.print(descriptor + "----- ");
75
                                if (type.equals(FeatureAttributeDescriptor.TYPE_BOOLEAN)){
76
                                        System.out.println(feature.getBoolean(i));
77
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_BYTE)){
78
                                        System.out.println(feature.getByte(i));
79
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_DATE)){
80
                                        System.out.println(feature.getDate(i));
81
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_DOUBLE)){
82
                                        System.out.println(feature.getDouble(i));
83
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_FLOAT)){
84
                                        System.out.println(feature.getFloat(i));
85
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_INT)){
86
                                        System.out.println(feature.getInt(i));
87
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_LONG)){
88
                                        System.out.println(feature.getLong(i));
89
                                }else if (type.equals(FeatureAttributeDescriptor.TYPE_STRING)){
90
                                        System.out.println(feature.getString(i));
91
                                }
92
                        }
93
                }
94
                iter = null;
95
                featureCollection.dispose();
96

    
97
                try {
98
                        store.dispose();
99
                } catch (CloseException e) {
100
                        // TODO Auto-generated catch block
101
                        e.printStackTrace();
102
                }
103

    
104
        }
105

    
106
        public void test_2() {
107
                DataManager manager = DataManager.getManager();
108
                Register.selfRegister();
109

    
110
                FeatureStore store = null;
111
                DBFStoreParameters dbfParameters = null;
112

    
113
                try {
114
                        dbfParameters = (DBFStoreParameters) manager
115
                                        .createDataStoreParameters(DBFStore.DATASTORE_NAME);
116
                } catch (InitializeException e3) {
117
                        e3.printStackTrace();
118
                        fail();
119
                }
120
                dbfParameters.setFile(file);
121

    
122
                try {
123
                        store = (FeatureStore) manager.createDataStore(dbfParameters);
124
                } catch (InitializeException e) {
125
                        // TODO Auto-generated catch block
126
                        e.printStackTrace();
127
                }
128

    
129
                FeatureType ft = store.getDefaultFeatureType();
130
                FeatureCollection featureCollection = null;
131
                try {
132
                        featureCollection = (FeatureCollection) store.getDataCollection(
133
                                        new String[] { "NOMBRE", "TIPO" },
134
                                        null, null);
135
                } catch (ReadException e1) {
136
                        e1.printStackTrace();
137
                        fail();
138
                }
139

    
140
                assertEquals(featureCollection.getFeatureType().size(), 2);
141

    
142
                try {
143
                        featureCollection.accept(new PrintlnFeaturesVisitor(
144
                                        featureCollection.getFeatureType()));
145
                } catch (BaseException e1) {
146
                        e1.printStackTrace();
147
                        fail();
148
                }
149

    
150

    
151
                featureCollection.dispose();
152

    
153
                try {
154
                        store.dispose();
155
                } catch (CloseException e) {
156
                        // TODO Auto-generated catch block
157
                        e.printStackTrace();
158
                }
159

    
160
        }
161

    
162
        public void test_Resources(){
163

    
164
                DataManager manager = DataManager.getManager();
165
                Register.selfRegister();
166

    
167
                DBFStoreParameters dbfParameters=null;
168

    
169
                try {
170
                        dbfParameters=(DBFStoreParameters)manager.createDataStoreParameters(DBFStore.DATASTORE_NAME);
171
                } catch (InitializeException e) {
172
                        e.printStackTrace();
173
                        fail();
174
                }
175
                dbfParameters.setFile(file);
176

    
177
                DataStoreTest.doFileResourceTest(dbfParameters);
178
        }
179
}