...
There are a couple of drawbacks to this:
- it introduced the possibility of error (the user has to look up the exactly correct attribute descriptor).
- It "mixing up "query" api with "metadata" description (a mistake me made earlier when Filter required an AttributeType)
- it is needlessly complicated
To back up this bug a code review of all feature store implementations show that:
- implementors noticed the waste of time and simply use the provided AttributeDescriptor as as String (using descriptor.getLocalName())
- i the case of JDBCDataStore they look up the correct attribute descriptor by Name and silently substitute.
API CHANGE
Before:
| Code Block |
|---|
interface implements FeatureStore<T,F> extends FeatureSource<T,F> {
...
modifyFeature( AttributeDescriptor type, Object value, Filter filter );
modifyFeature( AttributeDescriptor type[], Object value[], Filter filter );
...
}
|
...