Statistics
| Revision:

root / branches / Mobile_Compatible_Hito_1 / libFMap / src-data / org / gvsig / data / vectorial / Feature.java @ 21606

History | View | Annotate | Download (6.14 KB)

1
package org.gvsig.data.vectorial;
2

    
3
import java.util.Date;
4
import java.util.HashMap;
5

    
6
public abstract class Feature extends HashMap implements IFeature{
7
        protected IFeatureType featureType;
8
        protected Object defaultGeometry;
9
        protected Object object;
10

    
11
        public Feature(IFeatureType featureType){
12
                this.featureType=featureType;
13
        }
14
        public IFeatureType getType() {
15
                return featureType;
16
        }
17

    
18
        public Object getDefaultGeometry() {
19
                return defaultGeometry;
20
        }
21

    
22
        public Object get(String name) {
23
                return super.get(name);
24
        }
25

    
26
        public int getInt(String name) {
27
                Integer value=(Integer)super.get(name);
28
                if (value==null)
29
                        return 0;
30
                return value.intValue();
31
        }
32

    
33
        public boolean getBoolean(String name) {
34
                Boolean value=(Boolean)super.get(name);
35
                if (value==null)
36
                        return false;
37
                return value.booleanValue();
38
        }
39

    
40
        public long getLong(String name) {
41
                Long value=(Long)super.get(name);
42
                if (value==null)
43
                        return 0L;
44
                return value.longValue();
45
        }
46

    
47
        public float getFloat(String name) {
48
                Float value=(Float)super.get(name);
49
                if (value==null)
50
                        return 0F;
51
                return value.floatValue();
52
        }
53

    
54
        public double getDouble(String name) {
55
                Double value=(Double)super.get(name);
56
                if (value==null)
57
                        return 0D;
58
                return value.doubleValue();
59
        }
60
        public String getString(String name) {
61
                String value=(String)super.get(name);
62
                return value;
63
        }
64
        public String getString(int index) {
65
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
66
                String value=(String)super.get(name);
67
                return value;
68
        }
69
        public Object get(int index) {
70
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
71
                return super.get(name);
72
        }
73

    
74
        public IFeature getFeature(int index) {
75
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
76
                IFeature value=(IFeature)super.get(name);
77
                return value;
78
        }
79

    
80
        public Object[] getArray(int index) {
81
                // TODO Auto-generated method stub
82
                return null;
83
        }
84

    
85
        public int getInt(int index) {
86
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
87
                Integer value=(Integer)super.get(name);
88
                if (value==null)
89
                        return 0;
90
                return value.intValue();
91
        }
92

    
93
        public boolean getBoolean(int index) {
94
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
95
                Boolean value=(Boolean)super.get(name);
96
                if (value==null)
97
                        return false;
98
                return value.booleanValue();
99
        }
100

    
101
        public long getLong(int index) {
102
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
103
                Long value=(Long)super.get(name);
104
                if (value==null)
105
                        return 0L;
106
                return value.longValue();
107
        }
108

    
109
        public float getFloat(int index) {
110
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
111
                Float value=(Float)super.get(name);
112
                if (value==null)
113
                        return 0F;
114
                return value.floatValue();
115
        }
116

    
117
        public double getDouble(int index) {
118
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
119
                Double value=(Double)super.get(name);
120
                if (value==null)
121
                        return 0D;
122
                return value.doubleValue();
123
        }
124

    
125
        public Date getDate(int index) {
126
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
127
                return (Date)super.get(name);
128
        }
129

    
130
        public Date getDate(String name) {
131
                return (Date)super.get(name);
132
        }
133
        public void set(String name, Object value) {
134
                put(name,value);
135
        }
136

    
137
        public void set(String name, int value) {
138
                put(name,new Integer(value));
139

    
140
        }
141

    
142
        public void set(String name, boolean value) {
143
                put(name,new Boolean(value));
144
        }
145

    
146
        public void set(String name, long value) {
147
                put(name,new Long(value));
148
        }
149

    
150
        public void set(String name, float value) {
151
                put(name,new Float(value));
152
        }
153

    
154
        public void set(String name, double value) {
155
                put(name,new Double(value));
156
        }
157

    
158
        public void set(int index, Object value) {
159
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
160
                put(name,value);
161
        }
162

    
163
        public void set(int index, int value) {
164
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
165
                put(name,new Integer(value));
166
        }
167

    
168
        public void set(int index, boolean value) {
169
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
170
                put(name,new Boolean(value));
171
        }
172

    
173
        public void set(int index, long value) {
174
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
175
                put(name,new Long(value));
176
        }
177

    
178
        public void set(int index, float value) {
179
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
180
                put(name,new Float(value));
181
        }
182

    
183
        public void set(int index, double value) {
184
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
185
                put(name,new Double(value));
186
        }
187

    
188
        public void validateEnd(IFeatureStore featureStore) {
189
                getType().validateFeatureEnd(this,featureStore);
190

    
191
        }
192

    
193
        public void validateModification(IFeatureStore featureStore) {
194
                getType().validateFeatureModifiction(this,featureStore);
195
        }
196

    
197
        public void validate(IFeatureStore featureStore) {
198
                getType().validateFeature(this,featureStore);
199
        }
200
        public IFeature getFeature(String name) {
201
                return (IFeature)super.get(name);
202
        }
203
        public Object getGeometry(int index) {
204
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
205
                return super.get(name);
206
        }
207
        public Object getGeometry(String name) {
208
                return super.get(name);
209
        }
210
        public byte getByte(int index) {
211
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
212
                Byte value=(Byte)super.get(name);
213
                if (value==null)
214
                        return 0;
215
                return value.byteValue();
216
        }
217
        public byte getByte(String name) {
218
                Byte value=(Byte)super.get(name);
219
                if (value==null)
220
                        return 0;
221
                return value.byteValue();
222
        }
223
        public void set(int index, byte value) {
224
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
225
                put(name,new Byte(value));
226
        }
227
        public void set(String name, byte value) {
228
                put(name,new Byte(value));
229
        }
230
        public void setGeometry(String name,Object geometry) {
231
                put(name,geometry);
232
                if (featureType.getDefaultGeometry().equals(name)){
233
                        defaultGeometry=geometry;
234
                }
235
        }
236
        public void setGeometry(int index,Object geometry) {
237
                String name=((IFeatureAttributeDescriptor)featureType.get(index)).getName();
238
                put(name,geometry);
239
                if (featureType.getDefaultGeometry().equals(name)){
240
                        defaultGeometry=geometry;
241
                }
242
        }
243
}