01: //=============================================================================
02: //=== Copyright (C) 2001-2007 Food and Agriculture Organization of the
03: //=== United Nations (FAO-UN), United Nations World Food Programme (WFP)
04: //=== and United Nations Environment Programme (UNEP)
05: //===
06: //=== This program is free software; you can redistribute it and/or modify
07: //=== it under the terms of the GNU General Public License as published by
08: //=== the Free Software Foundation; either version 2 of the License, or (at
09: //=== your option) any later version.
10: //===
11: //=== This program is distributed in the hope that it will be useful, but
12: //=== WITHOUT ANY WARRANTY; without even the implied warranty of
13: //=== MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14: //=== 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 St, Fifth Floor, Boston, MA 02110-1301, USA
19: //===
20: //=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
21: //=== Rome - Italy. email: geonetwork@osgeo.org
22: //==============================================================================
23:
24: package org.fao.gast.lib;
25:
26: import java.io.File;
27: import java.io.FileOutputStream;
28: import java.io.IOException;
29: import java.io.InputStream;
30: import java.util.ArrayList;
31: import java.util.List;
32: import jeeves.utils.BinaryFile;
33: import org.fao.geonet.util.ISODate;
34:
35: //=============================================================================
36:
37: public class IOLib {
38: //---------------------------------------------------------------------------
39: //---
40: //--- API methods
41: //---
42: //---------------------------------------------------------------------------
43:
44: public void cleanDir(File dir) throws Exception {
45: File files[] = dir.listFiles();
46:
47: if (files == null)
48: return;
49:
50: for (File file : files)
51: if (file.isDirectory()) {
52: if (!file.getName().equals(".svn"))
53: cleanDir(file);
54: } else if (!file.delete())
55: throw new Exception("Cannot delete file : " + file);
56: }
57:
58: //---------------------------------------------------------------------------
59:
60: public List<File> scanDir(File folder) {
61: return scanDir(folder, null);
62: }
63:
64: //---------------------------------------------------------------------------
65:
66: public List<File> scanDir(File folder, String extension) {
67: List<File> alFiles = new ArrayList<File>();
68:
69: File files[] = folder.listFiles();
70:
71: if (files != null)
72: for (File file : files)
73: if (extension == null
74: || file.getName().endsWith("." + extension))
75: alFiles.add(file);
76:
77: return alFiles;
78: }
79:
80: //--------------------------------------------------------------------------
81:
82: public void save(File file, InputStream is) throws IOException {
83: FileOutputStream os = new FileOutputStream(file);
84: BinaryFile.copy(is, os, false, true);
85: }
86: }
87:
88: //=============================================================================
|