Revision 22333 branches/v2_0_0_prep/libraries/libFMap_data/src/org/gvsig/fmap/data/vectorial/joinstore/JoinFeatureStore.java
JoinFeatureStore.java | ||
---|---|---|
234 | 234 |
return storePrimary.canWriteGeometry(gvSIGgeometryType) && storeSecondary.canWriteGeometry(gvSIGgeometryType); |
235 | 235 |
} |
236 | 236 |
|
237 |
public Feature getByIndex(long index) throws ReadException { |
|
238 |
// TODO falta modificar el featureType para pedir solo los atributos que tenga en el primaryStore. |
|
239 |
Feature feature=getPrimaryStore().getByIndex(index); |
|
240 |
|
|
241 |
Object obj=feature.get(((JoinFeatureStoreParameters)this.parameters).getLinkFieldPrimary()); |
|
242 |
|
|
243 |
Iterator iter=null; |
|
244 |
JoinFeature complexFeature=null; |
|
245 |
try { |
|
246 |
iter = getSecondaryStore().getDataCollection(getPrimaryStore().getDefaultFeatureType(),linkFieldSecondary + " = " + obj.toString(),null).iterator(); |
|
247 |
|
|
248 |
Feature fea = null; |
|
249 |
while (iter.hasNext()) { |
|
250 |
fea = (Feature) iter.next(); |
|
251 |
break; |
|
252 |
} |
|
253 |
complexFeature=new JoinFeature(getDefaultFeatureType(),feature,fea); |
|
254 |
} catch (ReadException e) { |
|
255 |
e.printStackTrace(); |
|
256 |
} |
|
257 |
return complexFeature; |
|
258 |
} |
|
259 |
|
|
260 | 237 |
public FeatureStore getPrimaryStore() { |
261 | 238 |
return storePrimary; |
262 | 239 |
} |
Also available in: Unified diff