Revision 44541 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.spi/src/main/java/org/gvsig/fmap/dal/feature/spi/memory/AbstractMemoryStoreProvider.java
AbstractMemoryStoreProvider.java | ||
---|---|---|
121 | 121 |
*/ |
122 | 122 |
public FeatureProvider createFeatureProvider(FeatureType featureType)throws DataException { |
123 | 123 |
this.open(); |
124 |
return new DefaultFeatureProvider(featureType);
|
|
124 |
return new MemoryFeatureProvider(featureType, this.createNewOID());
|
|
125 | 125 |
} |
126 | 126 |
|
127 | 127 |
/* |
... | ... | |
140 | 140 |
super.doDispose(); |
141 | 141 |
data = null; |
142 | 142 |
} |
143 |
|
|
144 |
public class MemoryFeatureProvider extends DefaultFeatureProvider { |
|
145 |
|
|
146 |
public MemoryFeatureProvider(FeatureType type) { |
|
147 |
super(type); |
|
148 |
} |
|
149 |
|
|
150 |
public MemoryFeatureProvider(FeatureType featureType, Object createNewOID) { |
|
151 |
super(featureType, createNewOID); |
|
152 |
} |
|
153 |
|
|
154 |
@Override |
|
155 |
public FeatureType getType() { |
|
156 |
try { |
|
157 |
if (getStoreServices().getFeatureTypes().size()==1) { |
|
158 |
return getStoreServices().getDefaultFeatureType(); |
|
159 |
} else { |
|
160 |
return super.getType(); |
|
161 |
} |
|
162 |
} catch (DataException ex) { |
|
163 |
return super.getType(); |
|
164 |
} |
|
165 |
} |
|
166 |
} |
|
143 | 167 |
} |
Also available in: Unified diff