Revision 29326 branches/v2_0_0_prep/libraries/libFMap_dal/src/org/gvsig/fmap/dal/feature/spi/AbstractFeatureStoreProvider.java
AbstractFeatureStoreProvider.java | ||
---|---|---|
13 | 13 |
import org.gvsig.fmap.dal.exception.ValidateDataParametersException; |
14 | 14 |
import org.gvsig.fmap.dal.feature.FeatureLocks; |
15 | 15 |
import org.gvsig.fmap.dal.feature.FeatureSelection; |
16 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
|
16 | 17 |
import org.gvsig.fmap.dal.feature.FeatureType; |
17 | 18 |
import org.gvsig.fmap.dal.resource.ResourceManager; |
18 | 19 |
import org.gvsig.fmap.dal.resource.spi.ResourceManagerProviderServices; |
19 | 20 |
import org.gvsig.fmap.dal.resource.spi.ResourceProvider; |
21 |
import org.gvsig.fmap.dal.spi.DataStoreProviderServices; |
|
20 | 22 |
import org.gvsig.fmap.geom.primitive.Envelope; |
21 | 23 |
import org.gvsig.tools.dynobject.DelegatedDynObject; |
22 | 24 |
import org.gvsig.tools.dynobject.DynClass; |
... | ... | |
28 | 30 |
public abstract class AbstractFeatureStoreProvider implements |
29 | 31 |
FeatureStoreProvider { |
30 | 32 |
|
31 |
protected FeatureStoreProviderServices store;
|
|
32 |
protected DelegatedDynObject metadata;
|
|
33 |
protected DataStoreParameters parameters;
|
|
33 |
private FeatureStoreProviderServices store;
|
|
34 |
private DelegatedDynObject metadata;
|
|
35 |
private DataStoreParameters parameters;
|
|
34 | 36 |
|
35 |
public AbstractFeatureStoreProvider() { |
|
36 |
this.store = null; |
|
37 |
/** |
|
38 |
* Default Constructor. |
|
39 |
* |
|
40 |
* @param params |
|
41 |
* @param storeServices |
|
42 |
* @param metadata |
|
43 |
*/ |
|
44 |
protected AbstractFeatureStoreProvider(DataStoreParameters params, |
|
45 |
DataStoreProviderServices storeServices, DynObject metadata) { |
|
46 |
this.store = (FeatureStoreProviderServices) storeServices; |
|
47 |
this.metadata = (DelegatedDynObject) metadata; |
|
48 |
this.parameters = params; |
|
49 |
} |
|
50 |
|
|
51 |
/** |
|
52 |
* Constructor when cannot create metada in constrution time. <br> |
|
53 |
* <br> |
|
54 |
* <strong>Note: </strong> Don't use it if not is necesary. Set metada |
|
55 |
* <strong>as soon as posible</strong> by |
|
56 |
* {@link AbstractFeatureStoreProvider#setMetadata(DynObject)} |
|
57 |
* |
|
58 |
* @param params |
|
59 |
* @param storeServices |
|
60 |
*/ |
|
61 |
protected AbstractFeatureStoreProvider(DataStoreParameters params, |
|
62 |
DataStoreProviderServices storeServices) { |
|
63 |
this.store = (FeatureStoreProviderServices) storeServices; |
|
37 | 64 |
this.metadata = null; |
38 |
this.parameters = null;
|
|
65 |
this.parameters = params;
|
|
39 | 66 |
} |
40 | 67 |
|
41 |
|
|
42 |
public FeatureStoreProvider initialize(FeatureStoreProviderServices store) |
|
43 |
throws InitializeException { |
|
44 |
this.store = store; |
|
45 |
return this; |
|
68 |
/** |
|
69 |
* Set metada container if this not set at construction time and only in one |
|
70 |
* time. In other case an Exception will be throw |
|
71 |
* |
|
72 |
* @param metadata |
|
73 |
*/ |
|
74 |
protected void setMetadata(DynObject metadata) { |
|
75 |
if (this.metadata != null) { |
|
76 |
// FIXME Exception |
|
77 |
throw new IllegalStateException(); |
|
78 |
} |
|
79 |
this.metadata = (DelegatedDynObject) metadata; |
|
46 | 80 |
} |
47 | 81 |
|
48 | 82 |
/** |
... | ... | |
79 | 113 |
return this.store; |
80 | 114 |
} |
81 | 115 |
|
116 |
public FeatureStore getFeatureStore() { |
|
117 |
return this.store.getFeatureStore(); |
|
118 |
} |
|
119 |
|
|
82 | 120 |
/** |
83 | 121 |
* unsupported by default, override this otherwise |
84 | 122 |
* |
Also available in: Unified diff