Revision 131 org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/RasterDefaultImplLibrary.java
RasterDefaultImplLibrary.java | ||
---|---|---|
21 | 21 |
*/ |
22 | 22 |
package org.gvsig.raster.impl; |
23 | 23 |
|
24 |
import java.io.File; |
|
25 | 24 |
import java.util.ArrayList; |
26 | 25 |
import java.util.List; |
27 | 26 |
|
... | ... | |
31 | 30 |
import org.gvsig.fmap.dal.DALLocator; |
32 | 31 |
import org.gvsig.fmap.dal.coverage.RasterLibrary; |
33 | 32 |
import org.gvsig.fmap.dal.coverage.RasterLocator; |
34 |
import org.gvsig.fmap.dal.coverage.util.PropertyEvent; |
|
35 |
import org.gvsig.fmap.dal.coverage.util.PropertyListener; |
|
33 |
import org.gvsig.fmap.dal.coverage.util.FileUtils; |
|
36 | 34 |
import org.gvsig.fmap.dal.spi.DataManagerProviderServices; |
37 | 35 |
import org.gvsig.metadata.exceptions.MetadataException; |
38 | 36 |
import org.gvsig.raster.impl.datastruct.serializer.ColorTableRmfSerializer; |
... | ... | |
86 | 84 |
} |
87 | 85 |
|
88 | 86 |
/** |
89 |
* Directorio temporal para la cach?. Si gastamos el mismo que andami este se ocupar? de gestionar su |
|
90 |
* destrucci?n al cerrar gvSIG. |
|
91 |
*/ |
|
92 |
private static String tempCacheDirectoryPath = System |
|
93 |
.getProperty("java.io.tmpdir") |
|
94 |
+ File.separator + "tmp-andami"; |
|
95 |
|
|
96 |
/** |
|
97 | 87 |
* Ejecuta las acciones necesarias para arrancar la librer?a. |
98 | 88 |
*/ |
99 | 89 |
public static void wakeUp() { |
... | ... | |
147 | 137 |
NoDataRmfSerializer.register(); |
148 | 138 |
|
149 | 139 |
// Limpiamos el directorio temporal |
150 |
cleanUpTempFiles(); |
|
140 |
FileUtils.cleanUpTempFiles();
|
|
151 | 141 |
// Crea el directorio de temporales |
152 |
getTemporalPath(); |
|
142 |
FileUtils.getTemporalPath();
|
|
153 | 143 |
RasterLibrary.wakeup = true; |
154 | 144 |
} |
155 | 145 |
|
156 |
/** |
|
157 |
* Elimina los ficheros del directorio temporal. Realizamos esta acci?n al |
|
158 |
* levantar la librer?a. |
|
159 |
*/ |
|
160 |
public static void cleanUpTempFiles() { |
|
161 |
try { |
|
162 |
File tempDirectory = new File(tempCacheDirectoryPath); |
|
163 |
|
|
164 |
File[] files = tempDirectory.listFiles(); |
|
165 |
if (files != null) |
|
166 |
for (int i = 0; i < files.length; i++) { |
|
167 |
// s?lo por si en un futuro se necesitan crear directorios temporales |
|
168 |
if (files[i].isDirectory()) |
|
169 |
deleteDirectory(files[i]); |
|
170 |
files[i].delete(); |
|
171 |
} |
|
172 |
tempDirectory.delete(); |
|
173 |
} catch (Exception e) { |
|
174 |
} |
|
175 |
} |
|
176 |
|
|
177 |
/** |
|
178 |
* Recursive directory delete. |
|
179 |
* @param f |
|
180 |
*/ |
|
181 |
private static void deleteDirectory(File f) { |
|
182 |
File[] files = f.listFiles(); |
|
183 |
for (int i = 0; i < files.length; i++) { |
|
184 |
if (files[i].isDirectory()) |
|
185 |
deleteDirectory(files[i]); |
|
186 |
files[i].delete(); |
|
187 |
} |
|
188 |
} |
|
189 |
|
|
190 |
/** |
|
191 |
* Esta funci?n crea el directorio para temporales y devuelve el manejador |
|
192 |
* del directorio |
|
193 |
* @return |
|
194 |
*/ |
|
195 |
public static File getTemporalFile() { |
|
196 |
File tempDirectory = new File(tempCacheDirectoryPath); |
|
197 |
if (!tempDirectory.exists()) |
|
198 |
tempDirectory.mkdir(); |
|
199 |
return tempDirectory; |
|
200 |
} |
|
201 |
|
|
202 |
/** |
|
203 |
* Esta funci?n crea el directorio para temporales y devuelve la ruta de este |
|
204 |
* @return |
|
205 |
*/ |
|
206 |
static public String getTemporalPath() { |
|
207 |
return getTemporalFile().getAbsolutePath(); |
|
208 |
} |
|
209 |
|
|
210 | 146 |
protected void doInitialize() throws LibraryException { |
211 | 147 |
//Register the default GeometryManager |
212 | 148 |
RasterLocator.registerManager(DefaultRasterManager.class); |
Also available in: Unified diff