Statistics
| Revision:

root / trunk / extensions / extSDE / src / com / iver / cit / gvsig / fmap / layersold / VectorialSDEAdapter.java @ 11193

History | View | Annotate | Download (3.41 KB)

1
package com.iver.cit.gvsig.fmap.layersold;
2

    
3
import java.awt.geom.Rectangle2D;
4
import java.io.IOException;
5

    
6
import com.iver.cit.gvsig.fmap.DriverException;
7
import com.iver.cit.gvsig.fmap.core.IFeature;
8
import com.iver.cit.gvsig.fmap.core.IGeometry;
9
import com.iver.cit.gvsig.fmap.drivers.DBLayerDefinition;
10
import com.iver.cit.gvsig.fmap.drivers.DriverIOException;
11
import com.iver.cit.gvsig.fmap.drivers.IFeatureIterator;
12
import com.iver.cit.gvsig.fmap.drivers.sde.VectorialSDEDriver;
13
import com.iver.cit.gvsig.fmap.layers.VectorialDBAdapter;
14

    
15
public class VectorialSDEAdapter extends VectorialDBAdapter{
16
        /**
17
         * incrementa el contador de las veces que se ha abierto el fichero.
18
         * Solamente cuando el contador est? a cero pide al driver que conecte con
19
         * la base de datos
20
         */
21
        public void start() {
22
            try {
23
                    //System.out.println("====" +this.hashCode()+" Abrir tabla: " + ((VectorialSDEDriver)driver).getTableName());
24
                ((VectorialSDEDriver)driver).open();
25
            } catch (DriverException e) {
26
                // TODO Auto-generated catch block
27
                e.printStackTrace();
28
            }
29
        }
30

    
31
        /**
32
         * decrementa el contador de n?mero de aperturas y cuando llega a cero pide
33
         * al driver que cierre la conexion con el servidor de base de datos
34
         */
35
        public void stop() {
36
                //System.out.println("====" +this.hashCode()+" Cerrar tabla: " + ((VectorialSDEDriver)driver).getTableName());
37
            ((VectorialSDEDriver)driver).close();
38
        }
39
        public IFeatureIterator getFeatureIterator(Rectangle2D r, String strEPSG) throws DriverException
40
        {
41
            return ((VectorialSDEDriver)driver).getFeatureIterator(r, strEPSG);
42
        }
43

    
44
    /* (non-Javadoc)
45
         * @see com.iver.cit.gvsig.fmap.layers.ISpatialDB#getFeatureIterator(java.awt.geom.Rectangle2D, java.lang.String, java.lang.String[])
46
         */
47
    public IFeatureIterator getFeatureIterator(Rectangle2D r, String strEPSG, String[] alphaNumericFieldsNeeded) throws DriverException
48
    {
49
        return ((VectorialSDEDriver)driver).getFeatureIterator(r, strEPSG, alphaNumericFieldsNeeded);
50
    }
51

    
52
        /* (non-Javadoc)
53
         * @see com.iver.cit.gvsig.fmap.layers.ISpatialDB#getFields()
54
         */
55
        public String[] getFields()
56
        {
57
            return ((VectorialSDEDriver)driver).getFields();
58
        }
59
        /* (non-Javadoc)
60
         * @see com.iver.cit.gvsig.fmap.layers.ISpatialDB#getWhereClause()
61
         */
62
        public String getWhereClause()
63
        {
64
            return ((VectorialSDEDriver)driver).getWhereClause();
65
        }
66
        /* (non-Javadoc)
67
         * @see com.iver.cit.gvsig.fmap.layers.ISpatialDB#getTableName()
68
         */
69
        public String getTableName()
70
        {
71
            return ((VectorialSDEDriver)driver).getTableName();
72
        }
73

    
74

    
75
        /**
76
         * @see com.iver.cit.gvsig.fmap.layers.ReadableVectorial#getShape(int)
77
         */
78
        public IGeometry getShape(int index) throws DriverIOException {
79
            IGeometry geom = null;
80
            try {
81
            geom = ((VectorialSDEDriver)driver).getShape(index);
82
        } catch (IOException e) {
83
            throw new DriverIOException(e);
84
        }
85
            return geom;
86
        }
87

    
88
        /**
89
         * @see com.iver.cit.gvsig.fmap.layers.ReadableVectorial#getShapeType()
90
         */
91
        public int getShapeType() throws DriverIOException {
92
                return ((VectorialSDEDriver)driver).getShapeType();
93
        }
94
         /* (non-Javadoc)
95
         * @see com.iver.cit.gvsig.fmap.layers.ISpatialDB#getLyrDef()
96
         */
97
    public DBLayerDefinition getLyrDef()
98
    {
99
        return ((VectorialSDEDriver)driver).getLyrDef();
100
    }
101

    
102
        public int getRowIndexByFID(IFeature feat) {
103
                return ((VectorialSDEDriver) driver).getRowIndexByFID(feat);
104
        }
105
}