Revision 29326 branches/v2_0_0_prep/libraries/libFMap_dal/src/org/gvsig/fmap/dal/feature/impl/DefaultFeatureStore.java
DefaultFeatureStore.java | ||
---|---|---|
71 | 71 |
import org.gvsig.fmap.dal.feature.spi.FeatureStoreProvider; |
72 | 72 |
import org.gvsig.fmap.dal.feature.spi.FeatureStoreProviderServices; |
73 | 73 |
import org.gvsig.fmap.dal.feature.spi.index.FeatureIndexProviderServices; |
74 |
import org.gvsig.fmap.dal.impl.DataStoreImplementation; |
|
74 | 75 |
import org.gvsig.fmap.dal.impl.DefaultDataManager; |
75 | 76 |
import org.gvsig.fmap.dal.resource.Resource; |
77 |
import org.gvsig.fmap.dal.spi.DataStoreProvider; |
|
76 | 78 |
import org.gvsig.fmap.geom.primitive.Envelope; |
77 | 79 |
import org.gvsig.tools.ToolsLocator; |
78 | 80 |
import org.gvsig.tools.dynobject.DelegatedDynObject; |
... | ... | |
95 | 97 |
import org.slf4j.Logger; |
96 | 98 |
import org.slf4j.LoggerFactory; |
97 | 99 |
|
98 |
final public class DefaultFeatureStore implements |
|
99 |
FeatureStoreProviderServices, |
|
100 |
Observer { |
|
100 |
final public class DefaultFeatureStore implements DataStoreImplementation, |
|
101 |
FeatureStoreProviderServices, FeatureStore, Observer { |
|
101 | 102 |
|
102 | 103 |
final static private Logger logger = LoggerFactory |
103 | 104 |
.getLogger(DefaultFeatureStore.class); |
... | ... | |
148 | 149 |
|
149 | 150 |
} |
150 | 151 |
|
151 |
public DefaultFeatureStore(DefaultDataManager manager, |
|
152 |
DataStoreParameters parameters, FeatureStoreProvider provider) |
|
153 |
throws InitializeException { |
|
154 |
initialize(manager, parameters, provider); |
|
155 |
} |
|
152 |
public void intializePhase1(DefaultDataManager dataManager, |
|
153 |
DataStoreParameters parameters) throws InitializeException { |
|
156 | 154 |
|
157 |
private void initialize(DefaultDataManager manager, |
|
158 |
DataStoreParameters parameters, FeatureStoreProvider provider) |
|
159 |
throws InitializeException { |
|
160 |
|
|
161 | 155 |
DynObjectManager dynManager = ToolsLocator.getDynObjectManager(); |
162 | 156 |
|
163 | 157 |
this.metadata = (DelegatedDynObject) dynManager |
164 |
.createDynObject(dynManager |
|
165 |
.get(DataStore.DYNCLASS_NAME)); |
|
166 |
this.dataManager = manager; |
|
167 |
this.provider = provider; |
|
158 |
.createDynObject(dynManager.get(DataStore.DYNCLASS_NAME)); |
|
159 |
this.dataManager = dataManager; |
|
160 |
|
|
168 | 161 |
this.parameters = parameters; |
169 | 162 |
this.transforms = new DefaultFeatureStoreTransforms(this); |
170 |
this.provider.initialize(this); |
|
171 | 163 |
try { |
172 |
indexes=new DefaultFeatureIndexes(this);
|
|
164 |
indexes = new DefaultFeatureIndexes(this);
|
|
173 | 165 |
} catch (DataException e) { |
174 | 166 |
throw new InitializeException(e); |
175 | 167 |
} |
168 |
|
|
169 |
} |
|
170 |
|
|
171 |
public void intializePhase2(DataStoreProvider provider) { |
|
172 |
this.provider = (FeatureStoreProvider) provider; |
|
176 | 173 |
this.delegate(provider); |
177 | 174 |
} |
178 | 175 |
|
179 |
|
|
180 | 176 |
public String getName() { |
181 | 177 |
return this.parameters.getDataStoreName(); |
182 | 178 |
} |
... | ... | |
333 | 329 |
} |
334 | 330 |
|
335 | 331 |
DataStoreParameters params = (DataStoreParameters) state.get("parameters"); |
336 |
FeatureStoreProvider provider = (FeatureStoreProvider) state.get("provider"); |
|
337 | 332 |
|
338 | 333 |
try { |
339 | 334 |
|
340 |
initialize(this.dataManager, params, provider);
|
|
335 |
this.dataManager.intializeDataStore(this, params);
|
|
341 | 336 |
try { |
342 | 337 |
setSelection((FeatureSelection) state.get("selection")); |
343 | 338 |
} catch (PersistenceValueNotFoundException e) { |
... | ... | |
1382 | 1377 |
|
1383 | 1378 |
public EditableFeatureType createFeatureType() { |
1384 | 1379 |
DefaultEditableFeatureType ftype = new DefaultEditableFeatureType(); |
1385 |
ftype.setAllowAutomaticValues(this.provider.allowAutomaticValues()); |
|
1386 | 1380 |
return ftype; |
1387 | 1381 |
} |
1388 | 1382 |
|
1389 | 1383 |
public EditableFeatureType createFeatureType(String id) { |
1390 | 1384 |
DefaultEditableFeatureType ftype = new DefaultEditableFeatureType(id); |
1391 |
ftype.setAllowAutomaticValues(this.provider.allowAutomaticValues()); |
|
1392 | 1385 |
return ftype; |
1393 | 1386 |
} |
1394 | 1387 |
|
... | ... | |
1562 | 1555 |
return ((DefaultFeature) feature).getData(); |
1563 | 1556 |
} |
1564 | 1557 |
|
1558 |
public DataStore getStore() { |
|
1559 |
return this; |
|
1560 |
} |
|
1565 | 1561 |
|
1562 |
public FeatureStore getFeatureStore() { |
|
1563 |
return this; |
|
1564 |
} |
|
1565 |
|
|
1566 | 1566 |
} |
Also available in: Unified diff