14ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/*
24ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Licensed to the Apache Software Foundation (ASF) under one or more
34ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * contributor license agreements.  See the NOTICE file distributed with
44ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * this work for additional information regarding copyright ownership.
54ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * The ASF licenses this file to You under the Apache License, Version 2.0
64ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * (the "License"); you may not use this file except in compliance with
74ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * the License.  You may obtain a copy of the License at
84ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
94ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *      http://www.apache.org/licenses/LICENSE-2.0
104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Unless required by applicable law or agreed to in writing, software
124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * distributed under the License is distributed on an "AS IS" BASIS,
134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * See the License for the specific language governing permissions and
154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * limitations under the License.
164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira */
174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapackage org.apache.commons.io.filefilter;
184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.io.File;
204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.io.FileFilter;
214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.io.FilenameFilter;
224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/**
244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * An interface which brings the FileFilter and FilenameFilter
254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * interfaces together.
264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * @since Commons IO 1.0
284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * @version $Revision: 471628 $ $Date: 2006-11-06 04:06:45 +0000 (Mon, 06 Nov 2006) $
294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * @author Stephen Colebourne
314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira */
324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic interface IOFileFilter extends FileFilter, FilenameFilter {
334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Checks to see if the File should be accepted by this filter.
364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * <p>
374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Defined in {@link java.io.FileFilter}.
384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     *
394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param file  the File to check
404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @return true if this file matches the test
414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public boolean accept(File file);
434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Checks to see if the File should be accepted by this filter.
464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * <p>
474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Defined in {@link java.io.FilenameFilter}.
484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     *
494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param dir  the directory File to check
504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param name  the filename within the directory to check
514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @return true if this file matches the test
524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public boolean accept(File dir, String name);
544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}
56