Statistics
| Revision:

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
}