Revision 37172 branches/v2_0_0_prep/extensions/org.gvsig.oracle/src/org/gvsig/fmap/dal/store/oracle/OracleUtils.java
OracleUtils.java | ||
---|---|---|
60 | 60 |
import org.gvsig.fmap.dal.exception.DataException; |
61 | 61 |
import org.gvsig.fmap.dal.feature.EditableFeatureType; |
62 | 62 |
import org.gvsig.fmap.dal.feature.Feature; |
63 |
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor; |
|
63 | 64 |
import org.gvsig.fmap.dal.feature.FeatureQuery; |
64 | 65 |
import org.gvsig.fmap.dal.feature.FeatureSet; |
65 | 66 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
67 |
import org.gvsig.fmap.dal.feature.FeatureType; |
|
68 |
import org.gvsig.fmap.dal.feature.spi.FeatureReferenceProviderServices; |
|
66 | 69 |
import org.gvsig.fmap.geom.Geometry; |
67 | 70 |
import org.gvsig.fmap.geom.GeometryLocator; |
68 | 71 |
import org.gvsig.fmap.geom.GeometryManager; |
... | ... | |
4362 | 4365 |
return resp.toString(); |
4363 | 4366 |
|
4364 | 4367 |
} |
4368 |
|
|
4369 |
|
|
4370 |
public static Object getId(FeatureReferenceProviderServices ref, FeatureType ft) { |
|
4371 |
|
|
4372 |
if (ft.hasOID()) { |
|
4373 |
return ref.getOID(); |
|
4374 |
} else { |
|
4375 |
|
|
4376 |
if (ref.getKeyNames() == null) { |
|
4377 |
return ref.getOID(); |
|
4378 |
} else { |
|
4379 |
FeatureAttributeDescriptor[] fadd = ft.getPrimaryKey(); |
|
4380 |
Object resp = ref.getKeyValue(fadd[0].getName()); |
|
4381 |
if (resp == null) { |
|
4382 |
logger.warn("Did not find PK in feat ref: " + fadd[0].getName()); |
|
4383 |
} |
|
4384 |
return resp; |
|
4385 |
} |
|
4386 |
} |
|
4365 | 4387 |
|
4388 |
} |
|
4389 |
|
|
4366 | 4390 |
} |
Also available in: Unified diff