/** TrakEM2 plugin for ImageJ(C). Copyright (C) 2005-2009 Albert Cardona and Rodney Douglas. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation (http://www.gnu.org/licenses/gpl.txt ) This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. You may contact Albert Cardona at acardona at ini.phys.ethz.ch Institute of Neuroinformatics, University of Zurich / ETH, Switzerland. **/ package ini.trakem2.io; import java.io.File; import java.io.FilenameFilter; /** Accepts .dtd and/or .xml extensions. */ public class XMLFileFilter implements FilenameFilter { static public final int DTD = 0; static public final int XML = 1; static public final int BOTH = 2; private int ext = -1; public XMLFileFilter(int ext) { this.ext = ext; } public boolean accept(File dir, String name) { File file = new File(dir + "/" + name); if (file.isDirectory()) { return true; } name = name.toLowerCase(); switch (ext) { case DTD: if (name.length() -4 == name.lastIndexOf(".dtd")) return true; break; case XML: if (name.length() -4 == name.lastIndexOf(".xml")) return true; break; case BOTH: if (name.length() -4 == name.lastIndexOf(".xml") || name.length() -4 == name.lastIndexOf(".dtd") ) { return true; } break; } return false; } }