Statistics
| Revision:

root / trunk / libraries / libDataSourceBaseDrivers / src / org / gvsig / data / datastores / vectorial / file / shp / ShpFeature.java @ 20501

History | View | Annotate | Download (2.2 KB)

1
package org.gvsig.data.datastores.vectorial.file.shp;
2

    
3
import java.text.DateFormat;
4
import java.text.ParseException;
5
import java.util.Date;
6
import java.util.Iterator;
7
import java.util.List;
8
import java.util.Locale;
9

    
10
import org.gvsig.data.datastores.vectorial.file.dbf.DBFFeature;
11
import org.gvsig.data.datastores.vectorial.file.dbf.DBFStore;
12
import org.gvsig.data.datastores.vectorial.file.dbf.utils.DbaseFile;
13
import org.gvsig.data.exception.ReadException;
14
import org.gvsig.data.spatialprovisional.IExtent;
15
import org.gvsig.data.vectorial.DefaultAttributeDescriptor;
16
import org.gvsig.data.vectorial.Feature;
17
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
18
import org.gvsig.data.vectorial.IFeatureID;
19
import org.gvsig.data.vectorial.IFeatureType;
20
import org.gvsig.data.vectorial.IsNotFeatureSettingException;
21

    
22
import com.iver.cit.gvsig.fmap.core.IGeometry;
23

    
24

    
25
public class ShpFeature extends DBFFeature{
26
        protected static Locale ukLocale = new Locale("en", "UK");
27
//        private SHPStore store;
28
//        private long featureIndex;
29

    
30
        ShpFeature(IFeatureType featureType, SHPStore store,long featureIndex) throws ReadException {
31
                super(featureType,store,featureIndex);
32
                load();
33
//                this.store=store;
34
//                this.featureIndex=featureIndex;
35

    
36
        }
37

    
38

    
39

    
40
        protected void loadValue(IFeatureAttributeDescriptor descriptor) throws ReadException, IsNotFeatureSettingException {
41
                if (descriptor.getDataType().equals(IFeatureAttributeDescriptor.TYPE_GEOMETRY)){
42
                        this.setGeometry(((DefaultAttributeDescriptor)descriptor).originalPosition(), ((SHPStore)store).getGeometry(featureIndex) );
43
                } else {
44
                        super.loadValue(descriptor);
45
                }
46
        }
47

    
48

    
49

    
50
        public IFeatureID getID() {
51
                return new ShpFeatureID((SHPStore)this.store,featureIndex);
52
        }
53

    
54
        public IExtent getExtent() {
55
                return ((SHPStore)store).getBoundingBox(featureIndex);
56
        }
57

    
58
        public List getAllSRS() {
59
                // TODO Auto-generated method stub
60
                return null;
61
        }
62

    
63
        public String getDefaultSRS() {
64
                // TODO Auto-generated method stub
65
                return null;
66
        }
67

    
68
        public int[] getGeometryTypes() {
69
                IGeometry geometry= (IGeometry)getDefaultGeometry();
70
                if (geometry!=null)
71
                        return new int[]{geometry.getGeometryType()};
72
                return null;
73
        }
74

    
75

    
76

    
77

    
78
}