Statistics
| Revision:

gvsig-projects-pool / org.gvsig.topology / trunk / org.gvsig.topology / org.gvsig.topology.lib / org.gvsig.topology.lib.api / src / main / java / org / gvsig / topology / lib / api / TopologyDataSet.java @ 2067

History | View | Annotate | Download (2.93 KB)

1 688 jjdelcerro
/**
2
 * gvSIG. Desktop Geographic Information System.
3
 *
4
 * Copyright (C) 2007-2013 gvSIG Association.
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 3
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 * For any additional information, do not hesitate to contact us
22
 * at info AT gvsig.com, or visit our website www.gvsig.com.
23
 */
24
package org.gvsig.topology.lib.api;
25
26 725 jjdelcerro
import org.gvsig.expressionevaluator.Expression;
27 727 jjdelcerro
import org.gvsig.fmap.dal.DataStore;
28 688 jjdelcerro
import org.gvsig.fmap.dal.exception.DataException;
29
import org.gvsig.fmap.dal.feature.EditableFeature;
30
import org.gvsig.fmap.dal.feature.Feature;
31
import org.gvsig.fmap.dal.feature.FeatureReference;
32
import org.gvsig.fmap.dal.feature.FeatureStore;
33 725 jjdelcerro
import org.gvsig.fmap.geom.Geometry;
34
import org.gvsig.fmap.geom.SpatialIndex;
35 721 jjdelcerro
import org.gvsig.tools.util.PropertiesSupport;
36 722 jjdelcerro
import org.gvsig.tools.visitor.VisitCanceledException;
37 688 jjdelcerro
import org.gvsig.tools.visitor.Visitor;
38
39
/**
40
 *
41
 * @author jjdelcerro
42
 */
43 721 jjdelcerro
public interface TopologyDataSet extends PropertiesSupport, SerializableJSON {
44 688 jjdelcerro
45
    public static interface Operation {
46
        public void run() throws DataException;
47
    }
48
49
    public void setName(String name);
50
51
    public String getName();
52
53 727 jjdelcerro
    public DataStore getStore();
54 688 jjdelcerro
55 727 jjdelcerro
    public FeatureStore getFeatureStore();
56
57 688 jjdelcerro
    public boolean isThisStore(FeatureStore featureStore);
58
59
    public int getGeometryType() ;
60
61 722 jjdelcerro
    public void accept(Visitor visitor) throws VisitCanceledException;
62 688 jjdelcerro
63
    public void edit() throws DataException;
64
65
    public void finishEditing() throws DataException;
66
67
    public EditableFeature createNewFeature() throws DataException;
68
69
    public void delete(FeatureReference feature) throws DataException;
70
71
    public void delete(Feature feature) throws DataException;
72
73
    public void insert(EditableFeature feature) throws DataException;
74
75
    public void update(EditableFeature feature) throws DataException;
76
77
    public long getSize();
78 725 jjdelcerro
79
    public SpatialIndex getSpatialIndex();
80
81 894 jjdelcerro
    /**
82
     * @param geom
83
     * @return
84 2067 jolivas
     * @deprecated  use queryFeatures or queryReferences
85 894 jjdelcerro
     */
86 725 jjdelcerro
    public Iterable<FeatureReference> query(Geometry geom);
87 894 jjdelcerro
88
    public Iterable<Feature> queryFeatures(Geometry geom);
89
90
    public Iterable<FeatureReference> queryReferences(Geometry geom);
91 725 jjdelcerro
92
    public Feature findFirst(Expression expression);
93
94 726 jjdelcerro
    public void restart();
95 688 jjdelcerro
}