KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > proguard > util > FileNameListMatcher


1 /*
2  * ProGuard -- shrinking, optimization, obfuscation, and preverification
3  * of Java bytecode.
4  *
5  * Copyright (c) 2002 Eric Lafortune (eric@graphics.cornell.edu)
6  *
7  * This program is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License as published by the Free
9  * Software Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * This program is distributed in the hope that it will be useful, but WITHOUT
13  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
15  * more details.
16  *
17  * You should have received a copy of the GNU General Public License along
18  * with this program; if not, write to the Free Software Foundation, Inc.,
19  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20  */

21 package proguard.util;
22
23 import java.util.List JavaDoc;
24
25 /**
26  * This StringMatcher tests whether file names match any entry in a
27  * given list of regular expressions.
28  *
29  * @see BasicListMatcher
30  * @see FileNameMatcher
31  *
32  * @author Eric Lafortune
33  */

34 public class FileNameListMatcher extends BasicListMatcher
35 {
36     /**
37      * Creates a new FileNameListMatcher.
38      * @param regularExpression the comma-separated list of regular expressions
39      * against which strings will be matched.
40      */

41     public FileNameListMatcher(String JavaDoc regularExpression)
42     {
43         super(regularExpression);
44     }
45
46
47     /**
48      * Creates a new FileNameListMatcher.
49      * @param regularExpressionList the list of regular expressions against which
50      * strings will be matched.
51      */

52     public FileNameListMatcher(List JavaDoc regularExpressionList)
53     {
54         super(regularExpressionList);
55     }
56
57
58     // Overridden method of BasicListMatcher
59

60     protected StringMatcher createBasicMatcher(String JavaDoc regularExpression)
61     {
62         return new FileNameMatcher(regularExpression);
63     }
64
65
66     /**
67      * A main method for testing file name matching.
68      */

69     public static void main(String JavaDoc[] args)
70     {
71         try
72         {
73             System.out.println("Regular expression ["+args[0]+"]");
74             FileNameListMatcher matcher = new FileNameListMatcher(args[0]);
75             for (int index = 1; index < args.length; index++)
76             {
77                 String JavaDoc string = args[index];
78                 System.out.print("String ["+string+"]");
79                 System.out.println(" -> match = "+matcher.matches(args[index]));
80             }
81         }
82         catch (Exception JavaDoc ex)
83         {
84             ex.printStackTrace();
85         }
86     }
87 }
88
Popular Tags