Revision 1885

View differences:

trunk/extensions/extWCS/build.xml
26 26
  </target>
27 27

  
28 28
  <target name="generate-without-source"
29
  		description="generate the distribution without the source file"
30
  		depends="wcs-driver">
29
  		description="generate the distribution without the source file">
30
  		<!--depends="wcs-driver" -->
31 31
    <!-- Create the distribution directory -->
32 32
    <mkdir dir="${dist}"/>
33 33
	<mkdir dir="${drivers-dir}/wcs" />
......
36 36
    <jar jarfile="${dist}/${plugin}.jar" basedir="${build}" includes="com/iver/cit/gvsig/wcsclient/**"/>
37 37
    <jar jarfile="${dist}/${gvsiglibjar}.jar" basedir="${build}" includes="com/iver/cit/gvsig/gui/**"/>
38 38
  	<jar jarfile="${dist}/${fmapjar}.jar" basedir="${build}"
39
  		includes="com/iver/cit/gvsig/fmap/**,es/uji/lsi/wcs/**"
40
  		excludes="com/iver/cit/gvsig/fmap/drivers/wcs/**" />
39
  		includes="com/iver/cit/gvsig/fmap/**,es/uji/lsi/wcs/**"/>
40
  		<!-- excludes="com/iver/cit/gvsig/fmap/drivers/wcs/**" / -->
41 41
  	<copy file="config/config.xml" todir="${dist}"/>
42 42
    <copy file="config/plugin.dtd" todir="${dist}"/>
43 43
    <copy todir="${dist}">
44 44
    	<fileset dir="." includes="text*.properties"/>
45 45
    </copy>
46
    <copy todir="${dist}/images">
46
    <!--copy todir="${dist}/images">
47 47
    	<fileset dir="images/" includes="*"/>
48 48
    </copy>
49 49
    <copy todir="${dist}">
50 50
    	<fileset dir="./lib" includes="*.jar,*.zip"/>
51 51
    	<fileset dir="." includes=".keystore"/>
52
    </copy>
52
    </copy -->
53 53
  	<move todir="${extensionDir}/${mainplugin}/lib">
54 54
  		<fileset dir="${dist}" includes="${gvsiglibjar}.jar"/>
55 55
 		<fileset dir="${dist}" includes="${fmapjar}.jar"/>
trunk/extensions/extWCS/src-gvsig/com/iver/cit/gvsig/gui/WizardPanel.java
48 48

  
49 49

  
50 50
public abstract class WizardPanel extends JPanel{
51
	private String tabName = "TabName";
51
	private String tabName = "TabName"; // LWS
52 52
	private WizardListenerSupport listenerSupport = new WizardListenerSupport();
53 53

  
54 54
	public void addWizardListener(WizardListener listener) {
......
63 63
	public void callStateChanged(boolean finishable) {
64 64
		listenerSupport.callStateChanged(finishable);
65 65
	}
66
	
67
	// LWS el constructor pone el nombre que prefiere para la pesta?a.
66 68
	protected void setTabName(String name) { tabName = name; }
67 69
	public String getTabName() { return tabName; }
70
	// LWS inicializa el wizard
68 71
	abstract public void initWizard();
72
	// LWS ejecuta el wizard
69 73
	abstract public void execute();
70
	abstract public FLayer getLayer();
74
	// LWS obtiene la capa
75
	abstract public FLayer getLayer();	
71 76
}
trunk/extensions/extWCS/src-gvsig/com/iver/cit/gvsig/gui/wms/WMSWizard.java
124 124
	 * This method initializes this
125 125
	 */
126 126
	private void initialize() {
127
		setTabName("WMS");
127
		setTabName("WMS"); // LWS
128 128
		this.setSize(510, 311);
129 129
		this.setLayout(null);
130 130
		this.setPreferredSize(new java.awt.Dimension(750, 320));
......
1100 1100
	 * @see com.iver.cit.gvsig.gui.WizardPanel#initWizard()
1101 1101
	 */
1102 1102
	public void initWizard() {
1103
		setDataSource(new WMSDataSourceAdapter()); 
1103
		setDataSource(new WMSDataSourceAdapter());
1104 1104
	}
1105 1105

  
1106 1106
	/* (non-Javadoc)
......
1113 1113
	 * @see com.iver.cit.gvsig.gui.WizardPanel#getLayer()
1114 1114
	 */
1115 1115
	public FLayer getLayer() {
1116
		WMSWizard wms = this;
1117
		return LayerFactory.createLayer(wms.getLayerName(),
1118
				wms.getLayersRectangle(), wms.getHost(),
1119
				wms.getFormat(), wms.getLayersQuery(),
1120
				wms.getQueryableLayerQuery(), wms.getSRS());
1116
		return LayerFactory.createLayer(getLayerName(),
1117
				getLayersRectangle(), getHost(),
1118
				getFormat(), getLayersQuery(),
1119
				getQueryableLayerQuery(), getSRS());
1121 1120
	}
1122 1121
}
1123 1122

  
trunk/extensions/extWCS/src-gvsig/com/iver/cit/gvsig/Abrir.java
42 42

  
43 43
import java.awt.geom.Rectangle2D;
44 44
import java.io.File;
45
import java.lang.reflect.InvocationTargetException;
46
import java.sql.Connection;
47
import java.sql.DriverManager;
48
import java.sql.SQLException;
45 49
import java.util.ArrayList;
46 50

  
47 51
import javax.swing.JOptionPane;
......
56 60
import com.iver.andami.plugins.Extension;
57 61
import com.iver.cit.gvsig.fmap.DriverException;
58 62
import com.iver.cit.gvsig.fmap.drivers.RasterDriver;
63
import com.iver.cit.gvsig.fmap.drivers.VectorialDatabaseDriver;
59 64
import com.iver.cit.gvsig.fmap.drivers.VectorialFileDriver;
65
import com.iver.cit.gvsig.fmap.drivers.jdbc.postgis.PostGisDriver;
60 66
import com.iver.cit.gvsig.fmap.layers.FLayer;
61 67
import com.iver.cit.gvsig.fmap.layers.LayerFactory;
62 68
import com.iver.cit.gvsig.gui.FOpenDialog;
63 69
import com.iver.cit.gvsig.gui.FileOpenDialog;
64 70
import com.iver.cit.gvsig.gui.View;
65 71
import com.iver.cit.gvsig.gui.WizardPanel;
72
import com.iver.cit.gvsig.gui.wizards.JDBCWizard;
66 73
import com.iver.cit.gvsig.gui.wms.WMSWizard;
67 74

  
68 75

  
......
74 81
 */
75 82
public class Abrir implements Extension {
76 83
	public FOpenDialog fopen = null;
84
	private static ArrayList wizardStack = null; // LWS
77 85
	
78
	private static ArrayList wizardStack = null;
79
	
80 86
	static {
81 87
		Abrir.wizardStack = new ArrayList();
82
		Abrir.addWizard(new WMSWizard());
88
		Abrir.addWizard(WMSWizard.class);
89
		Abrir.addWizard(JDBCWizard.class);
83 90
	}
84 91
	
85
	public static void addWizard(WizardPanel wp) {
92
	public static void addWizard(Class wpClass) {
93
		Abrir.wizardStack.add(wpClass);
94
	}
95
	
96
	public static WizardPanel getInstance(int i) throws IllegalArgumentException, SecurityException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
97
		Class wpClass = (Class) Abrir.wizardStack.get(i);
98
		Class [] args = {};
99
		Object [] params = {};
100
		WizardPanel wp = (WizardPanel) wpClass.getConstructor(args).newInstance(params);
101

  
86 102
		wp.initWizard();
87
		Abrir.wizardStack.add(wp);
103
		
104
		return wp;
88 105
	}
89 106

  
90 107
	/**
......
106 123
	 */
107 124
	public void inicializar() {
108 125
	}
109

  
126
	
110 127
	/**
111 128
	 * @see com.iver.andami.plugins.Extension#execute(java.lang.String)
112 129
	 */
......
117 134
		FileOpenDialog fileDlg = new FileOpenDialog(new Class[] {
118 135
					VectorialFileDriver.class, RasterDriver.class
119 136
				});
120
		// LWS WMSWizard wms = new WMSWizard(); 
121
		// LWS wms.setDataSource(new WMSDataSourceAdapter()); 
137
		
138
		// LWS JDBCWizard dbWiz = new JDBCWizard();
122 139

  
123
		//        DataBaseOpenDialog dbop = new DataBaseOpenDialog();
124
		//        dbop.setClasses(new Class[] { DBDriver.class });
140
		// DataBaseOpenDialog dbop = new DataBaseOpenDialog();
141
		// dbop.setClasses(new Class[] { DBDriver.class });
125 142
		fopen.addTab("Fichero", fileDlg);
126
		// LWS fopen.addWizardTab("WMS", wms);
127 143
		for (int i=0; i<wizardStack.size(); i++) {
128
			WizardPanel wp = (WizardPanel) Abrir.wizardStack.get(i);
129
			fopen.addWizardTab(wp.getTabName(), wp);
144
			WizardPanel wp;
145
			try {
146
				wp = Abrir.getInstance(i);
147
				fopen.addWizardTab(wp.getTabName(), wp);			
148
			} catch (IllegalArgumentException e) {
149
				// TODO Auto-generated catch block
150
				e.printStackTrace();
151
			} catch (SecurityException e) {
152
				// TODO Auto-generated catch block
153
				e.printStackTrace();
154
			} catch (InstantiationException e) {
155
				// TODO Auto-generated catch block
156
				e.printStackTrace();
157
			} catch (IllegalAccessException e) {
158
				// TODO Auto-generated catch block
159
				e.printStackTrace();
160
			} catch (InvocationTargetException e) {
161
				// TODO Auto-generated catch block
162
				e.printStackTrace();
163
			} catch (NoSuchMethodException e) {
164
				// TODO Auto-generated catch block
165
				e.printStackTrace();
166
			}
130 167
		}
131
		
132
		// <Jaume>
133
		// Aqu? es donde se deber?a poner el c?digo si queremos ponerlo de manera integrada
134
//		 LWS  WCSWizard wcs = new WCSWizard();
135
//		 LWS  wcs.setDataSource(new WCSDataSourceAdapter()); 
136
//		 LWS  fopen.addWizardTab("WCS", wcs);
137
		// </Jaume>
168
		// LWS fopen.addWizardTab("WMS", wms);
169
		// LWS fopen.addWizardTab("JDBC", dbWiz);
170

  
138 171
		//        fopen.addTab("Base de datos", dbop);
139 172
		PluginServices.getMDIManager().addView(fopen);
140 173

  
......
221 254
				}
222 255
				theView.getMapControl().getMapContext()
223 256
				   .endAtomicEvent();
224

  
225 257
			} else if (fopen.getSelectedTab() instanceof WizardPanel) {
226 258
				WizardPanel wp = (WizardPanel) fopen.getSelectedTab();
227
				
259

  
228 260
				wp.execute();
229 261
				lyr = wp.getLayer();
230
				
262

  
231 263
				if (lyr != null) {
232 264
					lyr.setVisible(true);
233 265
					theView.getMapControl().getMapContext().beginAtomicEvent();
......
235 267
						   .addLayer(lyr);
236 268
					theView.getMapControl().getMapContext().endAtomicEvent();
237 269
				}
238
			}/* else if (fopen.getSelectedTab() == wms) {
270
			/*} else if (fopen.getSelectedTab() == wms) {
239 271
				String layerName = wms.getLayerName();
240 272

  
241 273
				lyr = LayerFactory.createLayer(layerName,
......
250 282
						   .addLayer(lyr);
251 283
					theView.getMapControl().getMapContext().endAtomicEvent();
252 284
				}
253
			} // for*/
285
			*//*} else if (fopen.getSelectedTab() == dbWiz) {
286
				String layerName = dbWiz.getLayerName();
287
				String user = dbWiz.getUser();
288
				String pwd = dbWiz.getPassword();
289
				String dbUrl = dbWiz.getUrlConnect();
290
				String fields = dbWiz.getSqlFields();
291
				String whereClause = dbWiz.getSqlWhere();
292
				
293
				try {
294
                    
295
                    // TODO: ?C?mo se hace esto para que sea gen?rico?.
296
                    // Supongo que el wizard te tiene que decir qu? driver
297
                    // quieres usar....
298
				    Class.forName("org.postgresql.Driver");
299
                    Connection conn = DriverManager.getConnection(dbUrl, user, pwd);
300
                    conn.setAutoCommit(false);
301

  
302
                    VectorialDatabaseDriver driver = new PostGisDriver();
303
                    driver.setData(conn, layerName, fields, whereClause);
304
                    lyr = LayerFactory.createDBLayer(driver, layerName, null);
305
                    
306
    				if (lyr != null) {
307
    					lyr.setVisible(true);
308
    					theView.getMapControl().getMapContext().beginAtomicEvent();
309
    					theView.getMapControl().getMapContext().getLayers()
310
    						   .addLayer(lyr);
311
    					theView.getMapControl().getMapContext().endAtomicEvent();
312
    				}
313
                    
314
                } catch (SQLException e) {
315
                    // TODO Auto-generated catch block
316
                    e.printStackTrace();
317
                } catch (ClassNotFoundException e) {
318
                    // TODO Auto-generated catch block
319
                    e.printStackTrace();
320
                }
321

  
322
			*/} // for
254 323
		}
255 324
	}
256 325

  
trunk/extensions/extWCS/src/com/iver/cit/gvsig/gui/wcs/WCSWizard.java
61 61
import org.apache.log4j.Logger;
62 62

  
63 63
import com.iver.andami.PluginServices;
64
import com.iver.cit.gvsig.Abrir;
65 64
import com.iver.cit.gvsig.fmap.layers.FLayer;
66 65
import com.iver.cit.gvsig.fmap.layers.FLyrWCS;
67 66
import com.iver.cit.gvsig.gui.WCSDataSourceAdapter;
......
99 98

  
100 99
	private JComboBox cmbBoxCoverage = null;
101 100
	
102
	static {
103
		System.err.println("A?ado WCSWizard.");
104
		Abrir.addWizard(new WCSWizard());
105
	}
106 101
	/**
107 102
	 * This is the default constructor
108 103
	 */
trunk/extensions/extWCS/src/com/iver/cit/gvsig/wcsclient/WCSClientModule.java
41 41
package com.iver.cit.gvsig.wcsclient;
42 42

  
43 43
import com.iver.andami.plugins.Extension;
44
import com.iver.cit.gvsig.Abrir;
44 45
import com.iver.cit.gvsig.gui.wcs.WCSWizard;
45 46

  
46 47
/**
......
53 54
	 */
54 55
	
55 56
	static {
56
		Class kk =  WCSWizard.class; // solo sirve para forzar a cargar la clase
57
		System.err.println("A?ado WCSWizard.");
58
		Abrir.addWizard(WCSWizard.class);
57 59
	}
58 60
	public void inicializar() {
59 61
	}

Also available in: Unified diff