Statistics
| Revision:

root / branches / v2_0_0_prep / libraries / libFMap_dal / src / org / gvsig / fmap / dal / feature / spi / FeatureStoreProvider.java @ 24496

History | View | Annotate | Download (2.42 KB)

1 24496 jmvivo
package org.gvsig.fmap.dal.feature.spi;
2 23772 jjdelcerro
3
4 24144 vcaballero
import java.util.Iterator;
5
6 24496 jmvivo
import org.gvsig.fmap.dal.DataStoreParameters;
7
import org.gvsig.fmap.dal.exceptions.CreateException;
8
import org.gvsig.fmap.dal.exceptions.DataException;
9
import org.gvsig.fmap.dal.exceptions.InitializeException;
10
import org.gvsig.fmap.dal.feature.Feature;
11
import org.gvsig.fmap.dal.feature.FeatureQuery;
12
import org.gvsig.fmap.dal.feature.FeatureSelection;
13
import org.gvsig.fmap.dal.feature.FeatureType;
14
import org.gvsig.fmap.dal.spi.DataStoreProvider;
15 23772 jjdelcerro
import org.gvsig.fmap.geom.primitive.Envelope;
16
import org.gvsig.metadata.Metadatable;
17 24079 jjdelcerro
import org.gvsig.tools.persistence.Persistent;
18 23772 jjdelcerro
19 24079 jjdelcerro
public interface FeatureStoreProvider extends Persistent, Metadatable,
20
                DataStoreProvider {
21 23772 jjdelcerro
22 23820 jjdelcerro
        public String getName();
23
24 24248 jjdelcerro
        /**
25
         * Devuelbe un OID valido para una nueva feature.
26
         *
27
         * @return
28
         */
29
        public Object createNewOID();
30 23772 jjdelcerro
31 24248 jjdelcerro
        /**
32
         * Construye un FeatureData apto para este store
33
         *
34
         * @param type
35
         * @return
36
         * @throws DataException
37
         */
38
        public FeatureData createFeatureData(FeatureType type) throws DataException;
39 24141 vcaballero
40 24248 jjdelcerro
        /**
41
         * Devuelbe el FeatureData asociado a la referencia pasada.
42
         *
43
         * @param reference
44
         * @return
45
         * @throws DataException
46
         */
47
        public FeatureData getFeatureDataByReference(FeatureReferenceProviderServices reference)
48
                        throws DataException;
49 24079 jjdelcerro
50 23772 jjdelcerro
        public FeatureSelection createFeatureSelection() throws DataException;
51
52
        public FeatureLocks createFeatureLocks() throws DataException;
53
54 24248 jjdelcerro
        public FeatureData getFeatureDataByReference(
55
                        FeatureReferenceProviderServices reference, FeatureType featureType)
56 23820 jjdelcerro
                        throws DataException;
57 23772 jjdelcerro
58
        public boolean allowWrite();
59
60 24446 jmvivo
        public boolean canWriteGeometry(int geometryType) throws DataException;
61 23772 jjdelcerro
62 24144 vcaballero
        public void performEditing(Iterator deleteds, Iterator inserteds, Iterator updateds) throws DataException;
63 23772 jjdelcerro
64
        public Envelope getEnvelope();
65
66 23874 jjdelcerro
        public FeatureStoreProvider initialize(FeatureStoreProviderServices store)
67 23820 jjdelcerro
                        throws InitializeException;
68 23772 jjdelcerro
69 23874 jjdelcerro
        public void create(DataStoreParameters parameters, FeatureType featureType,
70
                        boolean overwrite) throws CreateException;
71
72
        public boolean canCreate();
73
74 23820 jjdelcerro
        public FeatureSetProvider createSet(FeatureQuery query)
75
                        throws DataException;
76
77 23842 jjdelcerro
        public boolean isLocksSupported();
78
79 23874 jjdelcerro
        public FeatureStoreProviderServices getStoreServices();
80 23995 jmvivo
81 24248 jjdelcerro
        public int getFeatureReferenceOIDType();
82 23874 jjdelcerro
83 24162 jjdelcerro
84 24185 jjdelcerro
        public boolean supportsAppendMode();
85 24176 jmvivo
86 24162 jjdelcerro
        public void beginAppend();
87
88
89
        public void endAppend();
90
91
        public void append(Feature feature);
92
93 23772 jjdelcerro
}