Revision 10147

View differences:

org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/package.info
1
#
2
#Thu Mar 07 10:25:56 CET 2013
3
owner=gvSIG Association
4
code=org.gvsig.raster.tilecache.io
5
java-version=j1_5
6
official=true
7
type=plugin
8
version=2.0.0-0
9
state=devel
10
operating-system=all
11
dependencies=
12
sources-url=https\://devel.gvsig.org/redmine/projects/gvsig-raster/repository/show/org.gvsig.raster.tilecache/tags/2.0.0/org.gvsig.raster.tilecache.io
13
web-url=http\://www.gvsig.com
14
architecture=all
15
model-version=1.0.1
16
categories=
17
description=cache service for gvSIG
18
buildNumber=0
19
gvSIG-version=2.0.0
20
name=org.gvsig.raster.tilecache.io
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/test/resources/README.txt
1
Put into this folder the resources needed by your test classes.
2

  
3
This folder is added to the Tests classpath, so you can load any resources 
4
through the ClassLoader.
5

  
6
By default, in this folder you can find an example of log4j configuration,
7
prepared to log messages through the console, so logging works when you
8
run your tests classes.
0 9

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/test/resources/log4j.xml
1
<?xml version="1.0" encoding="ISO-8859-1" ?>
2
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
3

  
4
<!-- 
5
Log4J configuration file for unit tests execution.
6
 -->
7
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
8

  
9
	<!-- Appender configuration to show logging messages through the console -->
10
	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
11
		<layout class="org.apache.log4j.PatternLayout">
12
			<param name="ConversionPattern" value="%d{HH:mm:ss,SSS} %-5p [%c{2}.%M()]\n  %m%n" />
13
		</layout>
14
	</appender>
15

  
16
	<!-- 
17
	Activate logging messages of DEBUG level of higher only for the
18
	org.gvsig.tools packages.
19
	You can put full classes names or packages instead, to configure
20
	logging for all the classes and subpackages of the package.
21
	-->
22
	<category name="org.gvsig.tools">
23
		<priority value="DEBUG" />
24
	</category>
25
	<category name="org.gvsig.raster">
26
		<priority value="DEBUG" />
27
	</category>
28

  
29
	<!-- 
30
	By default, show only logging messages of INFO level or higher, 
31
	through the previously configured CONSOLE appender. 
32
	-->
33
	<root>
34
		<priority value="INFO" />
35
		<appender-ref ref="CONSOLE" />
36
	</root>
37
</log4j:configuration>
0 38

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/test/resources/TemplateRasterProvider.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
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 2
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
 */
22
package org.gvsig.fmap.dal.coverage.dataset.io.netcdf;
23

  
24
import java.awt.geom.AffineTransform;
25

  
26
import org.gvsig.fmap.dal.DALFileLocator;
27
import org.gvsig.fmap.dal.DALLocator;
28
import org.gvsig.fmap.dal.DataStore;
29
import org.gvsig.fmap.dal.coverage.dataset.Buffer;
30
import org.gvsig.fmap.dal.coverage.dataset.io.tile.downloader.FileTileServer;
31
import org.gvsig.fmap.dal.coverage.datastruct.BandList;
32
import org.gvsig.fmap.dal.coverage.datastruct.Extent;
33
import org.gvsig.fmap.dal.coverage.exception.BandAccessException;
34
import org.gvsig.fmap.dal.coverage.exception.FileNotOpenException;
35
import org.gvsig.fmap.dal.coverage.exception.InvalidSetViewException;
36
import org.gvsig.fmap.dal.coverage.exception.NotSupportedExtensionException;
37
import org.gvsig.fmap.dal.coverage.exception.ParsingException;
38
import org.gvsig.fmap.dal.coverage.exception.ProcessInterruptedException;
39
import org.gvsig.fmap.dal.coverage.exception.RasterDriverException;
40
import org.gvsig.fmap.dal.coverage.store.RasterFileStoreParameters;
41
import org.gvsig.fmap.dal.spi.DataManagerProviderServices;
42
import org.gvsig.fmap.dal.spi.DataStoreProviderServices;
43
import org.gvsig.metadata.MetadataLocator;
44
import org.gvsig.raster.cache.tile.provider.TileListener;
45
import org.gvsig.raster.cache.tile.provider.TileServer;
46
import org.gvsig.raster.impl.datastruct.ExtentImpl;
47
import org.gvsig.raster.impl.provider.DefaultRasterProvider;
48
import org.gvsig.raster.impl.provider.RasterProvider;
49
import org.gvsig.raster.impl.store.AbstractRasterDataParameters;
50
import org.gvsig.raster.impl.store.AbstractRasterDataStore;
51
import org.gvsig.raster.impl.store.DefaultStoreFactory;
52
import org.gvsig.raster.impl.store.properties.DataStoreColorInterpretation;
53
import org.gvsig.raster.impl.store.properties.DataStoreMetadata;
54
import org.gvsig.raster.impl.store.properties.DataStoreTransparency;
55
import org.gvsig.tools.ToolsLocator;
56
import org.gvsig.tools.extensionpoint.ExtensionPoint;
57
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
58
/**
59
 * Data provider for ...
60
 *
61
 * @author Nacho Brodin (nachobrodin@gmail.com)
62
 */
63
public class NetCDFProvider extends DefaultRasterProvider {
64
	public static String        NAME                     = "Template Store";
65
	public static String        DESCRIPTION              = "Template Raster file";
66
	public final String         METADATA_DEFINITION_NAME = "TemplateStore";
67
	
68
	private static String[]     formatList               = new String[]{"*"};
69

  
70
	private Extent              viewRequest              = null;
71
	private TileServer          tileServer               = null;
72
	private boolean             open                     = false;
73

  
74
	public static void register() {
75
		DataManagerProviderServices dataman = (DataManagerProviderServices) DALLocator.getDataManager();
76
		if (dataman != null && !dataman.getStoreProviders().contains(NAME)) {
77
			dataman.registerStoreProvider(NAME,
78
					NetCDFProvider.class, NetCDFDataParameters.class);
79
		}
80
		
81
		if(DALFileLocator.getFilesystemServerExplorerManager() != null)
82
			DALFileLocator.getFilesystemServerExplorerManager().registerProvider(
83
					NAME, DESCRIPTION,
84
					NetCDFFilesystemServerExplorer.class);
85
		
86
		dataman.registerStoreFactory(NAME, DefaultStoreFactory.class);
87
	}
88
	
89
	/**
90
	 * Returns true if the extension is supported and false if doesn't
91
	 * @param ext
92
	 * @return
93
	 */
94
	public static boolean isExtensionSupported(String ext) {
95
		for (int i = 0; i < formatList.length; i++) {
96
			if(formatList[i].compareTo(ext) == 0)
97
				return true;
98
		}
99
		return false;
100
	}
101
	
102
	/**
103
	 * Constructor. Abre el dataset.
104
	 * @param proj Proyecci?n
105
	 * @param fName Nombre del fichero
106
	 * @throws NotSupportedExtensionException
107
	 */
108
	public NetCDFProvider(String params) throws NotSupportedExtensionException {
109
		super(params);
110
		if(params instanceof String) {
111
			NetCDFDataParameters p = new NetCDFDataParameters();
112
			p.setURI((String)params);
113
			super.init(p, null, ToolsLocator.getDynObjectManager()
114
					.createDynObject(
115
							MetadataLocator.getMetadataManager().getDefinition(
116
									DataStore.METADATA_DEFINITION_NAME)));
117
			init(p, null);
118
		}
119
	}
120
	
121
	public NetCDFProvider (NetCDFDataParameters params,
122
			AbstractRasterDataStore storeServices) throws NotSupportedExtensionException {
123
		super(params, storeServices, ToolsLocator.getDynObjectManager()
124
				.createDynObject(
125
						MetadataLocator.getMetadataManager().getDefinition(
126
								DataStore.METADATA_DEFINITION_NAME)));
127
		init(params, storeServices);
128
	}
129

  
130
	/**
131
	 * Crea las referencias al fichero y carga
132
	 * las estructuras con la informaci?n y los metadatos.
133
	 * @param proj Proyecci?n
134
	 * @param param Parametros de carga
135
	 * @throws NotSupportedExtensionException
136
	 */
137
	public void init (AbstractRasterDataParameters params,
138
			DataStoreProviderServices storeServices) throws NotSupportedExtensionException {
139
		//TODO:
140
		
141
		if(((RasterFileStoreParameters)params).getFile().exists()) {
142
			setParam(params);
143
			colorTable = null;
144
			noData = 0;
145
			wktProjection = null;
146
			//CrsWkt crs = new CrsWkt(wktProjection);
147
			//IProjection proj = CRSFactory.getCRS("EPSG:23030");
148
			noDataEnabled = true;
149
			ownTransformation = null;
150
			externalTransformation = (AffineTransform)ownTransformation.clone();
151
			load();
152
		} else
153
			setParam(params);
154
		bandCount = 0;
155
		setDataType(null);
156
		super.init();
157

  
158
		try {
159
			loadFromRmf(getRmfBlocksManager());
160
		} catch (ParsingException e) {
161
			//No lee desde rmf
162
		}
163
	}
164
	
165
	/*
166
	 * (non-Javadoc)
167
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#load()
168
	 */
169
	public RasterProvider load() {
170
		return this;
171
	}
172
	
173
	/*
174
	 * (non-Javadoc)
175
	 * @see org.gvsig.raster.impl.provider.RasterProvider#isOpen()
176
	 */
177
	public boolean isOpen() {
178
		return open;
179
	}
180

  
181
	/*
182
	 * (non-Javadoc)
183
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#close()
184
	 */
185
	public void close() {
186
		//TODO:
187
	}
188

  
189
	/*
190
	 * (non-Javadoc)
191
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#translateFileName(java.lang.String)
192
	 */
193
	public String translateFileName(String fileName) {
194
		return fileName;
195
	}
196

  
197
	/**
198
	 * Asigna el extent de la vista actual. existe un fichero .rmf debemos hacer una transformaci?n
199
	 * de la vista asignada ya que la petici?n viene en coordenadas del fichero .rmf y la vista (v)
200
	 * ha de estar en coordenadas del fichero.
201
	 */
202
	public void setView(Extent e) {
203
		viewRequest = new ExtentImpl(e);
204
	}
205

  
206
	/*
207
	 * (non-Javadoc)
208
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getView()
209
	 */
210
	public Extent getView() {
211
		return viewRequest;
212
	}
213

  
214
	/*
215
	 * (non-Javadoc)
216
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWidth()
217
	 */
218
	public double getWidth() {
219
		//TODO:
220
		return 0;
221
	}
222

  
223
	/*
224
	 * (non-Javadoc)
225
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getHeight()
226
	 */
227
	public double getHeight() {
228
		//TODO:
229
		return 0;
230
	}
231

  
232
	/**
233
	 * Read a line from the file
234
	 * @param line
235
	 * @param band
236
	 * @return
237
	 * @throws InvalidSetViewException
238
	 * @throws FileNotOpenException
239
	 * @throws RasterDriverException
240
	 * @Deprecated This operation is deprecated because is not useful and in the future
241
	 * it will not be maintained. The abstract operation has dissapear
242
	 */
243
	public Object readCompleteLine(int line, int band)throws InvalidSetViewException, FileNotOpenException, RasterDriverException {
244
		if(line > this.getHeight() || band > this.getBandCount())
245
			throw new InvalidSetViewException("Request out of grid");
246

  
247
		//TODO:
248
		return null;
249
	}
250

  
251
	/*
252
	 *  (non-Javadoc)
253
	 * @see org.gvsig.raster.dataset.RasterDataset#readBlock(int, int)
254
	 */
255
	public Object readBlock(int pos, int blockHeight)
256
		throws InvalidSetViewException, FileNotOpenException, RasterDriverException, ProcessInterruptedException {
257
		if(pos < 0)
258
			throw new InvalidSetViewException("Request out of grid");
259

  
260
		if((pos + blockHeight) > getHeight())
261
			blockHeight = Math.abs(((int)getHeight()) - pos);
262
		
263
		//TODO:
264
		return null;
265
	}
266

  
267
	/*
268
	 * (non-Javadoc)
269
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getData(int, int, int)
270
	 */
271
	public Object getData(int x, int y, int band)throws InvalidSetViewException, FileNotOpenException, RasterDriverException {
272
		if(x < 0 || y < 0 || x >= getWidth() || y >= getHeight())
273
			throw new InvalidSetViewException("Request out of grid");
274
		
275
		//TODO
276
		return null;
277
	}
278

  
279
	/*
280
	 * (non-Javadoc)
281
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(double, double, double, double, int, int, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.raster.cache.tile.provider.TileListener)
282
	 */
283
	public void getWindow(Extent ex, int bufWidth, int bufHeight, 
284
			BandList bandList, TileListener listener) throws ProcessInterruptedException, RasterDriverException {
285
		//TODO
286
	}
287

  
288
	/*
289
	 * (non-Javadoc)
290
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(org.gvsig.fmap.dal.coverage.datastruct.Extent, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.fmap.dal.coverage.dataset.Buffer)
291
	 */
292
	public Buffer getWindow(Extent ex, BandList bandList, Buffer rasterBuf) 
293
		throws ProcessInterruptedException, RasterDriverException {
294
		//TODO
295

  
296
		return rasterBuf;
297
	}
298

  
299
	/*
300
	 * (non-Javadoc)
301
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(double, double, double, double, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.fmap.dal.coverage.dataset.Buffer, boolean)
302
	 */
303
	public Buffer getWindow(double ulx, double uly, double w, double h, 
304
			BandList bandList, Buffer rasterBuf, boolean adjustToExtent) throws ProcessInterruptedException, RasterDriverException {
305
		//TODO
306

  
307
		return rasterBuf;
308
	}
309

  
310
	/*
311
	 * (non-Javadoc)
312
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(double, double, double, double, int, int, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.fmap.dal.coverage.dataset.Buffer, boolean)
313
	 */
314
	public Buffer getWindow(Extent extent, 
315
			int bufWidth, int bufHeight, BandList bandList, Buffer rasterBuf, boolean adjustToExtent) throws ProcessInterruptedException, RasterDriverException {
316
		//TODO
317
		
318
		return rasterBuf;
319
	}
320

  
321
	/*
322
	 * (non-Javadoc)
323
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(int, int, int, int, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.fmap.dal.coverage.dataset.Buffer)
324
	 */
325
	public Buffer getWindow(int x, int y, int w, int h, 
326
			BandList bandList, Buffer rasterBuf) throws ProcessInterruptedException, RasterDriverException {
327
		//TODO
328
		
329
		return rasterBuf;
330
	}
331

  
332
	/*
333
	 * (non-Javadoc)
334
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getWindowRaster(int, int, int, int, int, int, org.gvsig.fmap.dal.coverage.datastruct.BandList, org.gvsig.fmap.dal.coverage.dataset.Buffer)
335
	 */
336
	public Buffer getWindow(int x, int y, int w, int h, 
337
			int bufWidth, int bufHeight, BandList bandList, Buffer rasterBuf) throws ProcessInterruptedException, RasterDriverException {
338
		//TODO
339
		
340
		return rasterBuf;
341
	}
342

  
343
	/*
344
	 * (non-Javadoc)
345
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getBlockSize()
346
	 */
347
	public int getBlockSize(){
348
		//TODO
349
		
350
		return 0;
351
	}
352

  
353
	/*
354
	 * (non-Javadoc)
355
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getMetadata()
356
	 */
357
	public DataStoreMetadata getMetadata() {
358
		//TODO
359
		
360
		return null;
361
	}
362

  
363
	/*
364
	 * (non-Javadoc)
365
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getColorInterpretation()
366
	 */
367
	public DataStoreColorInterpretation getColorInterpretation(){
368
		//TODO
369
		
370
		return null;
371
	}
372

  
373
	/*
374
	 * (non-Javadoc)
375
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#setColorInterpretation(org.gvsig.raster.impl.store.properties.DataStoreColorInterpretation)
376
	 */
377
	public void setColorInterpretation(DataStoreColorInterpretation colorInterpretation){
378
		//TODO
379
	}
380

  
381
	/*
382
	 * (non-Javadoc)
383
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getTransparency()
384
	 */
385
	public DataStoreTransparency getTransparency() {
386
		//TODO
387
		
388
		return null;
389
	}
390

  
391
	/*
392
	 * (non-Javadoc)
393
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#isGeoreferenced()
394
	 */
395
	public boolean isGeoreferenced() {
396
		//TODO
397
		
398
		return false;
399
	}
400

  
401
	/**
402
	 * Informa de si el driver ha supersampleado en el ?ltimo dibujado. Es el driver el que colocar?
403
	 * el valor de esta variable cada vez que dibuja.
404
	 * @return true si se ha supersampleado y false si no se ha hecho.
405
	 */
406
	public boolean isSupersampling() {
407
		//TODO
408
		
409
		return false;
410
	}
411

  
412
	/*
413
	 * (non-Javadoc)
414
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#setAffineTransform(java.awt.geom.AffineTransform)
415
	 */
416
	public void setAffineTransform(AffineTransform t){
417
		super.setAffineTransform(t);
418
	}
419

  
420
	/*
421
	 * (non-Javadoc)
422
	 * @see org.gvsig.raster.impl.provider.RasterProvider#getOverviewCount(int)
423
	 */
424
	public int getOverviewCount(int band) throws BandAccessException, RasterDriverException {
425
		if(band >= getBandCount())
426
			throw new BandAccessException("Wrong band");
427
		//TODO
428
		
429
		return 0;
430
	}
431

  
432
	/*
433
	 * (non-Javadoc)
434
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getOverviewWidth(int, int)
435
	 */
436
	public int getOverviewWidth(int band, int overview) throws BandAccessException, RasterDriverException {
437
		if (band >= getBandCount())
438
			throw new BandAccessException("Wrong band");
439
		//TODO
440
		
441
		return 0;
442
	}
443

  
444
	/*
445
	 * (non-Javadoc)
446
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#getOverviewHeight(int, int)
447
	 */
448
	public int getOverviewHeight(int band, int overview) throws BandAccessException, RasterDriverException {
449
		if (band >= getBandCount())
450
			throw new BandAccessException("Wrong band");
451
		//TODO
452
		
453
		return 0;
454
	}
455

  
456
	/*
457
	 * (non-Javadoc)
458
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#overviewsSupport()
459
	 */
460
	public boolean overviewsSupport() {
461
		return true;
462
	}
463

  
464
	/*
465
	 * (non-Javadoc)
466
	 * @see org.gvsig.raster.impl.provider.DefaultRasterProvider#isReproyectable()
467
	 */
468
	public boolean isReproyectable() {
469
		return true;
470
	}
471

  
472
	/*
473
	 * (non-Javadoc)
474
	 * @see org.gvsig.fmap.dal.spi.DataStoreProvider#getName()
475
	 */
476
	public String getName() {
477
		return NAME;
478
	}
479
	
480
	/*
481
	 * (non-Javadoc)
482
	 * @see org.gvsig.raster.impl.provider.RasterProvider#setStatus(org.gvsig.raster.impl.provider.RasterProvider)
483
	 */
484
	public void setStatus(RasterProvider provider) {
485
		if(provider instanceof NetCDFProvider) {
486
			//Not implemented yet
487
		}
488
	}
489
	
490
	/*
491
	 * (non-Javadoc)
492
	 * @see org.gvsig.raster.impl.provider.RasterProvider#getTileServer()
493
	 */
494
	public TileServer getTileServer() {
495
		if(tileServer == null)
496
			tileServer = new FileTileServer(this);
497
		return tileServer;
498
	}
499
}
0 500

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/main/java/org/gvsig/raster/tilecache/io/TileDataParametersImpl.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
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 2
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
*/
22

  
23
package org.gvsig.raster.tilecache.io;
24

  
25
import java.net.URI;
26

  
27
import org.gvsig.fmap.dal.DataParameters;
28
import org.gvsig.fmap.dal.coverage.store.parameter.RasterDataParameters;
29
import org.gvsig.fmap.dal.coverage.store.parameter.TileDataParameters;
30
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemStoreParameters;
31
import org.gvsig.raster.cache.tile.provider.TileServer;
32
import org.gvsig.raster.impl.store.AbstractRasterDataParameters;
33
import org.gvsig.raster.impl.store.AbstractRasterFileDataParameters;
34
import org.gvsig.tools.ToolsLocator;
35
import org.gvsig.tools.dynobject.DelegatedDynObject;
36
import org.gvsig.tools.dynobject.DynStruct;
37
import org.gvsig.tools.persistence.PersistenceManager;
38

  
39
/**
40
 * Parameters for the <code>TileProvider</code>
41
 * @author Nacho Brodin (nachobrodin@gmail.com)
42
 */
43
public class TileDataParametersImpl extends AbstractRasterFileDataParameters implements TileDataParameters {
44
	public static final String       FIELD_PARAMETERS      = "parameters";
45
	public static final String       FIELD_SECONDLEVEL     = "secondlevel";
46
	public static final String       FIELD_NAME            = "name";
47
	private static final String      FIELD_DELETECACHE     = "deletecache";
48

  
49
	private DelegatedDynObject       delegatedDynObject    = null;
50
	private TileServer               tileServer            = null;
51

  
52
	/**
53
	 *
54
	 */
55
	public TileDataParametersImpl() {
56
		super();
57
		initialize();
58
	}
59

  
60
	protected void initialize() {
61
		this.delegatedDynObject = (DelegatedDynObject) ToolsLocator
62
				.getDynObjectManager().createDynObject(
63
						registerDynClass());
64
	}
65

  
66
	/**
67
	 * @return The DynStruct
68
	 */
69
	public static DynStruct registerDynClass() {
70
		PersistenceManager manager = ToolsLocator.getPersistenceManager();
71
		DynStruct definition = manager.getDefinition("TileDataParameters_Persistent");
72
		if( definition == null ) {
73
			definition = manager.addDefinition(
74
					TileDataParametersImpl.class,
75
					"TileDataParameters_Persistent",
76
					"TileDataParameters Persistency",
77
					null,
78
					null
79
					);
80
		}
81

  
82
		AbstractRasterDataParameters.registerDynClass(definition);
83

  
84
		definition.addDynFieldObject(FIELD_PARAMETERS)
85
		.setDescription("Provider")
86
		.setClassOfValue(RasterDataParameters.class)
87
		.setMandatory(true);
88

  
89
		definition.addDynFieldBoolean(FIELD_SECONDLEVEL)
90
		.setDescription("SecondLevelProvider")
91
		.setMandatory(false);
92

  
93
		definition.addDynFieldString(FIELD_NAME)
94
		.setDescription("Name")
95
		.setMandatory(false);
96

  
97
		definition.addDynFieldBoolean(FIELD_DELETECACHE)
98
		.setDescription("Flag to delete cache the next request")
99
		.setMandatory(false);
100
		return definition;
101
	}
102

  
103
	/**
104
	 * Sets the <code>DataParameters</code>
105
	 * @param params DataParameters
106
	 */
107
	public void setDataParameters(DataParameters params) {
108
		this.setDynValue(FIELD_PARAMETERS, params);
109
	}
110

  
111
	public DataParameters getDataParameters() {
112
		return (DataParameters) this.getDynValue(FIELD_PARAMETERS);
113
	}
114

  
115
	/**
116
	 * Sets the <code>TileServer</code>
117
	 * @param tileServer TileServer
118
	 */
119
	public void setTileServer(TileServer tileServer) {
120
		this.tileServer = tileServer;
121
	}
122

  
123
	/**
124
	 * Gets the <code>TileServer</code>
125
	 * @return the TileServer
126
	 */
127
	public TileServer getTileServer() {
128
		return tileServer;
129
	}
130

  
131
	/**
132
	 * @return true if this provider is for the second level of cach?
133
	 */
134
	public boolean isSecondLevelCache() {
135
		Object obj = this.getDynValue(FIELD_SECONDLEVEL);
136
		if(obj != null && obj instanceof Boolean)
137
			return ((Boolean)obj).booleanValue();
138
		return false;
139
	}
140

  
141
	/**
142
	 * Sets the flag to inform to the provider that is a second level provider
143
	 * @param secondLevel boolean
144
	 */
145
	public void setSecondLevelCache(boolean secondLevel) {
146
		this.setDynValue(FIELD_SECONDLEVEL, new Boolean(secondLevel));
147
	}
148

  
149
	/**
150
	 * @return the name
151
	 */
152
	public String getName() {
153
		DataParameters p = getDataParameters();
154
		if(p != null) {
155
			if(p instanceof FilesystemStoreParameters) {
156
				return ((FilesystemStoreParameters)p).getFile().getAbsolutePath();
157
            } else {
158
                return ((RasterDataParameters) p).getURI().getPath();
159
            }
160
		}
161
		return null;
162
	}
163

  
164
	@Override
165
	public URI getURI() {
166
		if(this.getDynValue(FIELD_URI) == null) {
167
			DataParameters p = getDataParameters();
168
			if(p != null) {
169
				if(p instanceof FilesystemStoreParameters) {
170
					return ((FilesystemStoreParameters)p).getFile().toURI();
171
				} else {
172
                    return ((RasterDataParameters)p).getURI();
173
				}
174
			}
175
		}
176
		return (URI) this.getDynValue(FIELD_URI);
177
	}
178

  
179

  
180
	//**********************************************
181

  
182
	public String getDataStoreName() {
183
		return TileProvider.NAME;
184
	}
185

  
186
	public String getDescription() {
187
		return TileProvider.DESCRIPTION;
188
	}
189

  
190
	/**
191
	 * @return the explorer name
192
	 */
193
	public String getExplorerName() {
194
		return TileServerExplorer.NAME;
195
	}
196

  
197
	public boolean isValid() {
198
		return (this.getDataParameters() != null);
199
	}
200

  
201
	protected DelegatedDynObject getDelegatedDynObject() {
202
		return delegatedDynObject;
203
	}
204

  
205
	/**
206
	 * Sets the flag to delete the cache
207
	 * @param deleteCache boolean
208
	 */
209
	public void deleteCache(boolean deleteCache) {
210
		this.setDynValue(FIELD_DELETECACHE, new Boolean(deleteCache));
211
	}
212

  
213
	/**
214
	 * @return true if the cache is going to be deleted
215
	 */
216
	public boolean isDeletingCache() {
217
		Boolean b = (Boolean)getDynValue(FIELD_DELETECACHE);
218
		if(b != null)
219
			return ((Boolean)getDynValue(FIELD_DELETECACHE)).booleanValue();
220
		else
221
			return false;
222
	}
223

  
224
	public boolean isSourceTiled() {
225
		return true;
226
	}
227
}
0 228

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/main/java/org/gvsig/raster/tilecache/io/tff/TileFileFormatExplorerParameters.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
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 2
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
*/
22

  
23
/*
24
* AUTHORS (In addition to CIT):
25
* 2009 IVER T.I   {{Task}}
26
*/
27

  
28
package org.gvsig.raster.tilecache.io.tff;
29

  
30
import org.gvsig.fmap.dal.DataServerExplorerParameters;
31
import org.gvsig.fmap.dal.spi.AbstractDataParameters;
32
import org.gvsig.tools.ToolsLocator;
33
import org.gvsig.tools.dynobject.DelegatedDynObject;
34
import org.gvsig.tools.dynobject.DynClass;
35
import org.gvsig.tools.dynobject.DynObjectManager;
36

  
37
/**
38
 * Parameters for the TileFileFormat explorer provider
39
 * @author Nacho Brodin (nachobrodin@gmail.com)
40
 */
41
public class TileFileFormatExplorerParameters extends AbstractDataParameters implements DataServerExplorerParameters {
42
	public static final String     DYNCLASS_NAME       = "TileFileFormatExplorerParameters";
43
	protected static DynClass      DYNCLASS            = null;
44
	private DelegatedDynObject     delegatedDynObject  = null;
45
	
46
	
47
	public TileFileFormatExplorerParameters() {
48
		super();
49
		initialize();
50
	}
51

  
52
	protected void initialize() {
53
		this.delegatedDynObject = (DelegatedDynObject) ToolsLocator
54
				.getDynObjectManager().createDynObject(
55
						DYNCLASS);
56
	}
57
	
58
	public static void registerDynClass() {
59
		DynObjectManager dynman = ToolsLocator.getDynObjectManager();
60
		DynClass dynClass;
61
		
62
		if(dynman == null)
63
			return;
64
		
65
		if (DYNCLASS == null) {
66
			dynClass = dynman.add(DYNCLASS_NAME);
67

  
68
			DYNCLASS = dynClass;
69
		}
70

  
71
	}
72
	
73
	protected DelegatedDynObject getDelegatedDynObject() {
74
		return delegatedDynObject;
75
	}
76

  
77
	public String getDataStoreName() {
78
		return TileFileFormatProvider.NAME;
79
	}
80
	
81
	public String getDescription() {
82
		return TileFileFormatProvider.DESCRIPTION;
83
	}
84
	
85
	public String getExplorerName() {
86
		return TileFileFormatProvider.NAME;
87
	}
88
}
0 89

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/main/java/org/gvsig/raster/tilecache/io/tff/TileFileFormatProvider.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
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 2
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
 */
22
package org.gvsig.raster.tilecache.io.tff;
23

  
24
import java.awt.geom.Point2D;
25
import java.io.File;
26

  
27
import org.gvsig.fmap.dal.DALFileLocator;
28
import org.gvsig.fmap.dal.DALLocator;
29
import org.gvsig.fmap.dal.DataStore;
30
import org.gvsig.fmap.dal.coverage.RasterLocator;
31
import org.gvsig.fmap.dal.coverage.datastruct.Extent;
32
import org.gvsig.fmap.dal.coverage.exception.BandAccessException;
33
import org.gvsig.fmap.dal.coverage.exception.FileNotOpenException;
34
import org.gvsig.fmap.dal.coverage.exception.InvalidSetViewException;
35
import org.gvsig.fmap.dal.coverage.exception.InvalidSourceException;
36
import org.gvsig.fmap.dal.coverage.exception.NotSupportedExtensionException;
37
import org.gvsig.fmap.dal.coverage.exception.ParsingException;
38
import org.gvsig.fmap.dal.coverage.exception.ProcessInterruptedException;
39
import org.gvsig.fmap.dal.coverage.exception.RasterDriverException;
40
import org.gvsig.fmap.dal.exception.InitializeException;
41
import org.gvsig.fmap.dal.exception.OpenException;
42
import org.gvsig.fmap.dal.spi.DataManagerProviderServices;
43
import org.gvsig.fmap.dal.spi.DataStoreProviderServices;
44
import org.gvsig.metadata.MetadataLocator;
45
import org.gvsig.raster.cache.tile.Tile;
46
import org.gvsig.raster.cache.tile.exception.TileGettingException;
47
import org.gvsig.raster.cache.tile.provider.TileServer;
48
import org.gvsig.raster.impl.buffer.SpiRasterQuery;
49
import org.gvsig.raster.impl.provider.AbstractRasterProvider;
50
import org.gvsig.raster.impl.provider.RasterProvider;
51
import org.gvsig.raster.impl.provider.TiledRasterProvider;
52
import org.gvsig.raster.impl.store.DefaultStoreFactory;
53
import org.gvsig.tools.ToolsLocator;
54
import org.gvsig.tools.extensionpoint.ExtensionPoint;
55
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
56

  
57
import org.slf4j.Logger;
58
import org.slf4j.LoggerFactory;
59

  
60
/**
61
 * Provider for <code>TileFileFormat</code>
62
 *
63
 * @author Nacho Brodin (nachobrodin@gmail.com)
64
 */
65
public class TileFileFormatProvider extends AbstractRasterProvider implements TiledRasterProvider {
66
	public static String                NAME                     = "TileFileFormat Store";
67
	public static String                DESCRIPTION              = "Tile file format Source";
68
	public static final String          METADATA_DEFINITION_NAME = "TileFileFormatStore";
69
	private static final Logger         logger                   = LoggerFactory.getLogger(TileFileFormatProvider.class);
70
	protected static String[]           formatList               = null;
71
	private boolean                     open                     = false;
72

  
73
	/**
74
	 *
75
	 */
76
	public static void register() {
77
		ExtensionPointManager extensionPoints = ToolsLocator.getExtensionPointManager();
78
		registerFormats();
79

  
80
		ExtensionPoint point = extensionPoints.get("DefaultRasterProvider");
81
		point.append("reader", TileFileFormatProvider.NAME, TileFileFormatProvider.class);
82

  
83
		DataManagerProviderServices dataman = (DataManagerProviderServices) DALLocator.getDataManager();
84
		if (dataman != null && !dataman.getStoreProviders().contains(NAME)) {
85
			dataman.registerStoreProvider(NAME,
86
					TileFileFormatProvider.class, TileFileFormatDataParameters.class);
87
		}
88

  
89
		if(DALFileLocator.getFilesystemServerExplorerManager() != null)
90
			DALFileLocator.getFilesystemServerExplorerManager().registerProvider(
91
					NAME, DESCRIPTION,
92
					TileFileFormatFilesystemServerExplorer.class);
93

  
94
		dataman.registerStoreFactory(NAME, DefaultStoreFactory.class);
95
	}
96

  
97
	private static void registerFormats() {
98
		formatList      = new String[] {"tff"};
99
		for (int i = 0; i < formatList.length; i++)
100
			RasterLocator.getManager().getProviderServices().addFormat(formatList[i], TileFileFormatProvider.class);
101
	}
102

  
103
	public String[] getFormatList() {
104
		return formatList;
105
	}
106

  
107
	/**
108
	 * @param ext
109
	 * @return true if the extension is supported
110
	 */
111
	public boolean isExtensionSupported(String ext) {
112
		if(ext.indexOf(".") != -1)
113
			ext = ext.substring(ext.lastIndexOf(".") + 1, ext.length());
114
		for (int i = 0; i < formatList.length; i++) {
115
			if(formatList[i].compareTo(ext) == 0)
116
				return true;
117
		}
118
		return false;
119
	}
120

  
121
	/**
122
	 * @throws NotSupportedExtensionException
123
	 */
124
	public TileFileFormatProvider() throws NotSupportedExtensionException {
125
		super();
126
	}
127

  
128
	/**
129
	 * @param params
130
	 * @param storeServices
131
	 * @throws InitializeException
132
	 */
133
	public TileFileFormatProvider(TileFileFormatDataParameters params,
134
			DataStoreProviderServices storeServices) throws InitializeException {
135
		super(params, storeServices, ToolsLocator.getDynObjectManager()
136
				.createDynObject(
137
						MetadataLocator.getMetadataManager().getDefinition(
138
								DataStore.METADATA_DEFINITION_NAME)));
139
		try {
140
			init(params, storeServices);
141
		} catch (OpenException e) {
142
			throw new InitializeException("Error open the source", e);
143
		} catch (NotSupportedExtensionException e) {
144
			throw new InitializeException("Not supported extension", e);
145
		}
146
	}
147

  
148
	/**
149
	 * Build file references
150
	 * @param params
151
	 * @param storeServices
152
	 * @throws NotSupportedExtensionException
153
	 * @throws OpenException
154
	 */
155
	public void init(TileFileFormatDataParameters params,
156
			DataStoreProviderServices storeServices) throws NotSupportedExtensionException, OpenException {
157

  
158
		openFromTff();
159

  
160
		uri = getParameters().getURI();
161

  
162
		super.init();
163

  
164
		try {
165
			loadFromRmf(getRmfBlocksManager());
166
		} catch (ParsingException e) {
167
			logger.debug("Problems reading from RMF", e);
168
		}
169

  
170
		open = true;
171
	}
172

  
173
	/**
174
	 * Open from a .mff file.
175
	 * This method loads all providers and adds these to the parameters
176
	 * @throws OpenException
177
	 */
178
	private void openFromTff() throws OpenException {
179

  
180
	}
181

  
182
	/**
183
	 * @return the TileFileFormatDataParameters
184
	 */
185
	public TileFileFormatDataParameters getParameters() {
186
		try {
187
			return (TileFileFormatDataParameters)parameters;
188
		} catch (ClassCastException e) {
189
			return null;
190
		}
191
	}
192

  
193
	@Override
194
	public int getBlockSize() {
195
		return 0;
196
	}
197

  
198
	@Override
199
	public Object getData(int x, int y, int band)
200
			throws InvalidSetViewException, FileNotOpenException,
201
			RasterDriverException {
202
		return null;
203
	}
204

  
205
	@Override
206
	public double getHeight() {
207
		return 0;
208
	}
209

  
210
	@Override
211
	public int getOverviewHeight(int band, int overview)
212
			throws BandAccessException, RasterDriverException {
213
		return 0;
214
	}
215

  
216
	@Override
217
	public int getOverviewWidth(int band, int overview)
218
			throws BandAccessException, RasterDriverException {
219
		return 0;
220
	}
221

  
222
	@Override
223
	public Extent getView() {
224
		return null;
225
	}
226

  
227
	@Override
228
	public double getWidth() {
229
		return 0;
230
	}
231

  
232
	@Override
233
	public boolean isOverviewsSupported() {
234
		return false;
235
	}
236

  
237
	@Override
238
	public RasterProvider load() {
239
		return null;
240
	}
241

  
242
	@Override
243
	public void setView(Extent e) {
244

  
245
	}
246

  
247
	public Extent getCoordsInLevel(Point2D viewCenter, int level, int w, int h) {
248
		return null;
249
	}
250

  
251
	public Extent getCoordsInTheNearestLevel(Extent extent, int w, int h) {
252
		return null;
253
	}
254

  
255
	public RasterProvider getInternalProvider() {
256
		return null;
257
	}
258

  
259
	public int getNearestLevel(double pixelSize) {
260
		return 0;
261
	}
262

  
263
	public Tile getTile(SpiRasterQuery q) throws TileGettingException {
264
		return null;
265
	}
266

  
267
	public int getZoomLevels() {
268
		return 0;
269
	}
270

  
271
	public int getOverviewCount(int band) throws BandAccessException,
272
			RasterDriverException {
273
		return 0;
274
	}
275

  
276
	public TileServer getTileServer() {
277
		return null;
278
	}
279

  
280
	public boolean isOpen() {
281
		return open;
282
	}
283

  
284
	public Object readBlock(int pos, int blockHeight, double scale)
285
			throws InvalidSetViewException, FileNotOpenException,
286
			RasterDriverException, ProcessInterruptedException {
287
		return null;
288
	}
289

  
290
	public void setStatus(RasterProvider provider) {
291

  
292
	}
293

  
294
	public String getProviderName() {
295
		return NAME;
296
	}
297

  
298
	@Override
299
	public void loadBuffer(SpiRasterQuery query)
300
			throws ProcessInterruptedException, RasterDriverException {
301
		// TODO Auto-generated method stub
302

  
303
	}
304

  
305
    /* (non-Javadoc)
306
     * @see org.gvsig.raster.impl.provider.RasterProvider#addFile(java.io.File)
307
     */
308
    @Override
309
    public void addFile(File file) throws InvalidSourceException {
310
        //Do nothing
311
    }
312

  
313
    /* (non-Javadoc)
314
     * @see org.gvsig.raster.impl.provider.RasterProvider#removeFile(java.io.File)
315
     */
316
    @Override
317
    public void removeFile(File file) {
318
        //Do nothing
319
    }
320

  
321
}
0 322

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/main/java/org/gvsig/raster/tilecache/io/tff/TileFileFormatNewRasterStoreParameters.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
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 2
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
*/
22
package org.gvsig.raster.tilecache.io.tff;
23

  
24
import org.gvsig.raster.impl.store.AbstractNewRasterStoreParameters;
25

  
26
/**
27
 * Parameters for creating a <code>TileFileFormat</code> store
28
 * @author Nacho Brodin (nachobrodin@gmail.com)
29
 */
30
public class TileFileFormatNewRasterStoreParameters extends AbstractNewRasterStoreParameters {
31

  
32
	public String getDataStoreName() {
33
		return TileFileFormatProvider.NAME;
34
	}
35

  
36
	public String getDescription() {
37
		return TileFileFormatProvider.DESCRIPTION;
38
	}
39

  
40
}
0 41

  
org.gvsig.raster.tilecache/tags/org.gvsig.raster.tilecache-2.2.82/org.gvsig.raster.tilecache.io/src/main/java/org/gvsig/raster/tilecache/io/tff/TileFileFormatFilesystemServerExplorer.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
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 2
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
*/
22

  
23
package org.gvsig.raster.tilecache.io.tff;
24

  
25
import java.io.File;
26
import java.util.List;
27

  
28
import org.gvsig.fmap.dal.DALLocator;
29
import org.gvsig.fmap.dal.DataManager;
30
import org.gvsig.fmap.dal.DataServerExplorer;
31
import org.gvsig.fmap.dal.DataServerExplorerParameters;
32
import org.gvsig.fmap.dal.DataStoreParameters;
33
import org.gvsig.fmap.dal.NewDataStoreParameters;
34
import org.gvsig.fmap.dal.coverage.RasterLocator;
35
import org.gvsig.fmap.dal.exception.CreateException;
36
import org.gvsig.fmap.dal.exception.DataException;
37
import org.gvsig.fmap.dal.exception.InitializeException;
38
import org.gvsig.fmap.dal.exception.ProviderNotRegisteredException;
39
import org.gvsig.fmap.dal.exception.RemoveException;
40
import org.gvsig.fmap.dal.serverexplorer.filesystem.impl.AbstractFilesystemServerExplorerProvider;
41
import org.gvsig.fmap.dal.serverexplorer.filesystem.spi.FilesystemServerExplorerProviderServices;
42
import org.gvsig.fmap.dal.spi.DataServerExplorerProviderServices;
43
import org.gvsig.raster.impl.store.AbstractRasterFileDataParameters;
44

  
45
public class TileFileFormatFilesystemServerExplorer extends AbstractFilesystemServerExplorerProvider {
46
	
47
	public TileFileFormatFilesystemServerExplorer() {
48
		
49
	}
50
	
51
	public TileFileFormatFilesystemServerExplorer(
52
			TileFileFormatExplorerParameters parameters,
53
			DataServerExplorerProviderServices services)
54
			throws InitializeException {
55
		System.out.println();
56
	}
57
	
58
	public String getDataStoreProviderName() {
59
		return TileFileFormatProvider.NAME;
60
	}
61
	
62
	public String getDescription() {
63
		return TileFileFormatProvider.DESCRIPTION;
64
	}
65
	
66
	public DataStoreParameters getStoreParameters() {
67
		DataManager manager = DALLocator.getDataManager();
68
		try {
69
			return  manager.createStoreParameters(this.getDataStoreProviderName());
70
		} catch (InitializeException e) {
71
			e.printStackTrace();
72
		} catch (ProviderNotRegisteredException e) {
73
			e.printStackTrace();
74
		}
75
		return null;
76
	}
77

  
78
	@SuppressWarnings("unchecked")
79
	public List getDataStoreProviderNames() {
80
		return null;
81
	}
82

  
83
	public String getProviderName() {
84
		return TileFileFormatProvider.NAME;
85
	}
86

  
87
	public DataServerExplorerProviderServices getServerExplorerProviderServices() {
88
		return null;
89
	}
90

  
91
	public boolean canCreate() {
92
		return false;
93
	}
94

  
95
	public boolean canCreate(NewDataStoreParameters parameters) {
96
		return false;
97
	}
98

  
99
	public void create(NewDataStoreParameters parameters, boolean overwrite)
100
			throws CreateException {
101
		throw new UnsupportedOperationException();
102
	}
103

  
104
	public NewDataStoreParameters getCreateParameters() throws DataException {
105
		return null;
106
	}
107

  
108
	public void initialize(
109
			FilesystemServerExplorerProviderServices serverExplorer) {
110
	}
111

  
112
	public boolean accept(File pathname) {
113
		return RasterLocator.getManager().getProviderServices().isExtensionSupported(
114
				pathname.getAbsolutePath(), 
115
				TileFileFormatProvider.class);
116
	}
117

  
118
	public void remove(DataStoreParameters parameters) throws RemoveException {
119
		throw new UnsupportedOperationException();
120
	}
121

  
122
	public boolean add(String provider, NewDataStoreParameters parameters,
123
			boolean overwrite) throws DataException {
124
		return false;
125
	}
126

  
127
	public boolean canAdd() {
128
		return false;
129
	}
130

  
131
	public boolean canAdd(String storeName) throws DataException {
132
		return false;
133
	}
134

  
135
	public NewDataStoreParameters getAddParameters(String storeName)
136
			throws DataException {
137
		return null;
138
	}
139
	
140
	public DataStoreParameters getParameters(File file) throws DataException {
141
		DataManager manager = DALLocator.getDataManager();
142
		AbstractRasterFileDataParameters params = (AbstractRasterFileDataParameters) manager
143
				.createStoreParameters(this.getDataStoreProviderName());
144
		params.setFile(file);
145
		return params;
146
	}
147

  
148
	public DataServerExplorerParameters getParameters() {
149
		return null;
150
	}
151

  
152
	@SuppressWarnings("unchecked")
153
	public List list() throws DataException {
154
		return null;
155
	}
156

  
157
	@SuppressWarnings("unchecked")
158
	public List list(int mode) throws DataException {
159
		return null;
160
	}
161

  
162
	public void dispose() {
163
	}
164
	
165
	public int getMode() {
166
		return DataServerExplorer.MODE_RASTER;
167
	}
168

  
169
}
0 170

  
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff