KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > explorer > menu > AbstractFileFilter


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2003 INRIA - USTL - LIFL - GOAL
5 Contact: openccm@objectweb.org
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Jerome Moroy.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26 package org.objectweb.openccm.explorer.menu;
27
28 /** The java API's imports */
29 import javax.swing.filechooser.FileFilter JavaDoc;
30
31 /**
32  * This class represents an Abstract file filter.
33  *
34  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
35  *
36  * @version 0.1
37  */

38 public abstract class AbstractFileFilter extends FileFilter JavaDoc {
39
40     /** The array of file extensions. */
41     protected String JavaDoc[] extensions_ = new String JavaDoc[0];
42
43     /**
44      * Default constructor
45      */

46     public AbstractFileFilter(String JavaDoc extension){
47         if(extension!=null)
48             extensions_ = new String JavaDoc[]{extension};
49     }
50
51     /**
52      * Default constructor
53      */

54     public AbstractFileFilter(String JavaDoc[] extensions){
55         if(extensions!=null)
56             extensions_ = extensions;
57     }
58
59     /**
60      * Indicates if the given extension is contained in the given array of extensions
61      */

62     protected boolean contains(String JavaDoc[] extensions, String JavaDoc extension){
63         if(extensions!=null && extension!=null){
64             for(int i=0 ; i < extensions.length ; i++)
65                 if(extension.equalsIgnoreCase(extensions[i]))
66                     return true;
67         }
68         return false;
69     }
70
71     /**
72      * Whether the given file is accepted by this filter.
73      */

74     public boolean accept(java.io.File JavaDoc f) {
75         if(extensions_!=null){
76             String JavaDoc extension = f.getName().substring(f.getName().lastIndexOf('.') + 1);
77             return contains(extensions_, extension) || f.isDirectory();
78         }
79         return false;
80     }
81
82     /**
83      * The description of this filter. For example: "JPG and GIF Images"
84      */

85     public abstract String JavaDoc getDescription();
86
87 }
88
Popular Tags