@Before public void setUp() { emptyScreener = new ClassScreener(); particularClassScreener = new ClassScreener(); particularClassScreener.addAllowedClass(SOME_CLASS); particularPackageScreener = new ClassScreener(); particularPackageScreener.addAllowedPackage(FOOBAR_PACKAGE); particularPackageScreener2 = new ClassScreener(); particularPackageScreener2.addAllowedPackage(FOOBAR_PACKAGE_WITH_TRAILING_DOT); }
/** * Add the name of a class to be matched by the screener. * * @param className * name of a class to be matched */ public void addAllowedClass(String className) { String classRegex = START + dotsToRegex(className) + ".class$"; if (DEBUG) { System.out.println("Class regex: " + classRegex); } patternList.add(Pattern.compile(classRegex).matcher("")); }
String item = tok.nextToken(); if (item.endsWith(".-")) { classScreener.addAllowedPrefix(item.substring(0, item.length() - 1)); } else if (item.endsWith(".*")) { classScreener.addAllowedPackage(item.substring(0, item.length() - 1)); } else { classScreener.addAllowedClass(item);
@Test public void testParticularClassScreener() { Assert.assertTrue(particularClassScreener.matches(SOME_CLASS_FILENAME)); Assert.assertFalse(particularClassScreener.matches(SOME_OTHER_CLASS_FILENAME)); Assert.assertFalse(particularClassScreener.matches(UNRELATED_THING_CLASS_FILENAME)); Assert.assertTrue(particularClassScreener.matches(SOME_CLASS_JARFILENAME)); Assert.assertFalse(particularClassScreener.matches(SOME_OTHER_CLASS_JARFILENAME)); Assert.assertFalse(particularClassScreener.matches(UNRELATED_THING_CLASS_JARFILENAME)); }
String item = tok.nextToken(); if (item.endsWith(".-")) { classScreener.addAllowedPrefix(item.substring(0, item.length() - 1)); } else if (item.endsWith(".*")) { classScreener.addAllowedPackage(item.substring(0, item.length() - 1)); } else { classScreener.addAllowedClass(item);
/** * Add the name of a package to be matched by the screener. All class files * that appear to be in the package should be matched. * * @param packageName * name of the package to be matched */ public void addAllowedPackage(String packageName) { if (packageName.endsWith(".")) { packageName = packageName.substring(0, packageName.length() - 1); } String packageRegex = START + dotsToRegex(packageName) + SEP + JAVA_IDENTIFIER_PART + "+.class$"; if (DEBUG) { System.out.println("Package regex: " + packageRegex); } patternList.add(Pattern.compile(packageRegex).matcher("")); }
/** * Add the name of a prefix to be matched by the screener. All class files * that appear to be in the package specified by the prefix, or a more * deeply nested package, should be matched. * * @param prefix * name of the prefix to be matched */ public void addAllowedPrefix(String prefix) { if (prefix.endsWith(".")) { prefix = prefix.substring(0, prefix.length() - 1); } if (DEBUG) { System.out.println("Allowed prefix: " + prefix); } String packageRegex = START + dotsToRegex(prefix) + SEP; if (DEBUG) { System.out.println("Prefix regex: " + packageRegex); } patternList.add(Pattern.compile(packageRegex).matcher("")); }
/** * Add the name of a class to be matched by the screener. * * @param className * name of a class to be matched */ public void addAllowedClass(String className) { String classRegex = START + dotsToRegex(className) + ".class$"; if (DEBUG) { System.out.println("Class regex: " + classRegex); } patternList.add(Pattern.compile(classRegex).matcher("")); }
/** * Add the name of a package to be matched by the screener. All class files * that appear to be in the package should be matched. * * @param packageName * name of the package to be matched */ public void addAllowedPackage(String packageName) { if (packageName.endsWith(".")) { packageName = packageName.substring(0, packageName.length() - 1); } String packageRegex = START + dotsToRegex(packageName) + SEP + JAVA_IDENTIFIER_PART + "+.class$"; if (DEBUG) { System.out.println("Package regex: " + packageRegex); } patternList.add(Pattern.compile(packageRegex).matcher("")); }
/** * Add the name of a prefix to be matched by the screener. All class files * that appear to be in the package specified by the prefix, or a more * deeply nested package, should be matched. * * @param prefix * name of the prefix to be matched */ public void addAllowedPrefix(String prefix) { if (prefix.endsWith(".")) { prefix = prefix.substring(0, prefix.length() - 1); } if (DEBUG) { System.out.println("Allowed prefix: " + prefix); } String packageRegex = START + dotsToRegex(prefix) + SEP; if (DEBUG) { System.out.println("Prefix regex: " + packageRegex); } patternList.add(Pattern.compile(packageRegex).matcher("")); }