Revision 33063

View differences:

tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/test/TestClassLoader.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 *
19
 * For more information, contact:
20
 *
21
 *  Generalitat Valenciana
22
 *   Conselleria d'Infraestructures i Transport
23
 *   Av. Blasco Ib??ez, 50
24
 *   46010 VALENCIA
25
 *   SPAIN
26
 *
27
 *      +34 963862235
28
 *   gvsig@gva.es
29
 *      www.gvsig.gva.es
30
 *
31
 *    or
32
 *
33
 *   IVER T.I. S.A
34
 *   Salamanca 50
35
 *   46005 Valencia
36
 *   Spain
37
 *
38
 *   +34 963163400
39
 *   dac@iver.es
40
 */
41

  
42
/* CVS MESSAGES:
43
*
44
* $Id$
45
* $Log$
46
* Revision 1.1  2006-11-08 10:57:55  jaume
47
* remove unecessary imports
48
*
49
*
50
*/
51
package test;
52

  
53
import java.io.DataInputStream;
54
import java.io.File;
55
import java.io.IOException;
56
import java.io.InputStream;
57
import java.net.MalformedURLException;
58
import java.net.URL;
59
import java.util.ArrayList;
60
import java.util.Enumeration;
61
import java.util.Hashtable;
62
import java.util.jar.JarException;
63
import java.util.zip.ZipEntry;
64
import java.util.zip.ZipFile;
65

  
66
public class TestClassLoader extends ClassLoader{
67
	private Hashtable jarz = new Hashtable();
68
	private Hashtable classes = new Hashtable();
69
	private String baseDir;
70

  
71
	public TestClassLoader(String baseDir) throws IOException {
72
		this.baseDir = baseDir;
73

  
74
		File dir = new File(baseDir);
75

  
76

  
77
		URL[] jars = (URL[]) getJarURLs(dir).toArray(new URL[0]);
78

  
79
		if (jars == null) {
80
			throw new IllegalArgumentException("jars cannot be null"); //$NON-NLS-1$
81
		}
82

  
83
		//Se itera por las URLS que deben de ser jar's
84
		ZipFile[] jarFiles = new ZipFile[jars.length];
85

  
86
		for (int i = 0; i < jars.length; i++) {
87
			jarFiles[i] = new ZipFile(jars[i].getPath());
88
			Enumeration files = jarFiles[i].entries();
89
			while (files.hasMoreElements()) {
90
				//Se obtiene la entrada
91
				ZipEntry file = (ZipEntry) files.nextElement();
92
				String fileName = file.getName();
93

  
94
				//Se obtiene el nombre de la clase
95
				if (!fileName.toLowerCase().endsWith(".class")) { //$NON-NLS-1$
96
					continue;
97
				}
98

  
99
				fileName = fileName.substring(0, fileName.length() - 6).replace('/',
100
				'.');
101

  
102
				//Se cromprueba si ya hab?a una clase con dicho nombre
103
				if (jarz.get(fileName) != null) {
104
					throw new JarException(
105
							"two or more classes with the same name in the jars: " +
106
							fileName);
107
				}
108

  
109
				//Se registra la clase
110
				jarz.put(fileName, jarFiles[i]);
111
				try {
112
					loadClass(fileName, true);
113
				} catch (ClassNotFoundException e) {
114
					// TODO Auto-generated catch block
115
					e.printStackTrace();
116
				}
117
			}
118

  
119
		}
120
	}
121

  
122
	private ArrayList getJarURLs(File file) {
123
		ArrayList jars = new ArrayList();
124
		if (file.isDirectory()) {
125
			String[] fileNames = file.list();
126
			for (int i = 0; i < fileNames.length; i++) {
127
				File file1 = new File(file+ File.separator + fileNames[i]);
128
				if (file1.isDirectory()) {
129
					jars.addAll(getJarURLs(file1));
130
				} else {
131
					if (file1.getAbsolutePath().endsWith(".jar")) {
132
						try {
133
							jars.add(file1.toURL());
134
						} catch (MalformedURLException e) {
135
							e.printStackTrace();
136
						}
137
					}
138
				}
139
			}
140
		} else {
141
			if (file.getAbsolutePath().endsWith(".jar")) {
142
				try {
143
					jars.add(new URL(file.getAbsolutePath()));
144
				} catch (MalformedURLException e) {
145
					e.printStackTrace();
146
				}
147
			}
148
		}
149
		return jars;
150
	}
151

  
152
	protected synchronized Class loadClass(String className, boolean resolve) throws ClassNotFoundException {
153
		Class c;
154
		System.out.print("Loading class ["+className+"]...");
155
		try {
156
			c = super.loadClass(className, resolve);
157
		} catch (ClassNotFoundException e) {
158
			ZipFile file = (ZipFile) jarz.get(className);
159
			ZipEntry classFile = file.getEntry(className);
160
			byte[] classBytes;
161
			try {
162
				classBytes = loadClassBytes(classFile, file.getInputStream(classFile));
163
			} catch (IOException e1) {
164
				throw new ClassNotFoundException(className);
165
			}
166
			c = defineClass(className, classBytes, 0, classBytes.length);
167
		}
168
		System.out.println(" Ok!");
169

  
170
		return c;
171
	}
172

  
173
	protected Class findClass(String className) throws ClassNotFoundException {
174
		return loadClass(className);
175
	}
176

  
177
	private byte[] loadClassBytes(ZipEntry classFile, InputStream is)
178
	throws IOException {
179
		// Get size of class file
180
		int size = (int) classFile.getSize();
181

  
182
		// Reserve space to read
183
		byte[] buff = new byte[size];
184

  
185
		// Get stream to read from
186
		DataInputStream dis = new DataInputStream(is);
187

  
188
		// Read in data
189
		dis.readFully(buff);
190

  
191
		// close stream
192
		dis.close();
193

  
194
		// return data
195
		return buff;
196
	}
197

  
198
	public static void main(String args[]) {
199
		try {
200
			TestClassLoader cl = new TestClassLoader("lib-test/");
201
		} catch (IOException e) {
202
			// TODO Auto-generated catch block
203
			e.printStackTrace();
204
		}
205
	}
206
}
0 207

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/test/Persistence.java
1
package org.gvsig.app.test;
2

  
3
import junit.framework.TestCase;
4

  
5
import org.gvsig.app.extension.ProjectExtension;
6

  
7
/**
8
 * @author Fernando Gonz?lez Cort?s
9
 */
10
//TODO comentado para que compile
11
public class Persistence extends TestCase {
12
	private ProjectExtension pe;
13

  
14
	/*
15
	 * @see TestCase#setUp()
16
	 */
17
	protected void setUp() throws Exception {
18
		pe = new ProjectExtension();
19
//		pe.inicializar();
20
//		LayerFactory.setDriversPath(
21
//		"/root/workspace/Andami/gvSIG/extensiones/com.iver.cit.gvsig/drivers");
22
//
23
//		LayerFactory.getDataSourceFactory().addFileDataSource("gdbms dbf driver", "prueba",
24
//				"test/cities.dbf");
25

  
26
	}
27

  
28
	public void testPersist() throws Throwable {
29
//		Project p = new Project();
30
//
31
//		/*
32
//		 * A?adimos una vista con una capa
33
//		 */
34
//		ProjectView v = new ProjectView();
35
//		ViewPort vp = new ViewPort( CRSFactory.getCRS("EPSG:23030"));
36
//		vp.setImageSize(new Dimension(500, 500));
37
//
38
//		MapContext fmap = new MapContext(vp);
39
//		v.setMapContext(fmap);
40
//		FLayer l = LayerFactory.createLayer("Vias",
41
//			(VectorialFileDriver) LayerFactory.getDM().getDriver("gvSIG shp driver"),
42
//			new File("test/cities.shp"),
43
//			CRSFactory.getCRS("EPSG:23030"));
44
//		fmap.getLayers().addLayer(l);
45
//
46
//		/*
47
//		 * A?adimos la tabla del tema anterior
48
//		 */
49
//		SelectableDataSource sds1 = ((FLyrVect) l).getRecordset();
50
//		EditableAdapter ea1 = new EditableAdapter();
51
//		ea1.setOriginalDataSource(sds1);
52
//
53
//		ProjectTable pt1 = ProjectFactory.createTable("tabla", ea1);
54
//		p.addDocument(pt1);
55
//
56
//		/*
57
//		 * A?adimos otra tabla
58
//		 */
59
//		SelectableDataSource sds2 = new SelectableDataSource(LayerFactory.getDataSourceFactory().createRandomDataSource("prueba", DataSourceFactory.MANUAL_OPENING));
60
//		EditableAdapter ea2 = new EditableAdapter();
61
//		ea2.setOriginalDataSource(sds2);
62
//		ProjectTable pt2 = ProjectFactory.createTable("tabla2", ea2);
63
//		p.addTable(pt2);
64
//
65
//		/*
66
//		 * Creamos un join
67
//		 */
68
//		String sql = "custom com_iver_cit_gvsig_arcjoin tables '"+
69
//		sds1.getName()+"', '"+sds1.getName()+"' values(NAME,NAME);";
70
//
71
//		SelectableDataSource result = new SelectableDataSource(
72
//				LayerFactory.getDataSourceFactory()
73
//				.executeSQL(sql, DataSourceFactory.MANUAL_OPENING));
74
//		EditableAdapter auxea=new EditableAdapter();
75
//		auxea.setOriginalDataSource(result);
76
//
77
//		pt1.replaceDataSource(auxea);
78
//
79
//		/*
80
//		 * Guardamos y cargamos
81
//		 */
82
//		File temp = File.createTempFile("junit-", ".gvp");
83
//		temp.deleteOnExit();
84
//		pe.writeProject(temp, p);
85
//
86
//		Project p2 = pe.readProject(temp);
87
//
88
//		/*
89
//		 * Comprobamos que las dos tablas son id?nticas
90
//		 */
91
//		assertTrue(((ProjectTable)p2.getDocumentsByType(ProjectTableFactory.registerName).get(0)).getModel().getRecordset().getAsString().equals(((ProjectTable)p.getTables().get(0)).getModel().getRecordset().getAsString()));
92
//		assertTrue(((ProjectTable)p2.getDocumentsByType(ProjectTableFactory.registerName).get(1)).getModel().getRecordset().getAsString().equals(((ProjectTable)p.getTables().get(1)).getModel().getRecordset().getAsString()));
93
	}
94
}
0 95

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/sqlQueryValidation/TestSQLQueryValidation.java
1
package org.gvsig.app.sqlQueryValidation;
2

  
3
import junit.framework.TestCase;
4

  
5
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
6
 *
7
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
8
 *
9
 * This program is free software; you can redistribute it and/or
10
 * modify it under the terms of the GNU General Public License
11
 * as published by the Free Software Foundation; either version 2
12
 * of the License, or (at your option) any later version.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 * GNU General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU General Public License
20
 * along with this program; if not, write to the Free Software
21
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
22
 *
23
 * For more information, contact:
24
 *
25
 *  Generalitat Valenciana
26
 *   Conselleria d'Infraestructures i Transport
27
 *   Av. Blasco Ib??ez, 50
28
 *   46010 VALENCIA
29
 *   SPAIN
30
 *
31
 *      +34 963862235
32
 *   gvsig@gva.es
33
 *      www.gvsig.gva.es
34
 *
35
 *    or
36
 *
37
 *   IVER T.I. S.A
38
 *   Salamanca 50
39
 *   46005 Valencia
40
 *   Spain
41
 *
42
 *   +34 963163400
43
 *   dac@iver.es
44
 */
45

  
46
/**
47
 * Tests the methods of the class SQLQueryValidation
48
 *    (This class is made without inner static methods for don't create problems to Zql, in this way,
49
 *     it's possible to add more tests, with or without long queries.)
50
 * 
51
 * @author Pablo Piqueras Bartolom? (p_queras@hotmail.com)
52
 */
53
 public class TestSQLQueryValidation extends TestCase{
54
	
55
	/*
56
	 *  (non-Javadoc)
57
	 * @see junit.framework.TestCase#setUp()
58
	 */
59
	protected void setUp() throws Exception {
60
		super.setUp();
61
	}
62

  
63
	/*
64
	 *  (non-Javadoc)
65
	 * @see junit.framework.TestCase#tearDown()
66
	 */
67
	protected void tearDown() throws Exception {
68
		super.tearDown();
69
	}
70
	
71
	/**
72
	 * A test (Correct)
73
	 */
74
	public void test1() {
75
		String query = "SELECT r.name, f.id FROM room r, flat f WHERE (r.user_name LIKE 'P%') AND (r.flat = f.id) AND (r.color_wall LIKE 'white') AND (r.height < 2.20);";
76
		
77
		System.out.println("?Es v?lida '" + query + "' ?");
78
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, false);
79

  
80
		if (sqlQueryValidation.validateQuery()) {
81
			System.out.println("Yes.");
82
		}
83
		else {
84
			System.out.println("No.");
85
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
86
			System.out.println(sqlQueryValidation.getErrorMessage());
87
			fail();
88
		}
89
	}
90
	
91
	/**
92
	 * A test (Correct)
93
	 */
94
	public void test2() {
95
		String query = "SELECT * FROM House;";
96

  
97
		System.out.println("?Es v?lida '" + query + "' ?");
98
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, false);
99

  
100
		if (sqlQueryValidation.validateQuery()) {
101
			System.out.println("Yes.");
102
		}
103
		else {
104
			System.out.println("No.");
105
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
106
			System.out.println(sqlQueryValidation.getErrorMessage());
107
			fail();
108
		}
109
	}
110

  
111
	/**
112
	 * A test (Incorrect)
113
	 */
114
	public void test3() {
115
		String query = "SELECT a* FROM House;";
116

  
117
		System.out.println("?Es v?lida '" + query + "' ?");
118
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, false);
119

  
120
		if (sqlQueryValidation.validateQuery()) {
121
			System.out.println("Yes.");
122
		}
123
		else {
124
			System.out.println("No.");
125
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
126
			System.out.println(sqlQueryValidation.getErrorMessage());
127
			fail();
128
		}
129
	}
130
	
131
	/**
132
	 * A test (Correct)
133
	 */
134
	public void test4() {
135
		String query = "SELECT * FROM House;";
136

  
137
		System.out.println("?Es v?lida '" + query + "' ?");
138
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, false);
139

  
140
		if (sqlQueryValidation.validateQuery()) {
141
			System.out.println("Yes.");
142
		}
143
		else {
144
			System.out.println("No.");
145
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
146
			System.out.println(sqlQueryValidation.getErrorMessage());
147
			fail();
148
		}
149
	}
150

  
151
	/**
152
	 * A test (Correct)
153
	 */
154
	public void test5() {
155
		String query = "r.level = f.level AND r.user_name LIKE \'P%\';";
156

  
157
		System.out.println("?Es v?lida '" + query + "' ?");
158
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
159

  
160
		if (sqlQueryValidation.validateQuery()) {
161
			System.out.println("Yes.");
162
		}
163
		else {
164
			System.out.println("No.");
165
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
166
			System.out.println(sqlQueryValidation.getErrorMessage());
167
			fail();
168
		}
169
	}
170

  
171
	/**
172
	 * A test (Incorrect)
173
	 */
174
	public void test6() {
175
		String query = "r.level = f.level a e3 w 	q3 	 ?32	9'}97AND r.user_name LIKE \'P%\';";
176

  
177
		System.out.println("?Es v?lida '" + query + "' ?");
178
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
179

  
180
		if (sqlQueryValidation.validateQuery()) {
181
			System.out.println("Yes.");
182
		}
183
		else {
184
			System.out.println("No.");
185
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
186
			System.out.println(sqlQueryValidation.getErrorMessage());			
187
			fail();
188
		}
189
	}
190
	
191
	/**
192
	 * A test (Correct)
193
	 */
194
	public void test7() {
195
		String query = "\"codigo\" = 'Canal d'Elx'";
196

  
197
		System.out.println("?Es v?lida '" + query + "' ?");
198
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
199

  
200
		if (sqlQueryValidation.validateQuery()) {
201
			System.out.println("Yes.");
202
		}
203
		else {
204
			System.out.println("No.");
205
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
206
			System.out.println(sqlQueryValidation.getErrorMessage());			
207
			fail();
208
		}
209
	}
210
	
211
	/**
212
	 * A test (Correct)
213
	 */
214
	public void test8() {
215
		String query = "\"codigo\" = 'Canal de la M?nega'";
216

  
217
		System.out.println("?Es v?lida '" + query + "' ?");
218
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
219

  
220
		if (sqlQueryValidation.validateQuery()) {
221
			System.out.println("Yes.");
222
		}
223
		else {
224
			System.out.println("No.");
225
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
226
			System.out.println(sqlQueryValidation.getErrorMessage());			
227
			fail();
228
		}
229
	}
230
	
231
	/**
232
	 * A test (Correct)
233
	 */
234
	public void test9() {
235
		String query = "\"codigo\" = 'Espa?a'";
236

  
237
		System.out.println("?Es v?lida '" + query + "' ?");
238
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
239

  
240
		if (sqlQueryValidation.validateQuery()) {
241
			System.out.println("Yes.");
242
		}
243
		else {
244
			System.out.println("No.");
245
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
246
			System.out.println(sqlQueryValidation.getErrorMessage());			
247
			fail();
248
		}
249
	}
250
	
251
	/**
252
	 * A test (Correct)
253
	 */
254
	public void test10() {
255
		String query = "\"codigo\" = ('Canal d'Elx')";
256

  
257
		System.out.println("?Es v?lida '" + query + "' ?");
258
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
259

  
260
		if (sqlQueryValidation.validateQuery()) {
261
			System.out.println("Yes.");
262
		}
263
		else {
264
			System.out.println("No.");
265
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
266
			System.out.println(sqlQueryValidation.getErrorMessage());			
267
			fail();
268
		}
269
	}
270
	
271
	/**
272
	 * A test (Correct)
273
	 */
274
	public void test11() {
275
		String query = "\"codigo\" = ( 'Canal d'Elx' )";
276

  
277
		System.out.println("?Es v?lida '" + query + "' ?");
278
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
279

  
280
		if (sqlQueryValidation.validateQuery()) {
281
			System.out.println("Yes.");
282
		}
283
		else {
284
			System.out.println("No.");
285
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
286
			System.out.println(sqlQueryValidation.getErrorMessage());			
287
			fail();
288
		}
289
	}
290
	
291
	/**
292
	 * A test (Correct)
293
	 */
294
	public void test12() {
295
		String query = "\"codigo\" = ( 'Canal d'Elx')";
296

  
297
		System.out.println("?Es v?lida '" + query + "' ?");
298
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
299

  
300
		if (sqlQueryValidation.validateQuery()) {
301
			System.out.println("Yes.");
302
		}
303
		else {
304
			System.out.println("No.");
305
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
306
			System.out.println(sqlQueryValidation.getErrorMessage());			
307
			fail();
308
		}
309
	}
310
	
311
	/**
312
	 * A test (Correct)
313
	 */
314
	public void test13() {
315
		String query = "\"codigo\" = ('Canal d'Elx' )";
316

  
317
		System.out.println("?Es v?lida '" + query + "' ?");
318
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
319

  
320
		if (sqlQueryValidation.validateQuery()) {
321
			System.out.println("Yes.");
322
		}
323
		else {
324
			System.out.println("No.");
325
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
326
			System.out.println(sqlQueryValidation.getErrorMessage());			
327
			fail();
328
		}
329
	}	
330
	
331
	/**
332
	 * A test (Incorrect)
333
	 */
334
	public void test14() {
335
		String query = "\"codigo\" = ('Canal d' Elx' )";
336

  
337
		System.out.println("?Es v?lida '" + query + "' ?");
338
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
339

  
340
		if (sqlQueryValidation.validateQuery()) {
341
			System.out.println("Yes.");
342
		}
343
		else {
344
			System.out.println("No.");
345
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
346
			System.out.println(sqlQueryValidation.getErrorMessage());			
347
			fail();
348
		}
349
	}
350
		
351
	/**
352
	 * A test (Incorrect)
353
	 */
354
	public void test15() {
355
		String query = "\"codigo\" = ('Canal d'Elx d'Alacant' )";
356

  
357
		System.out.println("?Es v?lida '" + query + "' ?");
358
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
359

  
360
		if (sqlQueryValidation.validateQuery()) {
361
			System.out.println("Yes.");
362
		}
363
		else {
364
			System.out.println("No.");
365
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
366
			System.out.println(sqlQueryValidation.getErrorMessage());			
367
			fail();
368
		}
369
	}	
370
	
371
	/**
372
	 * A test (Incorrect)
373
	 */
374
	public void test16() {
375
		String query = "\"fecha\" = Date(11-ene-2004)";
376

  
377
		System.out.println("?Es v?lida '" + query + "' ?");
378
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
379

  
380
		if (sqlQueryValidation.validateQuery()) {
381
			System.out.println("Yes.");
382
		}
383
		else {
384
			System.out.println("No.");
385
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
386
			System.out.println(sqlQueryValidation.getErrorMessage());			
387
			fail();
388
		}
389
	}
390
	
391
	/**
392
	 * A test (Correct)
393
	 */
394
	public void test17() {
395
		String query = "\"fecha\" = 11-ene-2004";
396

  
397
		System.out.println("?Es v?lida '" + query + "' ?");
398
		SQLQueryValidation sqlQueryValidation = new SQLQueryValidation(query, true);
399

  
400
		if (sqlQueryValidation.validateQuery()) {
401
			System.out.println("Yes.");
402
		}
403
		else {
404
			System.out.println("No.");
405
			System.out.println(sqlQueryValidation.getErrorPositionAsMessage());
406
			System.out.println(sqlQueryValidation.getErrorMessage());			
407
			fail();
408
		}
409
	}
410
 }
0 411

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/gui/filter/TestFilterExpressionFromWhereIsEmpty_Method.java
1
package org.gvsig.app.gui.filter;
2

  
3
import junit.framework.TestCase;
4

  
5

  
6
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
7
 *
8
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
9
 *
10
 * This program is free software; you can redistribute it and/or
11
 * modify it under the terms of the GNU General Public License
12
 * as published by the Free Software Foundation; either version 2
13
 * of the License, or (at your option) any later version.
14
 *
15
 * This program is distributed in the hope that it will be useful,
16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 * GNU General Public License for more details.
19
 *
20
 * You should have received a copy of the GNU General Public License
21
 * along with this program; if not, write to the Free Software
22
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
23
 *
24
 * For more information, contact:
25
 *
26
 *  Generalitat Valenciana
27
 *   Conselleria d'Infraestructures i Transport
28
 *   Av. Blasco Ib??ez, 50
29
 *   46010 VALENCIA
30
 *   SPAIN
31
 *
32
 *      +34 963862235
33
 *   gvsig@gva.es
34
 *      www.gvsig.gva.es
35
 *
36
 *    or
37
 *
38
 *   IVER T.I. S.A
39
 *   Salamanca 50
40
 *   46005 Valencia
41
 *   Spain
42
 *
43
 *   +34 963163400
44
 *   dac@iver.es
45
 */
46

  
47
/**
48
 * @author Pablo Piqueras Bartolom? (p_queras@hotmail.com)
49
 */
50
public class TestFilterExpressionFromWhereIsEmpty_Method extends TestCase {
51
	/*
52
	 *  (non-Javadoc)
53
	 * @see junit.framework.TestCase#setUp()
54
	 */
55
	protected void setUp() throws Exception {
56
		super.setUp();
57
	}
58

  
59
	/*
60
	 *  (non-Javadoc)
61
	 * @see junit.framework.TestCase#tearDown()
62
	 */
63
	protected void tearDown() throws Exception {
64
		super.tearDown();
65
	}	
66

  
67
	/**
68
	 * Test 1 (valid)
69
	 */
70
	public void test1() {
71
		String expression = new String("select * from 'gdbms144426c_10fc90fa1aa__7c18' where ;");
72
		
73
		System.out.println("? Es vac?o el filtro en: " + expression + " ? ");
74

  
75
		if (this.filterExpressionFromWhereIsEmpty(expression))
76
			System.out.println("Si.");
77
		else
78
			System.out.println("No.");
79
	}
80
	
81
	/**
82
	 * Test 2 (invalid)
83
	 */
84
	public void test2() {
85
		String expression = new String("select * from 'gdbms158fd70_10fc92ee61e__7c18' where layer < '61';");
86
		
87
		System.out.println("? Es vac?o el filtro en: " + expression + " ? ");
88

  
89
		if (this.filterExpressionFromWhereIsEmpty(expression))
90
			System.out.println("Si.");
91
		else
92
			System.out.println("No.");
93
	}	
94
	
95
	/**
96
	 * Returns true if the WHERE subconsultation of the filterExpression is empty ("")
97
	 * 
98
	 * @param expression An string
99
	 * @return A boolean value 
100
	 */
101
	private boolean filterExpressionFromWhereIsEmpty(String expression) {
102
		String subExpression = expression.trim();
103
		int pos;	
104
		
105
		// Remove last ';' if exists
106
		if (subExpression.charAt(subExpression.length() -1) == ';')
107
			subExpression = subExpression.substring(0, subExpression.length() -1).trim();
108
		
109
		// If there is no 'where' clause
110
		if ((pos = subExpression.indexOf("where")) == -1)
111
			return false;
112
		
113
		// If there is no subexpression in the WHERE clause -> true
114
		subExpression = subExpression.substring(pos + 5, subExpression.length()).trim(); // + 5 is the length of 'where'
115
		if ( subExpression.length() == 0 )
116
			return true;
117
		else
118
			return false;
119
	}
120
}
0 121

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/project/ProjectTest.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 *
19
 * For more information, contact:
20
 *
21
 *  Generalitat Valenciana
22
 *   Conselleria d'Infraestructures i Transport
23
 *   Av. Blasco Ib??ez, 50
24
 *   46010 VALENCIA
25
 *   SPAIN
26
 *
27
 *      +34 963862235
28
 *   gvsig@gva.es
29
 *      www.gvsig.gva.es
30
 *
31
 *    or
32
 *
33
 *   IVER T.I. S.A
34
 *   Salamanca 50
35
 *   46005 Valencia
36
 *   Spain
37
 *
38
 *   +34 963163400
39
 *   dac@iver.es
40
 */
41

  
42
/* CVS MESSAGES:
43
*
44
* $Id$
45
* $Log$
46
* Revision 1.1  2006-11-08 10:57:55  jaume
47
* remove unecessary imports
48
*
49
*
50
*/
51
package org.gvsig.app.project;
52

  
53
import junit.framework.TestCase;
54

  
55
//TODO comentado para que compile
56
public class ProjectTest extends TestCase {
57
	static final String projectFile1 = "test/test.gvp";
58
	static final String projectFile2 = "test/test.gvp";
59
	static final String projectFile3 = null;
60
	static final String projectFile4 = null;
61

  
62
	static final String driversPath = "lib-test/drivers";
63
	Project p1, p2;
64

  
65
	public void setUp() {
66

  
67
//		LayerFactory.setDriversPath(driversPath);
68
//
69
//		Reader reader;
70
//
71
//		// TODO Install drivers support for testing
72
//		try {
73
//			reader = new FileReader(new File(projectFile1));
74
//
75
//			XmlTag tag = (XmlTag) XmlTag.unmarshal(reader);
76
//			XMLEntity xml=new XMLEntity(tag);
77
//			p1 = Project.createFromXML(xml);
78
//			p2 = Project.createFromXML(xml);
79
//		} catch (Exception e) {
80
//			e.printStackTrace();
81
//		}
82

  
83
	}
84

  
85
//	public void testSignature() {
86
//		try {
87
//			assertTrue(p1.computeSignature() == p2.computeSignature());
88
//		} catch (SaveException e) {}
89
////		assertTrue(p1.equals(p2));
90
//	}
91
}
0 92

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/project/TableTest.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2005 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 *
19
 * For more information, contact:
20
 *
21
 *  Generalitat Valenciana
22
 *   Conselleria d'Infraestructures i Transport
23
 *   Av. Blasco Ib??ez, 50
24
 *   46010 VALENCIA
25
 *   SPAIN
26
 *
27
 *      +34 963862235
28
 *   gvsig@gva.es
29
 *      www.gvsig.gva.es
30
 *
31
 *    or
32
 *
33
 *   IVER T.I. S.A
34
 *   Salamanca 50
35
 *   46005 Valencia
36
 *   Spain
37
 *
38
 *   +34 963163400
39
 *   dac@iver.es
40
 */
41

  
42
/* CVS MESSAGES:
43
*
44
* $Id$
45
* $Log$
46
* Revision 1.2  2007-07-30 12:56:04  jaume
47
* organize imports, java 5 code downgraded to 1.4 and added PictureFillSymbol
48
*
49
* Revision 1.1  2007/07/13 12:31:03  caballero
50
* TableTest
51
*
52
* Revision 1.1.2.1  2006/11/15 04:10:44  jjdelcerro
53
* *** empty log message ***
54
*
55
* Revision 1.1  2006/11/08 10:57:55  jaume
56
* remove unecessary imports
57
*
58
*
59
*/
60
package org.gvsig.app.project;
61

  
62
import junit.framework.TestCase;
63
//TODO comentado para que compile
64
public class TableTest extends TestCase {
65
	public void testTable() {
66
//		DriverManager dm = new DriverManager();
67
//		dm.setValidation(new DriverValidation() {
68
//				public boolean validate(Driver d) {
69
//					return ((d instanceof ObjectDriver) ||
70
//					(d instanceof FileDriver) ||
71
//					(d instanceof DBDriver));
72
//				}
73
//			});
74
//		dm.loadDrivers(new File("../_fwAndami/gvSIG/extensiones/com.iver.cit.gvsig/drivers"));
75
//
76
//		String[] Campos= {"Tipo_Via","Nombre","Numero","Sexo","CoorX","CoorY"};
77
//        int [] fieldTypes={12,12,12,12,12,12};
78
//        DBFDriver driver = new DBFDriver();
79
//        String name = "Tabla";
80
//        DataSourceFactory dsf =LayerFactory.getDataSourceFactory();
81
//        dsf.setDriverManager(dm);
82
//        dsf.createFileDataSource(driver.getName(), name, "Archivo", Campos, fieldTypes);
83
//        DataSource dataSource = null;
84
//        dsf.createFileDataSource(driver.getName(), name, "MYTABLA.dbf", Campos, fieldTypes);
85
//
86
//        try {
87
//            dataSource = dsf.createRandomDataSource(name, DataSourceFactory.AUTOMATIC_OPENING);
88
//
89
//            dataSource.setDataSourceFactory(dsf);
90
//            SelectableDataSource sds = new SelectableDataSource(dataSource);
91
//            EditableAdapter auxea = new EditableAdapter();
92
//            auxea.setOriginalDataSource(sds);
93
//
94
//
95
//            ProjectTable projectTables = ProjectFactory.createTable(name,
96
//                auxea);
97
//
98
//            ProjectExtension ext = (ProjectExtension)PluginServices.getExtension(ProjectExtension.class);
99
//            ext.getProject().addDocument(projectTables);
100
//        } catch (DriverLoadException e) {
101
//            // TODO Auto-generated catch block
102
//            e.printStackTrace();
103
//        } catch (NoSuchTableException e) {
104
//            // TODO Auto-generated catch block
105
//            e.printStackTrace();
106
//        } catch (ReadDriverException e) {
107
//			// TODO Auto-generated catch block
108
//			e.printStackTrace();
109
//		}
110
        }
111

  
112
//	public void testSignature() {
113
//		try {
114
//			assertTrue(p1.computeSignature() == p2.computeSignature());
115
//		} catch (SaveException e) {}
116
////		assertTrue(p1.equals(p2));
117
//	}
118
}
0 119

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/AllTests.java
1
package org.gvsig.app;
2

  
3
import junit.framework.Test;
4
import junit.framework.TestSuite;
5

  
6
import org.gvsig.app.gui.filter.TestFilterExpressionFromWhereIsEmpty_Method;
7
import org.gvsig.app.panelGroup.Test2ExceptionsUsingTabbedPanel;
8
import org.gvsig.app.panelGroup.Test2ExceptionsUsingTreePanel;
9
import org.gvsig.app.panelGroup.TestPanelGroupLoaderFromExtensionPoint;
10
import org.gvsig.app.project.ProjectTest;
11
import org.gvsig.app.project.TableTest;
12
import org.gvsig.app.sqlQueryValidation.TestSQLQueryValidation;
13
import org.gvsig.app.test.Persistence;
14

  
15
public class AllTests {
16

  
17
	public static Test suite() {
18
		TestSuite suite = new TestSuite("Test for org.gvsig.app");
19
		//$JUnit-BEGIN$
20
		suite.addTestSuite(Persistence.class);
21
		suite.addTestSuite(ProjectTest.class);
22
		suite.addTestSuite(TableTest.class);
23
		suite.addTestSuite(TestFilterExpressionFromWhereIsEmpty_Method.class);
24
		suite.addTestSuite(TestSQLQueryValidation.class);
25
		suite.addTestSuite(TestPanelGroupLoaderFromExtensionPoint.class);
26
		suite.addTestSuite(Test2ExceptionsUsingTabbedPanel.class);
27
		suite.addTestSuite(Test2ExceptionsUsingTreePanel.class);
28
		
29
		//$JUnit-END$
30
		return suite;
31
	}
32

  
33
}
0 34

  
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/panelGroup/Test2TabbedPanel.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2007 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 */
19

  
20
package org.gvsig.app.panelGroup;
21

  
22
import javax.swing.JFrame;
23

  
24
import org.gvsig.gui.beans.panelGroup.PanelGroupManager;
25
import org.gvsig.gui.beans.panelGroup.tabbedPanel.TabbedPanel;
26
import org.gvsig.tools.exception.BaseException;
27

  
28
import org.gvsig.app.panelGroup.loaders.PanelGroupLoaderFromExtensionPoint;
29
import org.gvsig.app.panelGroup.samples.Samples_ExtensionPointsOfIPanels;
30

  
31
/**
32
 * <p>Tests the creation of a {@link TabbedPanel TabbedPanel} object using {@link PanelGroupLoaderFromExtensionPoint PanelGroupLoaderFromExtensionPoint} .</p>
33
 * 
34
 * @version 16/10/2007
35
 * @author Pablo Piqueras Bartolom? (pablo.piqueras@iver.es) 
36
 */
37
public class Test2TabbedPanel {
38
	/**
39
	 * <p>Test method for the Test2TabbedPanel.</p>
40
	 * 
41
	 * @param args optional arguments
42
	 */
43
	public static void main(String[] args) {
44
		try {
45
			Samples_ExtensionPointsOfIPanels.loadSample();
46
			
47
			PanelGroupManager manager = PanelGroupManager.getManager();
48
			manager.registerPanelGroup(TabbedPanel.class);
49
			manager.setDefaultType(TabbedPanel.class);
50

  
51
			TabbedPanel panelGroup = (TabbedPanel) manager.getPanelGroup(Samples_ExtensionPointsOfIPanels.REFERENCE2);
52
			PanelGroupLoaderFromExtensionPoint loader = new PanelGroupLoaderFromExtensionPoint(Samples_ExtensionPointsOfIPanels.EXTENSIONPOINT2_NAME);
53

  
54
			// Begin: Test the normal load
55
			panelGroup.loadPanels(loader);
56
			// End: Test the normal load
57

  
58
			// Objects creation
59
			JFrame jFrame = new JFrame();
60
			jFrame.setTitle("Test TabbedPanel using PanelGroupLoaderFromExtensionPoint");
61
		    jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
62
		    jFrame.setSize(panelGroup.getPreferredSize());
63
		    jFrame.getContentPane().add(panelGroup);
64
		    
65
			jFrame.setVisible(true);
66
			
67
		} catch (BaseException bE) {
68
			System.out.println(bE.getLocalizedMessageStack());
69
		} catch (Exception e) {
70
			e.printStackTrace();
71
		}
72
	}
73
}
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/panelGroup/samples/SampleInitializingExcetionPanel.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2007 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 */
19

  
20
package org.gvsig.app.panelGroup.samples;
21

  
22
import java.awt.Color;
23
import java.io.Serializable;
24

  
25
import javax.swing.JScrollPane;
26
import javax.swing.JTextArea;
27

  
28
import org.gvsig.gui.beans.panelGroup.panels.AbstractPanel;
29

  
30
/**
31
 * <p>Sample of {@link AbstractPanel AbstractPanel}.</p>
32
 * 
33
 * @version 16/10/2007
34
 * @author Pablo Piqueras Bartolom? (pablo.piqueras@iver.es) 
35
 */
36
public class SampleInitializingExcetionPanel extends AbstractPanel implements Serializable {
37
	private static final long serialVersionUID = -876907003975432865L;
38

  
39
	/**
40
	 * <p>Element for the interface.</p>
41
	 */
42
	private JTextArea jTextArea = null;
43

  
44
	/**
45
	 * @see AbstractPanel#AbstractPanel()
46
	 */
47
	public SampleInitializingExcetionPanel() {
48
		super();
49
		initialize();
50
	}
51

  
52
	/**
53
	 * @see AbstractPanel#AbstractPanel(String, String, String)
54
	 */
55
	public SampleInitializingExcetionPanel(String id, String label, String labelGroup) {
56
		super(id, label, labelGroup);
57
		
58
		initialize();
59
	}
60

  
61
	@Override
62
	protected void initialize() {
63
		add(new JScrollPane(getJTextArea()));
64
		setToolTipText(getID());
65
		
66
		setID(Samples_ExtensionPointsOfIPanels.PANELS1_IDS[0]);
67
		setLabel(Samples_ExtensionPointsOfIPanels.PANELS1_LABELS[0]);
68
		setLabelGroup(Samples_ExtensionPointsOfIPanels.PANELS1_LABELGROUPS[0]);
69
		
70
		// Force to generate an exception
71
		double badValue = 2 / 0;
72

  
73
		resetChangedStatus();
74
	}
75
	
76
	/**
77
	 * This method initializes jTextArea
78
	 *
79
	 * @return JTextArea
80
	 */
81
	private JTextArea getJTextArea() {
82
		if (jTextArea == null) {
83
			jTextArea = new JTextArea(5, 40);
84
			jTextArea.setText("I\'m a JTextArea object in the \"Panel\" with:\n\nID: " + getID() + "\nLabel: " + getLabel() + "\nLabelGroup: " + getLabelGroup());
85
			jTextArea.setEditable(false);
86
			jTextArea.setBackground(Color.GREEN);
87
		}
88

  
89
		return jTextArea;
90
	}
91

  
92
	@Override
93
	public void setID(String id) {
94
		super.setID(id);
95

  
96
		setToolTipText(getID());
97
		getJTextArea().setText("I\'m a JTextArea object in the \"Panel\" with:\n\nID: " + getID() + "\nLabel: " + getLabel() + "\nLabelGroup: " + getLabelGroup());
98
		hasChanged = true;
99
	}
100

  
101
	@Override
102
	public void setLabel(String label) {
103
		super.setLabel(label);
104
		
105
		getJTextArea().setText("I\'m a JTextArea object in the \"Panel\" with:\n\nID: " + getID() + "\nLabel: " + getLabel() + "\nLabelGroup: " + getLabelGroup());
106
		hasChanged = true;
107
	}
108

  
109
	@Override
110
	public void setLabelGroup(String labelGroup) {
111
		super.setLabelGroup(labelGroup);
112
		
113
		getJTextArea().setText("I\'m a JTextArea object in the \"Panel\" with:\n\nID: " + getID() + "\nLabel: " + getLabel() + "\nLabelGroup: " + getLabelGroup());
114
		hasChanged = true;
115
	}
116

  
117
	/*
118
	 * (non-Javadoc)
119
	 * @see org.gvsig.gui.beans.panelGroup.panels.IPanel#accept()
120
	 */
121
	public void accept() {
122
		System.out.println("I'm the IPanel: " + toString() + "\n and I'm executing an 'accept' method.");
123
	}
124

  
125
	/*
126
	 * (non-Javadoc)
127
	 * @see org.gvsig.gui.beans.panelGroup.panels.IPanel#apply()
128
	 */
129
	public void apply() {
130
		System.out.println("I'm the IPanel: " + toString() + "\n and I'm executing an 'apply' method.");
131
	}
132

  
133
	/*
134
	 * (non-Javadoc)
135
	 * @see org.gvsig.gui.beans.panelGroup.panels.IPanel#cancel()
136
	 */
137
	public void cancel() {
138
		System.out.println("I'm the IPanel: " + toString() + "\n and I'm executing a 'cancel' method.");
139
	}
140

  
141
	/*
142
	 * (non-Javadoc)
143
	 * @see org.gvsig.gui.beans.panelGroup.panels.IPanel#selected()
144
	 */
145
	public void selected() {
146
		System.out.println("I'm the IPanel: " + toString() + "\n and I've been selected. My information is: " +
147
		 "\n\tID: " + getID() + "\n\tLABEL_GROUP: " + getLabelGroup() + "\n\tLABEL: " + getLabel() + "\n\tCLASS: " + getClass() +
148
		 "\n\tMy Preferred Size: " + getPreferredSize() + "\n\tAnd My size: " + getSize());
149
	}
150
}
tags/v2_0_0_Build_2009/applications/appgvSIG/src-test/org/gvsig/app/panelGroup/samples/SampleTransparencyPanel.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2007 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 */
19

  
20
package org.gvsig.app.panelGroup.samples;
21

  
22
import java.awt.Color;
23
import java.awt.Dimension;
24
import java.awt.event.MouseAdapter;
25
import java.awt.event.MouseEvent;
26
import java.io.Serializable;
27

  
28
import javax.swing.JScrollPane;
29
import javax.swing.JTextArea;
30

  
31
import org.gvsig.gui.beans.panelGroup.panels.AbstractPanel;
32

  
33

  
34
/**
35
 * <p>Sample of {@link AbstractPanel AbstractPanel}.</p>
36
 * 
37
 * @version 16/10/2007
38
 * @author Pablo Piqueras Bartolom? (pablo.piqueras@iver.es) 
39
 */
40
public class SampleTransparencyPanel extends AbstractPanel implements Serializable {
41
	private static final long serialVersionUID = -4145789119404234621L;
42

  
43
	/**
44
	 * <p>Element for the interface.</p>
45
	 */
46
	private JTextArea jTextArea = null;
47
	
48
	/**
49
	 * @see AbstractPanel#AbstractPanel()
50
	 */
51
	public SampleTransparencyPanel() {
52
		super();
53
		initialize();
54
	}
55
	
56
	/**
57
	 * @see AbstractPanel#AbstractPanel(String, String, String)
58
	 */
59
	public SampleTransparencyPanel(String id, String label, String labelGroup) {
60
		super(id, label, labelGroup);
61
		initialize();
62
	}
63
	
64
	@Override
65
	protected void initialize() {
66
		add(new JScrollPane(getJTextArea()));
67
		setToolTipText(getID());
68
		
69
		setID(Samples_ExtensionPointsOfIPanels.PANELS1_IDS[2]);
70
		setLabel(Samples_ExtensionPointsOfIPanels.PANELS1_LABELS[2]);
71
		setLabelGroup(Samples_ExtensionPointsOfIPanels.PANELS1_LABELGROUPS[2]);
72
		setPreferredSize(new Dimension(Samples_ExtensionPointsOfIPanels.PANELS_DEFAULT_WIDTH, Samples_ExtensionPointsOfIPanels.PANELS_DEFAULT_HEIGHT));
73
		resetChangedStatus();
74
	}
75
	
76
	/**
77
	 * This method initializes jTextArea
78
	 *
79
	 * @return JTextArea
80
	 */
81
	private JTextArea getJTextArea() {
82
		if (jTextArea == null) {
83
			jTextArea = new JTextArea(5, 40);
84
			jTextArea.setText("I\'m a JTextArea object in the \"Panel\" with:\n\nID: " + getID() + "\nLabel: " + getLabel() + "\nLabelGroup: " + getLabelGroup());
85
			jTextArea.setEditable(false);
86
			jTextArea.setBackground(Color.BLUE);
87
			jTextArea.addMouseListener(new MouseAdapter() {
88
				
89
				public void mouseClicked(MouseEvent e) {
90
					if (getPanelGroup() != null) {
91
						getPanelGroup().setEnabledApplyButton(! getPanelGroup().isEnabledApplyButton());
92
					}	
93
				}
94
			});
95
		}
96

  
97
		return jTextArea;
98
	}
99
	
100
	@Override
101
	public void setID(String id) {
102
		super.setID(id);
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff