Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / layers / LayerFactory.java @ 214

History | View | Annotate | Download (3.22 KB)

1
/* Generated by Together */
2
package com.iver.cit.gvsig.fmap.layers;
3

    
4
import java.io.File;
5
import java.net.URL;
6
import java.util.TreeMap;
7

    
8
import org.cresques.cts.IProjection;
9

    
10
import com.iver.cit.gvsig.fmap.drivers.VectorialDatabaseDriver;
11
import com.iver.cit.gvsig.fmap.drivers.VectorialFileDriver;
12
import com.iver.cit.gvsig.fmap.drivers.wfs.WFSDriver;
13

    
14

    
15
/**
16
 * Crea un adaptador del driver que se le pasa como par?metro en los m?todos
17
 * createLayer. Si hay memoria suficiente se crea un FLyrMemory que pasa todas
18
 * las features del driver a memoria
19
 */
20
public class LayerFactory {
21
        /**
22
         * Map en el que se guarda para cada fuente de datos a?adida al sistema, el
23
         * adaptador que la maneja. Ha de ser un TreeMap ya que esta clase define
24
         * la igualdad entre las claves a traves del m?todo equals de las mismas.
25
         * Los objetos FileSource, DBSource y WFSSource tienen definido el m?todo
26
         * equals de forma que devuelven true cuando dos objetos apuntan a la
27
         * misma fuente de datos
28
         */
29
        private static TreeMap sourceAdapter;
30

    
31
        /**
32
         * Crea un RandomVectorialFile con el driver que se le pasa como par?metro
33
         * y guard?ndose el nombre del fichero para realizar los accesos, la capa
34
         * tendr? asociada la proyecci?n que se pasa como parametro tambi?n
35
         *
36
         * @param driver DOCUMENT ME!
37
         * @param f DOCUMENT ME!
38
         * @param p DOCUMENT ME!
39
         *
40
         * @return DOCUMENT ME!
41
         */
42
        public static FLyrVect createLayer(VectorialFileDriver driver, File f,
43
                IProjection p) {
44
                //TODO Comprobar si hay un adaptador ya
45
                VectorialFileAdapter adapter = new VectorialFileAdapter(f);
46
                adapter.setDriver(driver);
47

    
48
                FLyrVect capa = new FLyrVect();
49

    
50
                //TODO Meter esto dentro de la comprobaci?n de si hay
51
                if (false) {
52
                } else {
53
                        capa.setSource(adapter);
54
                        capa.setProjection(p);
55
                }
56

    
57
                return capa;
58
        }
59

    
60
        /**
61
         * Crea un RandomVectorialWFS con el driver que se le pasa como par?metro y
62
         * guard?ndose la URL del servidor que se pasa como par?metro
63
         *
64
         * @param driver DOCUMENT ME!
65
         * @param host DOCUMENT ME!
66
         * @param p DOCUMENT ME!
67
         *
68
         * @return DOCUMENT ME!
69
         *
70
         * @throws UnsupportedOperationException DOCUMENT ME!
71
         */
72
        public static FLyrVect createLayer(WFSDriver driver, URL host, IProjection p) {
73
                throw new UnsupportedOperationException();
74
        }
75

    
76
        /**
77
         * Crea un RandomVectorialWFS con el driver que se le pasa como par?metro y
78
         * guard?ndose la URL del servidor que se pasa como par?metro
79
         *
80
         * @param driver DOCUMENT ME!
81
         * @param connectionString DOCUMENT ME!
82
         * @param p DOCUMENT ME!
83
         *
84
         * @return DOCUMENT ME!
85
         *
86
         * @throws UnsupportedOperationException DOCUMENT ME!
87
         */
88
        public static FLyrVect createLayer(VectorialDatabaseDriver driver,
89
                String connectionString, IProjection p) {
90
                throw new UnsupportedOperationException();
91
        }
92

    
93
        /**
94
         * Obtiene el adaptador de un driver si ya se ha a?adido el origen de datos
95
         * o null si es un origen de datos nuevo
96
         *
97
         * @param source DOCUMENT ME!
98
         */
99
        private static void getAdapter(Source source) {
100
        }
101

    
102
        /**
103
         * Registra la asociaci?n entre la fuente de datos que se pasa como
104
         * par?metro y el VectorialAdapter que se pasa como par?metro, para
105
         * satisfacer futuras llamadas a getAdapter
106
         *
107
         * @param s DOCUMENT ME!
108
         * @param a DOCUMENT ME!
109
         */
110
        private static void saveSourceAdapter(Source s, VectorialAdapter a) {
111
        }
112
}