svn-gvsig-desktop / branches / v2_0_0_prep / libraries / libFMap_dal / src / org / gvsig / fmap / dal / feature / spi / FeatureStoreProvider.java @ 28676
History | View | Annotate | Download (2.71 KB)
1 |
package org.gvsig.fmap.dal.feature.spi; |
---|---|
2 |
|
3 |
|
4 |
import java.util.Iterator; |
5 |
|
6 |
import org.gvsig.fmap.dal.exception.DataException; |
7 |
import org.gvsig.fmap.dal.exception.InitializeException; |
8 |
import org.gvsig.fmap.dal.feature.FeatureLocks; |
9 |
import org.gvsig.fmap.dal.feature.FeatureQuery; |
10 |
import org.gvsig.fmap.dal.feature.FeatureSelection; |
11 |
import org.gvsig.fmap.dal.feature.FeatureType; |
12 |
import org.gvsig.fmap.dal.spi.DataStoreProvider; |
13 |
import org.gvsig.fmap.geom.primitive.Envelope; |
14 |
import org.gvsig.tools.persistence.Persistent; |
15 |
|
16 |
public interface FeatureStoreProvider extends Persistent, |
17 |
DataStoreProvider { |
18 |
|
19 |
public String getName(); |
20 |
|
21 |
/**
|
22 |
* Devuelbe un OID valido para una nueva feature.
|
23 |
*
|
24 |
* @return
|
25 |
*/
|
26 |
public Object createNewOID(); |
27 |
|
28 |
/**
|
29 |
* Construye un FeatureData apto para este store
|
30 |
*
|
31 |
* @param type
|
32 |
* @return
|
33 |
* @throws DataException
|
34 |
*/
|
35 |
public FeatureData createFeatureData(FeatureType type) throws DataException; |
36 |
|
37 |
/**
|
38 |
* Devuelbe el FeatureData asociado a la referencia pasada.
|
39 |
*
|
40 |
* @param reference
|
41 |
* @return
|
42 |
* @throws DataException
|
43 |
*/
|
44 |
public FeatureData getFeatureDataByReference(FeatureReferenceProviderServices reference)
|
45 |
throws DataException;
|
46 |
|
47 |
public FeatureSelection createFeatureSelection() throws DataException; |
48 |
|
49 |
public FeatureLocks createFeatureLocks() throws DataException; |
50 |
|
51 |
public FeatureData getFeatureDataByReference(
|
52 |
FeatureReferenceProviderServices reference, FeatureType featureType) |
53 |
throws DataException;
|
54 |
|
55 |
public boolean allowWrite(); |
56 |
|
57 |
public boolean canWriteGeometry(int geometryType) throws DataException; |
58 |
|
59 |
/**
|
60 |
*
|
61 |
* @param deleteds
|
62 |
* iterator of {@link FeatureReferenceProviderServices}
|
63 |
* @param inserteds
|
64 |
* iterator of {@link FeatureData}
|
65 |
* @param updateds
|
66 |
* iterator of {@link FeatureData}
|
67 |
* @param originalFeatureTypesUpdated
|
68 |
* iterator of {@link FeatureType}
|
69 |
* @throws DataException
|
70 |
*/
|
71 |
public void performEditing(Iterator deleteds, Iterator inserteds, Iterator updateds, Iterator originalFeatureTypesUpdated) throws DataException; |
72 |
|
73 |
public Envelope getEnvelope() throws DataException; |
74 |
|
75 |
public FeatureStoreProvider initialize(FeatureStoreProviderServices store)
|
76 |
throws InitializeException;
|
77 |
|
78 |
public FeatureSetProvider createSet(FeatureQuery query, FeatureType featureType)
|
79 |
throws DataException;
|
80 |
|
81 |
public boolean isLocksSupported(); |
82 |
|
83 |
public FeatureStoreProviderServices getStoreServices();
|
84 |
|
85 |
public int getFeatureReferenceOIDType(); |
86 |
|
87 |
|
88 |
public boolean supportsAppendMode(); |
89 |
|
90 |
public void beginAppend() throws DataException; |
91 |
|
92 |
public void endAppend() throws DataException; |
93 |
|
94 |
public void append(FeatureData featureData) throws DataException; |
95 |
|
96 |
public boolean allowAutomaticValues(); |
97 |
|
98 |
public long getFeatureCount() throws DataException; |
99 |
|
100 |
} |