diff --git a/jetty-webapp-verifier/.gitignore b/jetty-webapp-verifier/.gitignore deleted file mode 100644 index 9c65b190a85..00000000000 --- a/jetty-webapp-verifier/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.patch -*.diff -*.log -cobertura.ser diff --git a/jetty-webapp-verifier/pom.xml b/jetty-webapp-verifier/pom.xml deleted file mode 100644 index 93caf632458..00000000000 --- a/jetty-webapp-verifier/pom.xml +++ /dev/null @@ -1,111 +0,0 @@ - - 4.0.0 - - org.eclipse.jetty - jetty-project - 7.0.1-SNAPSHOT - - org.eclipse.jetty - jetty-webapp-verifier - Jetty :: Webapp Verifier Tool - jar - - target/war-files - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - copy - generate-resources - - copy - - - - - org.eclipse.jetty.tests - test-webapp-logging-java - ${project.version} - war - ${war.file.repo} - test-webapp-logging-java.war - - - - - - - - org.apache.maven.plugins - maven-assembly-plugin - - - package - - single - - - - config.xml - - - - - - - - - - org.eclipse.jetty - jetty-xml - ${version} - - - junit - junit - test - - - - asm - asm - 3.1 - true - - - asm - asm-tree - 3.1 - true - - - - - - org.apache.maven.plugins - maven-project-info-reports-plugin - - - org.apache.maven.plugins - maven-javadoc-plugin - - - org.apache.maven.plugins - maven-jxr-plugin - - - org.codehaus.mojo - cobertura-maven-plugin - - - - diff --git a/jetty-webapp-verifier/src/main/config/etc/default-webapp-verifier.xml b/jetty-webapp-verifier/src/main/config/etc/default-webapp-verifier.xml deleted file mode 100644 index c63736a4762..00000000000 --- a/jetty-webapp-verifier/src/main/config/etc/default-webapp-verifier.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - *.jsp - - - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/main/config/etc/jetty-webapp-verifier.xml b/jetty-webapp-verifier/src/main/config/etc/jetty-webapp-verifier.xml deleted file mode 100644 index 6d718a6dcca..00000000000 --- a/jetty-webapp-verifier/src/main/config/etc/jetty-webapp-verifier.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - org.eclipse.jetty.webapp.configuration - - - - - - - - - - - - diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractArchiveScanningRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractArchiveScanningRule.java deleted file mode 100644 index 4cbc5708098..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractArchiveScanningRule.java +++ /dev/null @@ -1,94 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.util.Enumeration; -import java.util.jar.JarFile; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -/** - * AbstractArchiveScanningRule for Rules that scan the archive contents. - */ -public abstract class AbstractArchiveScanningRule extends AbstractRule -{ - public abstract String getDescription(); - - public abstract String getName(); - - @Override - public void visitWebInfLibJar(String path, File archive, JarFile jar) - { - scanClassesInArchive(path,jar); - } - - @Override - public void visitWebInfLibZip(String path, File archive, ZipFile zip) - { - scanClassesInArchive(path,zip); - } - - private String asClassname(String path) - { - StringBuffer name = new StringBuffer(); - for (char c : path.toCharArray()) - { - if (c == '/') - { - name.append("."); - } - else - { - name.append(c); - } - } - if (name.toString().endsWith(".class")) - { - name.delete(name.length() - 6,name.length() - 1); - } - return name.toString(); - } - - private void scanClassesInArchive(String path, ZipFile zip) - { - String className; - Enumeration entries = zip.entries(); - while (entries.hasMoreElements()) - { - ZipEntry entry = entries.nextElement(); - if (entry.getName().endsWith(".class")) - { - className = asClassname(entry.getName()); - visitArchiveClass(path + "!/" + entry.getName(),className,zip,entry); - } - else - { - visitArchiveResource(path + "!/" + entry.getName(),zip,entry); - } - } - } - - public void visitArchiveResource(String path, ZipFile zip, ZipEntry entry) - { - /* override to do something with */ - } - - public void visitArchiveClass(String path, String className, ZipFile archive, ZipEntry archiveEntry) - { - /* override to do something with */ - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractRule.java deleted file mode 100644 index c8a52952e8b..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/AbstractRule.java +++ /dev/null @@ -1,215 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.util.jar.JarFile; -import java.util.zip.ZipFile; - -public abstract class AbstractRule implements Rule -{ - private ViolationListener violationListener; - private File rootDir; - - protected void error(String path, String detail) - { - Violation violation = new Violation(Severity.ERROR,path,detail); - violation.setVerifierInfo(this); - violationListener.reportViolation(violation); - } - - protected void exception(String path, String detail, Throwable t) - { - Violation violation = new Violation(Severity.ERROR,path,detail,t); - violation.setVerifierInfo(this); - violationListener.reportViolation(violation); - } - - protected String getWebappRelativePath(File dir) - { - if (rootDir == null) - { - throw new RuntimeException("rootDir is not initialized, can't get relative path. " - + "Did you overide .visitWebappStart() and not call super.visitWebappStart()?"); - } - return rootDir.toURI().relativize(dir.toURI()).toASCIIString(); - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#setViolationListener(ViolationListener) - */ - public void setViolationListener(ViolationListener listener) - { - this.violationListener = listener; - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#initialize() - */ - public void initialize() throws Throwable - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitDirectoryEnd(java.lang.String, java.io.File) - */ - public void visitDirectoryEnd(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitDirectoryStart(java.lang.String, java.io.File) - */ - public void visitDirectoryStart(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitFile(java.lang.String, java.io.File, java.io.File) - */ - public void visitFile(String path, File dir, File file) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebappEnd(java.lang.String, java.io.File) - */ - public void visitWebappEnd(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * NOTE: be sure to call super.{@link #visitWebappStart(String, File)} in your overriden method. - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebappStart(java.lang.String, java.io.File) - */ - public void visitWebappStart(String path, File dir) - { - if (path.equals(ROOT_PATH)) - { - rootDir = new File(path); - } - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfClass(java.lang.String, java.lang.String, - * java.io.File) - */ - public void visitWebInfClass(String path, String className, File classFile) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfClassesEnd(java.lang.String, java.io.File) - */ - public void visitWebInfClassesEnd(String path, File dir) - { - // TODO Auto-generated method stub - - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfClassesStart(java.lang.String, java.io.File) - */ - public void visitWebInfClassesStart(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfClassResource(java.lang.String, java.lang.String, - * java.io.File) - */ - public void visitWebInfClassResource(String path, String resourcePath, File resourceFile) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfLibEnd(java.lang.String, java.io.File) - */ - public void visitWebInfLibEnd(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfLibJar(String, File, JarFile) - */ - public void visitWebInfLibJar(String path, File archive, JarFile jar) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfLibStart(java.lang.String, java.io.File) - */ - public void visitWebInfLibStart(String path, File dir) - { - /* override to implement */ - } - - /** - * {@inheritDoc} - * - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfLibZip(String, File, ZipFile) - */ - public void visitWebInfLibZip(String path, File archive, ZipFile zip) - { - /* override to implement */ - } - - protected void warning(String path, String detail) - { - Violation violation = new Violation(Severity.WARNING,path,detail); - violation.setVerifierInfo(this); - violationListener.reportViolation(violation); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Rule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Rule.java deleted file mode 100644 index a21b9ad9b4b..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Rule.java +++ /dev/null @@ -1,222 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.net.URLClassLoader; -import java.util.jar.JarFile; -import java.util.zip.ZipFile; - -/** - *

- * Rule is the interface that the {@link WebappVerifier} uses to notify Rule implementations of events in the Iteration - * of a Webapp contents. - *

- * - *

- * The visitor pattern used here has the following order .. - *

- * - *
- *  1) [1] {@link #visitWebappStart(String, File)}
- *  Iterate Contents:
- *     2) [1..n] {@link #visitDirectoryStart(String, File)}
- *     3) [0..n] {@link #visitFile(String, File, File)}
- *     4) [1..n] {@link #visitDirectoryEnd(String, File)}
- *  Iterate WEB-INF/classes:
- *     5) [0..1] {@link #visitWebInfClassesStart(String, File)}
- *     6) [0..n] {@link #visitWebInfClass(String, String, File)}
- *     7) [0..n] {@link #visitWebInfClassResource(String, String, File)}
- *     8) [0..1] {@link #visitWebInfClassesEnd(String, File)}
- *  Iterate WEB-INF/lib:
- *     9) [0..1] {@link #visitWebInfLibStart(String, File)}
- *    10) [0..n] {@link #visitWebInfLibJar(String, File, JarFile)}
- *    11) [0..n] {@link #visitWebInfLibZip(String, File, ZipFile)}
- *    12) [0..1] {@link #visitWebInfLibEnd(String, File)}
- *  13) [1] {@link #visitWebappEnd(String, File)}
- * 
- */ -public interface Rule -{ - public static final String ROOT_PATH = ""; - - /** - * A short name for the rule. - */ - public String getName(); - - /** - * A Description of the purpose of the rule. What does it check for? Why? - */ - public String getDescription(); - - /** - * Initialization logic for the rule, exceptions from initialization will be logged as a {@link Severity#ERROR} - * level {@link Violation} with the {@link Violation#getThrowable()} set. - * - * If you want more meaningful violation messages than default, be sure to capture your own initialization related - * failures and report them to the {@link ViolationListener} at a {@link Severity#ERROR} level. - */ - public void initialize() throws Throwable; - - /** - * Set the listener to report violations back to. - */ - public void setViolationListener(ViolationListener listener); - - /** - * The iteration of the webapp has begun. - * - * @param path - * the war relative path to this directory. - * @param dir - * the real File System directory to the webapp work directory - */ - public void visitWebappStart(String path, File dir); - - /** - * A visit of a directory has begun. - * - * @param path - * the war relative path to this directory. - * @param dir - * the real File System directory object for this directory. - */ - public void visitDirectoryStart(String path, File dir); - - /** - * A visit of a file. - * - * @param path - * the war relative path to this file. - * @param dir - * the real File System directory object for this file. This is the same directory as seen in - * {@link #visitDirectoryStart(String, File)} and {@link #visitDirectoryEnd(String, File)} - * @param file - * the real File System {@link File} object to this file - */ - public void visitFile(String path, File dir, File file); - - /** - * A visit of a directory has ended. - * - * @param path - * the war relative path to this directory. - * @param dir - * the real File System directory. - */ - public void visitDirectoryEnd(String path, File dir); - - /** - * The visit to WEB-INF/classes is starting - * - * @param path - * the war relative path to the WEB-INF/classes dir. (Note: Will always be "WEB-INF/classes") - * @param dir - * the real File System directory. - */ - public void visitWebInfClassesStart(String path, File dir); - - /** - * A visit of a Class found in WEB-INF/classes. - * - * @param path - * the war relative path to this directory. - * @param className - * the full classname of the class found. TODO: Base this off of class bytecode? - * @param classFile - * the real File System directory object for this directory. - */ - public void visitWebInfClass(String path, String className, File classFile); - - /** - * A visit of a Resource available in "WEB-INF/classes" which is not a Class (such as an XML file or a properties - * file) - * - * @param path - * the war relative path to this directory. - * @param resourcePath - * the full resourcePath to the file found. Returned in a format that is compatible to - * {@link URLClassLoader#findResource(String)} call. - * @param resourceFile - * the real File System directory object for this directory. - */ - public void visitWebInfClassResource(String path, String resourcePath, File resourceFile); - - /** - * The visit to WEB-INF/classes has ended - * - * @param path - * the war relative path to the WEB-INF/classes dir. (Note: Will always be "WEB-INF/classes") - * @param dir - * the real File System directory. - */ - public void visitWebInfClassesEnd(String path, File dir); - - /** - * The visit to WEB-INF/lib is starting. - * - * @param path - * the war relative path to the WEB-INF/lib dir. (Note: Will always be "WEB-INF/lib") - * @param dir - * the real File System directory. - */ - public void visitWebInfLibStart(String path, File dir); - - /** - * A visit to a JAR archive in the WEB-INF/lib directory. - * - * @param path - * the war relative path to the JAR archive in the WEB-INF/lib dir. - * @param archive - * the real File System file. - * @param jar - * the {@link JarFile} - */ - public void visitWebInfLibJar(String path, File archive, JarFile jar); - - /** - * A visit to an archive in the WEB-INF/lib directory has begun. - * - * @param path - * the war relative path to the archive in the WEB-INF/lib dir. - * @param archive - * the real File System file. - * @param zip - * the {@link ZipFile} - */ - public void visitWebInfLibZip(String path, File archive, ZipFile zip); - - /** - * The visit to WEB-INF/lib has ended. - * - * @param path - * the war relative path to the WEB-INF/lib dir. (Note: Will always be "WEB-INF/lib") - * @param dir - * the real File System directory. - */ - public void visitWebInfLibEnd(String path, File dir); - - /** - * The iteration of the webapp has ended. - * - * @param path - * the war relative path to this directory. - * @param dir - * the real File System directory to the webapp work directory - */ - public void visitWebappEnd(String path, File dir); -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/RuleSet.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/RuleSet.java deleted file mode 100644 index 5dfd32e8d07..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/RuleSet.java +++ /dev/null @@ -1,89 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.net.URI; -import java.net.URL; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import org.eclipse.jetty.xml.XmlConfiguration; - -/** - * RuleSet holds the set of configured {@link Rule}s that the WebappVerifier will use. - */ -public class RuleSet -{ - private String name; - private List rules = new ArrayList(); - - public String getName() - { - return name; - } - - public void setName(String name) - { - this.name = name; - } - - public List getRules() - { - return rules; - } - - public void setRules(List rules) - { - this.rules = rules; - } - - public void setRules(Rule[] ruleArray) - { - this.rules.clear(); - this.rules.addAll(Arrays.asList(ruleArray)); - } - - public void addRule(Rule rule) - { - this.rules.add(rule); - } - - public WebappVerifier createWebappVerifier(URI webappURI) - { - WebappVerifier webappVerifier = new WebappVerifier(webappURI); - webappVerifier.setRules(rules); - return webappVerifier; - } - - public static RuleSet load(URL configuration) throws Exception - { - XmlConfiguration xml; - xml = new XmlConfiguration(configuration); - return (RuleSet)xml.configure(); - } - - public static RuleSet load(URI configuration) throws Exception - { - return load(configuration.toURL()); - } - - public static RuleSet load(File configuration) throws Exception - { - return load(configuration.toURL()); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Severity.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Severity.java deleted file mode 100644 index 8435c5c05b4..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Severity.java +++ /dev/null @@ -1,39 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -public enum Severity -{ - WARNING, ERROR; - - public static Severity parse(String value) - { - if (value == null) - { - return null; - } - - for (Severity sev : Severity.values()) - { - if (sev.name().equalsIgnoreCase(value)) - { - return sev; - } - } - - return null; - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Violation.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Violation.java deleted file mode 100644 index 66be3fa299f..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/Violation.java +++ /dev/null @@ -1,186 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -public class Violation -{ - private String path; - - private Severity severity; - - private String detail; - - private Throwable throwable; - - private String ruleId; - - private Class ruleClass; - - public Violation(Severity severity, String path, String detail) - { - this.severity = severity; - this.path = path; - this.detail = detail; - } - - public Violation(Severity severity, String path, String detail, Rule verifier) - { - this.severity = severity; - this.path = path; - this.detail = detail; - setVerifierInfo(verifier); - } - - public Violation(Severity severity, String path, String detail, Throwable throwable) - { - this.severity = severity; - this.path = path; - this.detail = detail; - this.throwable = throwable; - } - - public void setVerifierInfo(Rule verifier) - { - this.ruleId = verifier.getName(); - this.ruleClass = verifier.getClass(); - } - - @Override - public String toString() - { - StringBuffer msg = new StringBuffer(); - msg.append("Violation["); - msg.append("severity=").append(severity.name()); - msg.append(",path=").append(path); - msg.append(",detail=").append(detail); - if (ruleId != null) - { - msg.append(",verifierId=").append(ruleId); - } - if (ruleClass != null) - { - msg.append(",verifierClass=").append(ruleClass.getName()); - } - if (throwable != null) - { - msg.append(",throwable=").append(throwable.getClass().getName()); - } - msg.append("]"); - return msg.toString(); - } - - public String toDelimString() - { - StringBuffer msg = new StringBuffer(); - msg.append(severity.name()); - msg.append("|").append(path); - msg.append("|").append(detail); - return msg.toString(); - } - - @Override - public int hashCode() - { - final int prime = 31; - int result = 1; - result = prime * result + ((detail == null)?0:detail.hashCode()); - result = prime * result + ((path == null)?0:path.hashCode()); - result = prime * result + ((severity == null)?0:severity.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) - { - if (this == obj) - { - return true; - } - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - Violation other = (Violation)obj; - if (detail == null) - { - if (other.detail != null) - { - return false; - } - } - else if (!detail.equals(other.detail)) - { - return false; - } - if (path == null) - { - if (other.path != null) - { - return false; - } - } - else if (!path.equals(other.path)) - { - return false; - } - if (severity == null) - { - if (other.severity != null) - { - return false; - } - } - else if (!severity.equals(other.severity)) - { - return false; - } - return true; - } - - public Class getRuleClass() - { - return ruleClass; - } - - public String getRuleId() - { - return ruleId; - } - - public String getDetail() - { - return detail; - } - - public String getPath() - { - return path; - } - - public Severity getSeverity() - { - return severity; - } - - public Throwable getThrowable() - { - return throwable; - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationComparator.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationComparator.java deleted file mode 100644 index 24ea663f227..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationComparator.java +++ /dev/null @@ -1,49 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.text.CollationKey; -import java.text.Collator; -import java.util.Comparator; - -public class ViolationComparator implements Comparator -{ - private static ViolationComparator INSTANCE = new ViolationComparator(); - - public static ViolationComparator getInstance() - { - return INSTANCE; - } - - private Collator collator = Collator.getInstance(); - - public int compare(Violation o1, Violation o2) - { - CollationKey pathKey1 = collator.getCollationKey(o1.getPath()); - CollationKey pathKey2 = collator.getCollationKey(o2.getPath()); - - int diff = pathKey1.compareTo(pathKey2); - if (diff != 0) - { - // different paths. - return diff; - } - - CollationKey detailKey1 = collator.getCollationKey(o1.getDetail()); - CollationKey detailKey2 = collator.getCollationKey(o2.getDetail()); - return detailKey1.compareTo(detailKey2); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationListener.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationListener.java deleted file mode 100644 index e2ab668ecae..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/ViolationListener.java +++ /dev/null @@ -1,21 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -public interface ViolationListener -{ - void reportViolation(Violation violation); -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/WebappVerifier.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/WebappVerifier.java deleted file mode 100644 index 25044c18912..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/WebappVerifier.java +++ /dev/null @@ -1,570 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.jar.JarFile; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.util.IO; -import org.eclipse.jetty.util.resource.JarResource; -import org.eclipse.jetty.util.resource.Resource; - -/** - * The Webapp Verifier is a component that can be configured to run and arbitrary number of {@link Rule}s that analyze - * the contents of a war file and report rule violations. - */ -public class WebappVerifier implements ViolationListener -{ - /** - *

- * Represents the source webappURI. - *

- *

- * Can be http, file, jar, etc ... - *

- *

- * Verification does not occur directly against this URI. - *

- */ - private URI _webappURI; - - /** - * Represents the local webapp file directory, often times points to the working (unpacked) webapp directory. - * - * NOTE: if _webappURI is a "file://" access URI, and points to a directory, then the _webappDir will point to the - * the same place, otherwise it will point to the webapp directory. - */ - private File _webappDir; - private File _workdir; - private List _rules; - private Map> _violations; - - /** - * Instantiate a WebappVerifier, against the specific webappURI, using the default workdir. - * - * @param webappURI - * the webappURI to verify - */ - public WebappVerifier(URI webappURI) - { - this._webappURI = webappURI; - this._workdir = new File(System.getProperty("java.io.tmpdir"),"jetty-waver"); - this._rules = new ArrayList(); - this._violations = new HashMap>(); - } - - public void addRule(Rule rule) - { - _rules.add(rule); - try - { - rule.setViolationListener(this); - rule.initialize(); - } - catch (Throwable t) - { - // Capture any errors out of initialize or setViolationListener() that might occur. - String msg = String.format("Unable to add rule [%s]: %s",rule.getName(),t.getMessage()); - reportException(Rule.ROOT_PATH,msg,rule,t); - } - } - - private String cleanFilename(URI uri) - { - // Need a filename to store this download to. - String destname = uri.getPath(); - int idx = destname.lastIndexOf('/'); - if (idx > 0) - { - destname = destname.substring(idx); - } - destname = destname.trim().toLowerCase(); - - if (destname.length() <= 0) - { - // whoops, there's nothing left. - // could be caused by urls that point to paths. - destname = new SimpleDateFormat("yyyy-MM-dd_hh-mm-ss").format(new Date()); - } - - // Neuter illegal characters - char cleaned[] = new char[destname.length()]; - for (int i = 0; i < destname.length(); i++) - { - char c = destname.charAt(i); - if (c == '|' || c == '/' || c == '\\' || c == '*' || c == '?' || c == ':' || c == '#') - { - cleaned[i] = '_'; - } - else - { - cleaned[i] = c; - } - } - - destname = new String(cleaned); - - if (!destname.endsWith(".war")) - { - destname += ".war"; - } - - return destname; - } - - private File download(URI uri) throws MalformedURLException, IOException - { - // Establish destfile - File destfile = new File(_workdir,cleanFilename(uri)); - - InputStream in = null; - FileOutputStream out = null; - try - { - in = uri.toURL().openStream(); - out = new FileOutputStream(destfile); - IO.copy(in,out); - } - finally - { - IO.close(in); - } - return destfile; - } - - private File establishLocalWebappDir() throws URISyntaxException, IOException - { - if ("file".equals(_webappURI.getScheme())) - { - File path = new File(_webappURI); - if (path.isDirectory()) - { - return path; - } - return unpack(path); - } - - File downloadedFile = download(_webappURI); - return unpack(downloadedFile); - } - - public List getRules() - { - return _rules; - } - - public Collection getViolations() - { - // TODO: Icky! I need a better way of getting the list of raw - // violations, complete, without path mapping in place. - // Yet, I need path mapping as well, right? - List violations = new ArrayList(); - for (List pathviol : _violations.values()) - { - violations.addAll(pathviol); - } - return violations; - } - - public File getWebappDir() - { - return _webappDir; - } - - private String getWebappRelativePath(File dir) - { - return _webappDir.toURI().relativize(dir.toURI()).toASCIIString(); - } - - public File getWorkDir() - { - return _workdir; - } - - /** - * Tests a filesystem path for webapp expected files, like "WEB-INF/web.xml" - */ - private boolean isValidWebapp(File path) - { - File webXml = new File(path,"WEB-INF" + File.separator + "web.xml"); - if (!webXml.exists()) - { - reportViolation(Severity.ERROR,Rule.ROOT_PATH,"Missing WEB-INF/web.xml"); - return false; - } - - if (!webXml.isFile()) - { - reportViolation(Severity.ERROR,Rule.ROOT_PATH,"The WEB-INF/web.xml is not a File"); - return false; - } - - return true; - } - - private void reportException(String path, String detail, Rule rule, Throwable t) - { - Violation viol = new Violation(Severity.ERROR,path,detail,t); - viol.setVerifierInfo(rule); - reportViolation(viol); - } - - public void reportViolation(Severity error, String path, String detail) - { - reportViolation(new Violation(error,path,detail)); - } - - public void reportViolation(Violation violation) - { - List pathviol = _violations.get(violation.getPath()); - if (pathviol == null) - { - pathviol = new ArrayList(); - } - pathviol.add(violation); - _violations.put(violation.getPath(),pathviol); - } - - public void setRules(Collection rules) - { - this._rules.clear(); - // Add each rule separately, to establish initialization & listeners - for (Rule verifier : rules) - { - addRule(verifier); - } - } - - public void setWorkDir(File workDir) - { - this._workdir = workDir; - } - - private File unpack(File path) throws URISyntaxException, IOException - { - String destname = path.getName().substring(0,path.getName().length() - 4); - File destDir = new File(_workdir,destname); - URI warURI = new URI("jar",path.toURI() + "!/",null); - JarResource warResource = (JarResource)Resource.newResource(warURI); - warResource.extract(destDir,false); - return destDir; - } - - public void visitAll() - { - try - { - _webappDir = establishLocalWebappDir(); - - // Issue start. - for (Rule rule : _rules) - { - rule.visitWebappStart(Rule.ROOT_PATH,_webappDir); - } - - if (isValidWebapp(_webappDir)) - { - // Iterate through content - visitContents(); - // Iterate through WEB-INF/classes - visitWebInfClasses(); - // Iterate through WEB-INF/lib - visitWebInfLib(); - } - - // Issue end. - for (Rule rule : _rules) - { - rule.visitWebappEnd(Rule.ROOT_PATH,_webappDir); - } - } - catch (IOException e) - { - reportViolation(new Violation(Severity.ERROR,Rule.ROOT_PATH,e.getMessage(),e)); - } - catch (URISyntaxException e) - { - reportViolation(new Violation(Severity.ERROR,Rule.ROOT_PATH,e.getMessage(),e)); - } - } - - private void visitWebInfClasses() - { - File classesDir = new File(_webappDir,"WEB-INF" + File.separator + "classes"); - if (!classesDir.exists()) - { - // skip this path. - return; - } - - String classesPath = getWebappRelativePath(classesDir); - - if (!classesDir.isDirectory()) - { - reportViolation(Severity.ERROR,classesPath,"WEB-INF/classes is not a Directory?"); - return; - } - - // Issue start. - for (Rule rule : _rules) - { - rule.visitWebInfClassesStart(classesPath,classesDir); - } - - visitClassesDir(classesDir,classesDir); - - // Issue end. - for (Rule rule : _rules) - { - rule.visitWebInfClassesEnd(classesPath,classesDir); - } - } - - private void visitClassesDir(File classesRoot, File classesDir) - { - File files[] = classesDir.listFiles(); - for (File file : files) - { - if (file.isFile()) - { - if (file.getName().endsWith(".class")) - { - visitClass(classesRoot,file); - } - else - { - visitClassResource(classesRoot,file); - } - } - else if (file.isDirectory()) - { - // recurse - visitClassesDir(classesRoot,file); - } - } - } - - private void visitClassResource(File classesRoot, File file) - { - String path = getWebappRelativePath(file); - String resourcePath = classesRoot.toURI().relativize(file.toURI()).toASCIIString(); - for (Rule rule : _rules) - { - rule.visitWebInfClassResource(path,resourcePath,file); - } - } - - private void visitClass(File classesRoot, File file) - { - String path = getWebappRelativePath(file); - String className = classesRoot.toURI().relativize(file.toURI()).toASCIIString(); - className = className.replace("/","."); - if (className.endsWith(".class")) - { - className = className.substring(0,className.length() - 6); - } - for (Rule rule : _rules) - { - rule.visitWebInfClass(path,className,file); - } - } - - private void visitWebInfLib() - { - File libDir = new File(_webappDir,"WEB-INF" + File.separator + "lib"); - if (!libDir.exists()) - { - // skip this path. - return; - } - - String libPath = getWebappRelativePath(libDir); - - if (!libDir.isDirectory()) - { - reportViolation(Severity.ERROR,libPath,"WEB-INF/lib is not a Directory?"); - return; - } - - // Issue start. - for (Rule rule : _rules) - { - rule.visitWebInfLibStart(libPath,libDir); - } - - // Iterator through contents of WEB-INF/lib - File archives[] = libDir.listFiles(); - for (File archive : archives) - { - if (!archive.isFile()) - { - reportViolation(Severity.WARNING,Rule.ROOT_PATH,"Found non-file in WEB-INF/lib. Remove it, " - + "as it cannot be accessed by the Servlet container or the Webapp: " + archive); - continue; - } - - if (archive.getName().toLowerCase().endsWith(".jar")) - { - visitWebInfLibJar(libPath,archive); - continue; - } - - if (archive.getName().toLowerCase().endsWith(".zip")) - { - visitWebInfLibZip(libPath,archive); - continue; - } - - reportViolation(Severity.WARNING,Rule.ROOT_PATH,"Found non-archive in WEB-INF/lib. Remove it, " - + "as it cannot be accessed by the Servlet container or the Webapp: " + archive); - } - - // Issue end. - for (Rule rule : _rules) - { - rule.visitWebInfLibEnd(libPath,libDir); - } - } - - private void visitWebInfLibJar(String libPath, File archive) - { - String jarPath = libPath + archive.getName(); - - // Issue visit on Jar - for (Rule rule : _rules) - { - JarFile jar = null; - try - { - jar = new JarFile(archive); - rule.visitWebInfLibJar(jarPath,archive,jar); - } - catch (Throwable t) - { - reportViolation(new Violation(Severity.ERROR,jarPath,t.getMessage(),t)); - } - finally - { - if (jar != null) - { - try - { - jar.close(); - } - catch (IOException ignore) - { - /* ignore */ - } - } - } - } - } - - private void visitWebInfLibZip(String libPath, File archive) - { - String zipPath = libPath + archive.getName(); - - // Issue visit on Zip - for (Rule rule : _rules) - { - ZipFile zip = null; - try - { - zip = new ZipFile(archive); - rule.visitWebInfLibZip(zipPath,archive,zip); - } - catch (Throwable t) - { - reportViolation(new Violation(Severity.ERROR,zipPath,t.getMessage(),t)); - } - finally - { - if (zip != null) - { - try - { - zip.close(); - } - catch (IOException ignore) - { - /* ignore */ - } - } - } - } - } - - private void visitContents() - { - visitDirectoryRecursively(_webappDir); - } - - private void visitDirectoryRecursively(File dir) - { - String path = getWebappRelativePath(dir); - - // Start Dir - for (Rule rule : this._rules) - { - rule.visitDirectoryStart(path,dir); - } - - File entries[] = dir.listFiles(); - - // Individual Files - for (File file : entries) - { - if (file.isFile()) - { - String filepath = path + file.getName(); - for (Rule rule : this._rules) - { - rule.visitFile(filepath,dir,file); - } - } - } - - // Sub dirs - for (File file : entries) - { - if (file.isDirectory()) - { - visitDirectoryRecursively(file); - } - } - - // End Dir - for (Rule rule : this._rules) - { - rule.visitDirectoryEnd(path,dir); - } - } - -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenClassesRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenClassesRule.java deleted file mode 100644 index 6e845725c10..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenClassesRule.java +++ /dev/null @@ -1,90 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Pattern; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractArchiveScanningRule; - -/** - * ForbiddenClassesVerifier checks the various classes available to the Webapp to ensure that they do not contain and - * forbidden classes. - */ -public class ForbiddenClassesRule extends AbstractArchiveScanningRule -{ - private Map classPatterns = new HashMap(); - - public void addClassPattern(String classPattern) - { - StringBuffer regex = new StringBuffer(); - for (char c : classPattern.toCharArray()) - { - if (c == '.') - { - regex.append("\\."); - } - else if (c == '*') - { - regex.append(".*"); - } - else - { - regex.append(c); - } - } - classPatterns.put(classPattern,Pattern.compile(regex.toString())); - } - - @Override - public String getDescription() - { - return "Ensures that forbidden packages are not present in the war file"; - } - - @Override - public String getName() - { - return "forbidden-class"; - } - - private void validateClassname(String path, String className) - { - for (Map.Entry pattern : this.classPatterns.entrySet()) - { - if (pattern.getValue().matcher(className).matches()) - { - error(path,"Class forbidden by pattern: " + pattern.getKey()); - } - } - } - - @Override - public void visitWebInfClass(String path, String className, File classFile) - { - validateClassname(path,className); - } - - @Override - public void visitArchiveClass(String path, String className, ZipFile archive, ZipEntry archiveEntry) - { - validateClassname(path,className); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenContentsRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenContentsRule.java deleted file mode 100644 index c3d2fdedb8a..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ForbiddenContentsRule.java +++ /dev/null @@ -1,58 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; -import org.eclipse.jetty.webapp.verifier.support.PathGlob; - -/** - * ForbiddenContentsVerifier ensures that content matching a pattern does not exist in the webapp. - */ -public class ForbiddenContentsRule extends AbstractRule -{ - private List _patterns = new ArrayList(); - - public void addPattern(String pattern) - { - _patterns.add(pattern); - } - - public String getDescription() - { - return "Checks for forbidden content"; - } - - public String getName() - { - return "forbidden-content"; - } - - @Override - public void visitFile(String path, File dir, File file) - { - for (String pattern : _patterns) - { - if (PathGlob.match(pattern,path)) - { - error(path,"Forbidden content detected"); - } - } - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRule.java deleted file mode 100644 index 60a7e1d8b62..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRule.java +++ /dev/null @@ -1,232 +0,0 @@ -// ======================================================================== -// Copyright (c) 2009-2009 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.security.KeyStore; -import java.security.cert.Certificate; -import java.security.cert.X509Certificate; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.List; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; - -import org.eclipse.jetty.util.IO; -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * Signed Jar Verifier - */ -public class JarSignatureRule extends AbstractRule -{ - private String _keystoreLocation = System.getProperty("java.home") + "/lib/security/cacerts"; - private String _type = "JKS"; // default - private String _alias = "verisignclass3ca"; // default - private KeyStore _keystore; - - private static X509Certificate[] _trustedCertificates; - - /* ------------------------------------------------------------ */ - /** - * @see org.eclipse.jetty.webapp.verifier.AbstractRule#getDescription() - */ - public String getDescription() - { - return "verifies that the given keystore contains the certificates required for all jar files present"; - } - - /* ------------------------------------------------------------ */ - /** - * @see org.eclipse.jetty.webapp.verifier.AbstractRule#getName() - */ - public String getName() - { - return "jar-signature"; - } - - /* ------------------------------------------------------------ */ - /** - * @param jar - * @return - */ - private List resolveJar(JarFile jar) - { - List entries = new ArrayList(); - - Enumeration e = jar.entries(); - - while (e.hasMoreElements()) - { - JarEntry jarEntry = e.nextElement(); - try - { - entries.add(jarEntry); // for further verification - IO.toString(jar.getInputStream(jar.getEntry(jarEntry.getName()))); - } - catch (IOException e1) - { - throw new SecurityException(e1); - } - } - - return entries; - } - - /* ------------------------------------------------------------ */ - /** - * Set the _keystore. - * - * @param keystore - * the _keystore to set - */ - public void setKeystoreLocation( String keyStoreLocation ) - { - _keystoreLocation = keyStoreLocation; - } - - @Override - public void initialize() - { - try - { - _keystore = KeyStore.getInstance(_type); - - InputStream istream = new File( _keystoreLocation ).toURL().openStream(); - - _keystore.load(istream,null); - - _trustedCertificates = new X509Certificate[] - { (X509Certificate)_keystore.getCertificate(_alias) }; - - } - catch (Throwable t) - { - exception(_keystoreLocation, t.getMessage(), t); - } - } - - public void setType(String type) - { - _type = type; - } - - /** - * @see org.eclipse.jetty.webapp.verifier.Rule#visitWebInfLibJar(java.lang.String, java.io.File, java.util.jar.JarFile) - */ - @Override - public void visitWebInfLibJar(String path, File archive, JarFile jar) - { - - try - { - if (jar.getManifest() == null) - { - error(jar.toString(),"missing manifest.mf, can not be signed"); - } - - List entries = resolveJar(jar); - - for (JarEntry jarEntry : entries) - { - if (!jarEntry.isDirectory() && !jarEntry.getName().startsWith("META-INF")) - { - Certificate[] certs = jarEntry.getCertificates(); - - if (certs == null || certs.length == 0) - { - error(jarEntry.getName(),"entry has not been signed"); - } - else - { - X509Certificate[] chainRoots = getChainRoots(certs); - boolean signed = false; - - for (int i = 0; i < chainRoots.length; i++) - { - if (isTrusted(chainRoots[i])) - { - signed = true; - break; - } - } - if (!signed) - { - error(jarEntry.getName(),"Untrusted provider's JAR"); - } - } - } - } - } - catch (Exception e) - { - exception(jar.getName(), e.getMessage(), e); - } - } - - private boolean isTrusted(X509Certificate certificate) - { - for (int i = 0; i < _trustedCertificates.length; i++) - { - if (certificate.getSubjectDN().equals(_trustedCertificates[i].getSubjectDN())) - { - if (certificate.equals(_trustedCertificates[i])) - { - return true; - } - } - } - - for (int i = 0; i < _trustedCertificates.length; i++) - { - if (certificate.getIssuerDN().equals(_trustedCertificates[i].getSubjectDN())) - { - try - { - certificate.verify(_trustedCertificates[i].getPublicKey()); - return true; - } - catch (Exception e) - { - } - } - } - return false; - } - - /** - * Returns a array of certificates with the root certificate of each chain - * - * @param certificates an array of X509 certificate's - * @return an array of X509 certificate's with the root certificate of each chain - */ - private X509Certificate[] getChainRoots(Certificate[] certificates) - { - List chainRoots = new ArrayList(); - - for (int i = 0; i < certificates.length - 1; i++) - { - if (!((X509Certificate)certificates[i + 1]).getSubjectDN().equals(((X509Certificate)certificates[i]).getIssuerDN())) - { - chainRoots.add((X509Certificate)certificates[i]); - } - } - - chainRoots.add((X509Certificate)certificates[certificates.length - 1]); - - return chainRoots.toArray(new X509Certificate[chainRoots.size()]); - } - -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRule.java deleted file mode 100644 index cf93c409385..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRule.java +++ /dev/null @@ -1,166 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.io.IOException; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractArchiveScanningRule; -import org.eclipse.jetty.webapp.verifier.rules.asm.ASMUtil; -import org.eclipse.jetty.webapp.verifier.rules.asm.AbstractClassVisitor; - -/** - * Ensure all compiled classes within webapp are within the supported JVM range. - */ -public class JavaSupportLevelRule extends AbstractArchiveScanningRule -{ - class ClassVersionVisitor extends AbstractClassVisitor - { - private double classVersion = -1; - - public double getClassVersion() - { - return classVersion; - } - - @Override - public void visit(int version, int access, String name, String signature, String superName, String[] interfaces) - { - this.classVersion = getJavaClassVersion(version); - } - - private double getJavaClassVersion(int version) - { - int major = version & 0xFFFF; - int minor = version >>> 16; - - // Java Versions to Class Version (major.minor) - // Java 1.6 = 50.0 - // Java 1.5 = 49.0 - // Java 1.4 = 48.0 - // Java 1.3 = 47.0 - // Java 1.2 = 46.0 - // Java 1.1 = 45.3 - - // TODO: check these since they are > instead of >= - if (major >= 50) - { - return 1.6; - } - else if (major >= 49) - { - return 1.5; - } - else if (major >= 48) - { - return 1.4; - } - else if (major >= 47) - { - return 1.3; - } - else if (major >= 46) - { - return 1.2; - } - else if (major >= 45) - { - if (minor >= 3) - { - return 1.1; - } - return 1.0; - } - - return 0.0; - } - - public void reset() - { - this.classVersion = (-1); - } - } - - private double supportedVersion = 1.5; - private ClassVersionVisitor visitor; - - @Override - public String getDescription() - { - return "Ensure all compiled classes within webapp are within the supported JVM"; - } - - @Override - public String getName() - { - return "java-support-level"; - } - - public double getSupportedVersion() - { - return supportedVersion; - } - - public void setSupportedVersion(double supportedVersion) - { - this.supportedVersion = supportedVersion; - } - - @Override - public void visitWebappStart(String path, File dir) - { - visitor = new ClassVersionVisitor(); - } - - - @Override - public void visitWebInfClass(String path, String className, File classFile) - { - try - { - visitor.reset(); - ASMUtil.visitClassFile(classFile,visitor,0); - if (visitor.classVersion > supportedVersion) - { - error(path,"Class is compiled for java version [" + visitor.classVersion + "] which is over supported java version [" + supportedVersion + "]"); - } - } - catch (IOException e) - { - exception(path,"Unable to read class",e); - } - } - - @Override - public void visitArchiveClass(String path, String className, ZipFile archive, ZipEntry archiveEntry) - { - try - { - visitor.reset(); - ASMUtil.visitClass(archive.getInputStream(archiveEntry),visitor,0); - if (visitor.classVersion > supportedVersion) - { - error(path,"Class is compiled for java version [" + visitor.classVersion + "] which is over supported java version [" + supportedVersion + "]"); - } - } - catch (IOException e) - { - exception(path,"Unable to read class",e); - } - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspPrecompileRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspPrecompileRule.java deleted file mode 100644 index 73bfb552a43..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspPrecompileRule.java +++ /dev/null @@ -1,43 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * Perform a JSP pre-compile to ensure all JSPs are valid. - */ -public class JspPrecompileRule extends AbstractRule -{ - public String getDescription() - { - return "Perform JSP precompile to ensure all jsps are valid"; - } - - public String getName() - { - return "jsp-precompile"; - } - - @Override - public void visitWebappStart(String path, File dir) - { - // TODO: implement rule. - error(path,"Rule [" + getClass().getName() + "] not yet implemented"); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspSupportLevelRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspSupportLevelRule.java deleted file mode 100644 index 15181ade9b4..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/JspSupportLevelRule.java +++ /dev/null @@ -1,43 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * Ensure any included JSPs are supported by the Container. - */ -public class JspSupportLevelRule extends AbstractRule -{ - public String getDescription() - { - return "Ensure include JSP are supported by the Container"; - } - - public String getName() - { - return "jsp-support-level"; - } - - @Override - public void visitWebappStart(String path, File dir) - { - // TODO: implement rule. - error(path,"Rule [" + getClass().getName() + "] not yet implemented"); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoJspRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoJspRule.java deleted file mode 100644 index d296f39a916..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoJspRule.java +++ /dev/null @@ -1,46 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * Prevent inclusion of *.jsp in webapp. - */ -public class NoJspRule extends AbstractRule -{ - public String getDescription() - { - return "Prevent inclusion of JSPs in webapp"; - } - - public String getName() - { - return "no-jsp"; - } - - @Override - public void visitFile(String path, File dir, File file) - { - String name = file.getName().toLowerCase(); - if (name.endsWith(".jsp") || name.endsWith(".jspf")) - { - error(path,"No JSP's are allowed"); - } - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRule.java deleted file mode 100644 index ee6f1176f87..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRule.java +++ /dev/null @@ -1,68 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractArchiveScanningRule; -import org.eclipse.jetty.webapp.verifier.support.PathGlob; - -/** - * Prevent use of native code in webapp. - */ -public class NoNativeRule extends AbstractArchiveScanningRule -{ - private String[] nativePatterns = - { "*.so", "*.so.*", "*.o", "*.dll", "*.com", "*.exe" }; - - @Override - public String getDescription() - { - return "Prevent use of native code in webapp"; - } - - @Override - public String getName() - { - return "no-native"; - } - - @Override - public void visitFile(String path, File dir, File file) - { - for (String pattern : nativePatterns) - { - if (PathGlob.match(pattern,path)) - { - error(path,"Native code is forbidden"); - } - } - } - - @Override - public void visitArchiveResource(String path, ZipFile zip, ZipEntry entry) - { - for (String pattern : nativePatterns) - { - if (PathGlob.match(pattern,entry.getName())) - { - error(path,"Native code is forbidden"); - } - } - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRule.java deleted file mode 100644 index 2cbfd45efa0..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRule.java +++ /dev/null @@ -1,235 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.List; -import java.util.jar.JarFile; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * NoScriptingRule ensure that no scripting languages are used in the webapp. - * - * Checks for actual script files in webapp filesystem, and existance of popular scripting language libraries as well. - */ -public class NoScriptingRule extends AbstractRule -{ - class Forbidden - { - public String key; - public String msg; - - public Forbidden(String key, String msg) - { - super(); - this.key = key; - this.msg = msg; - } - } - - private boolean allowJRuby = false; - private boolean allowBeanshell = false; - private boolean allowGroovy = false; - private boolean allowJython = false; - private boolean allowShell = false; - private List forbiddenFileExtensions = new ArrayList(); - private List forbiddenClassIds = new ArrayList(); - - public boolean isAllowShell() - { - return allowShell; - } - - public void setAllowShell(boolean allowShell) - { - this.allowShell = allowShell; - } - - public boolean isAllowJRuby() - { - return allowJRuby; - } - - public void setAllowJRuby(boolean allowJruby) - { - this.allowJRuby = allowJruby; - } - - public boolean isAllowBeanshell() - { - return allowBeanshell; - } - - public void setAllowBeanshell(boolean allowBeanshell) - { - this.allowBeanshell = allowBeanshell; - } - - public boolean isAllowGroovy() - { - return allowGroovy; - } - - public void setAllowGroovy(boolean allowGroovy) - { - this.allowGroovy = allowGroovy; - } - - public boolean isAllowJython() - { - return allowJython; - } - - public void setAllowJython(boolean allowJython) - { - this.allowJython = allowJython; - } - - public String getDescription() - { - return "Do not allow scripting languages in webapp"; - } - - public String getName() - { - return "forbidden-scripting"; - } - - @Override - public void initialize() throws Throwable - { - forbiddenFileExtensions.clear(); - forbiddenClassIds.clear(); - if (!allowJRuby) - { - String msg = "JRuby scripting not allowed"; - forbiddenFileExtensions.add(new Forbidden(".rb",msg)); - forbiddenFileExtensions.add(new Forbidden(".rhtml",msg)); - msg = "JRuby dependencies are not allowed"; - forbiddenClassIds.add(new Forbidden(".jruby.",msg)); - } - - if (!allowJython) - { - String msg = "Jython and Python scripting not allowed"; - forbiddenFileExtensions.add(new Forbidden(".py",msg)); - forbiddenFileExtensions.add(new Forbidden(".pyc",msg)); - msg = "Jython dependencies are not allowed"; - forbiddenClassIds.add(new Forbidden("org.python.",msg)); - } - - if (!allowGroovy) - { - String msg = "Groovy scripting not allowed"; - forbiddenFileExtensions.add(new Forbidden(".groovy",msg)); - msg = "Groovy dependencies are not allowed"; - forbiddenClassIds.add(new Forbidden(".groovy.",msg)); - } - - if (!allowShell) - { - String msg = "Shell scripting not allowed"; - forbiddenFileExtensions.add(new Forbidden(".sh",msg)); - forbiddenFileExtensions.add(new Forbidden(".bat",msg)); - forbiddenFileExtensions.add(new Forbidden(".cmd",msg)); - forbiddenFileExtensions.add(new Forbidden(".vbs",msg)); - } - } - - @Override - public void visitFile(String path, File dir, File file) - { - String name = file.getName().toLowerCase(); - for (Forbidden forbidden : forbiddenFileExtensions) - { - if (name.endsWith(forbidden.key)) - { - error(path,forbidden.msg); - } - } - } - - @Override - public void visitWebInfClass(String path, String className, File classFile) - { - validateClassname(path,className); - } - - private void validateClassname(String path, String className) - { - for (Forbidden forbidden : forbiddenClassIds) - { - if (className.contains(forbidden.key)) - { - error(path,forbidden.msg); - } - } - } - - @Override - public void visitWebInfClassResource(String path, String resourcePath, File resourceFile) - { - super.visitWebInfClassResource(path,resourcePath,resourceFile); - } - - @Override - public void visitWebInfLibJar(String path, File archive, JarFile jar) - { - iterateArchive(path,archive,jar); - } - - private void iterateArchive(String path, File archive, ZipFile zip) - { - try - { - Enumeration entries = zip.entries(); - while (entries.hasMoreElements()) - { - ZipEntry entry = entries.nextElement(); - if (entry.getName().endsWith(".class")) - { - checkArchiveClassname(path,archive,entry.getName()); - } - } - } - catch (Throwable t) - { - exception(path,"Unable to iterate archive: Contents invalid?: " + t.getMessage(),t); - } - } - - private void checkArchiveClassname(String path, File archive, String name) - { - String className = name.replace("/","."); - if (className.endsWith(".class")) - { - className = className.substring(0,className.length() - 6); - } - - validateClassname(path + "!/" + name,className); - } - - @Override - public void visitWebInfLibZip(String path, File archive, ZipFile zip) - { - iterateArchive(path,archive,zip); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRule.java deleted file mode 100644 index 2b07684f3c8..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRule.java +++ /dev/null @@ -1,151 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractArchiveScanningRule; - -/** - * Prevent inclusion of Source Control files & directories that might reveal hostnames, userids, and passwords to the - * source control. (CVS, .svn/, .git/) - */ -public class NoSourceControlRule extends AbstractArchiveScanningRule -{ - class ScmName - { - String scm; - String name; - - public ScmName(String scm, String name) - { - this.scm = scm; - this.name = name; - } - } - - private static List scmDirNames = new ArrayList(); - private static List scmFileNames = new ArrayList(); - - public NoSourceControlRule() - { - super(); - - // The order of patterns is most likely to least likely - - scmDirNames.add(new ScmName("Subversion",".svn")); // Standard Unix format - scmDirNames.add(new ScmName("Subversion","_svn")); // Alternate Windows format - scmDirNames.add(new ScmName("CVS","CVS")); - scmFileNames.add(new ScmName("CVS",".cvsignore")); - scmDirNames.add(new ScmName("Git",".git")); - scmFileNames.add(new ScmName("Git",".gitignore")); - scmDirNames.add(new ScmName("RCS","RCS")); - scmDirNames.add(new ScmName("SCCS","SCCS")); - scmFileNames.add(new ScmName("Visual SourceSafe","vssver.scc")); - scmDirNames.add(new ScmName("Arch",".arch-ids")); - scmDirNames.add(new ScmName("Bazaar",".bzr")); - scmFileNames.add(new ScmName("SurroundSCM",".MySCMServerInfo")); - scmDirNames.add(new ScmName("Mercurial",".hg")); - scmDirNames.add(new ScmName("BitKeeper","BitKeeper")); - scmDirNames.add(new ScmName("BitKeeper","ChangeSet")); - scmDirNames.add(new ScmName("Darcs","_darcs")); - scmDirNames.add(new ScmName("Darcs",".darcsrepo")); - scmFileNames.add(new ScmName("Darcs",".darcs-temp-mail")); - } - - @Override - public String getDescription() - { - return "Prevent inclusion of source control files in webapp"; - } - - @Override - public String getName() - { - return "no-source-control"; - } - - @Override - public void visitDirectoryStart(String path, File dir) - { - for (ScmName scmName : scmDirNames) - { - if (dir.getName().equalsIgnoreCase(scmName.name)) - { - error(path,scmName.scm + " Source Control directories are not allowed"); - } - } - } - - @Override - public void visitFile(String path, File dir, File file) - { - for (ScmName scmName : scmFileNames) - { - if (file.getName().equalsIgnoreCase(scmName.name)) - { - error(path,scmName.scm + " Source Control file are not allowed"); - } - } - } - - @Override - public void visitArchiveResource(String path, ZipFile zip, ZipEntry entry) - { - String basename = toBaseName(entry); - - if (entry.isDirectory()) - { - for (ScmName scmName : scmDirNames) - { - if (basename.equalsIgnoreCase(scmName.name)) - { - error(path,scmName.scm + " Source Control directories are not allowed"); - } - } - } - else - { - for (ScmName scmName : scmFileNames) - { - if (basename.equalsIgnoreCase(scmName.name)) - { - error(path,scmName.scm + " Source Control file are not allowed"); - } - } - } - } - - private String toBaseName(ZipEntry entry) - { - String name =entry.getName(); - if (name.endsWith("/")) - { - name = name.substring(0,name.length() - 1); - } - - int idx = name.lastIndexOf('/'); - if (idx >= 0) - { - return name.substring(idx + 1); - } - return name; - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceRule.java deleted file mode 100644 index 48f2f0c5e07..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceRule.java +++ /dev/null @@ -1,70 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import org.eclipse.jetty.webapp.verifier.AbstractArchiveScanningRule; -import org.eclipse.jetty.webapp.verifier.support.PathGlob; - -/** - *

- * Prevent inclusion of source files in webapp. (*.java) - *

- */ -public class NoSourceRule extends AbstractArchiveScanningRule -{ - private String[] sourcePatterns = - { "*.java" }; - - @Override - public String getDescription() - { - return "Prevent inclusion of source files in webapp"; - } - - @Override - public String getName() - { - return "no-source"; - } - - @Override - public void visitFile(String path, File dir, File file) - { - for (String pattern : sourcePatterns) - { - if (PathGlob.match(pattern,path)) - { - error(path,"Source code is forbidden"); - } - } - } - - @Override - public void visitArchiveResource(String path, ZipFile zip, ZipEntry entry) - { - for (String pattern : sourcePatterns) - { - if (PathGlob.match(pattern,entry.getName())) - { - error(path,"Source code is forbidden"); - } - } - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/RequiredContentsRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/RequiredContentsRule.java deleted file mode 100644 index 75efa42adcf..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/RequiredContentsRule.java +++ /dev/null @@ -1,64 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - * ForbiddenContentsVerifier ensures that content matching a pattern does not exist in the webapp. - */ -public class RequiredContentsRule extends AbstractRule -{ - private List _paths = new ArrayList(); - - public void addPath(String path) - { - _paths.add(path); - } - - public String getDescription() - { - return "Ensures that requred content is present"; - } - - public String getName() - { - return "required-content"; - } - - @Override - public void visitDirectoryEnd(String path, File dir) - { - if (path.equals(ROOT_PATH)) - { - File root = new File(path); - - for (String expectedPath : _paths) - { - File file = new File(root,expectedPath); - if (!file.exists()) - { - error(getWebappRelativePath(file),"Required content not found"); - } - } - } - } - -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/SaneArchiveRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/SaneArchiveRule.java deleted file mode 100644 index 56a0ce22cb5..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/SaneArchiveRule.java +++ /dev/null @@ -1,59 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; - -/** - *

- * Sanity check of archive (both war itself, as well as libs) to ensure that various entries within are sane. - *

- * - *

- * Example checks: - *

- * - *
    - *
  1. Entries cannot contain references to parent "../../my_file.txt"
  2. - *
  3. Cannot contain multiple entries of the same name with different case. - *
      - *
    • /index.jsp
    • - *
    • /Index.jsp
    • - *
    - *
  4. - *
- */ -public class SaneArchiveRule extends AbstractRule -{ - public String getDescription() - { - return "Basic archive (jar & war) sanity checks"; - } - - public String getName() - { - return "sane-archive"; - } - - @Override - public void visitWebappStart(String path, File dir) - { - // TODO: implement rule. - error(path,"Rule [" + getClass().getName() + "] not yet implemented"); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRule.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRule.java deleted file mode 100644 index 29c95312b3a..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRule.java +++ /dev/null @@ -1,374 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Iterator; -import java.util.List; -import java.util.Set; -import java.util.TreeSet; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.parsers.ParserConfigurationException; - -import org.eclipse.jetty.webapp.verifier.AbstractRule; -import org.w3c.dom.Document; -import org.w3c.dom.DocumentType; -import org.w3c.dom.Element; -import org.xml.sax.SAXException; - -/** - * Ensure declared servlet level (servlet spec version) in webapp conforms to supported level. - */ -public class ServletSupportLevelRule extends AbstractRule -{ - private static final String XSI_NS = "http://www.w3.org/2001/XMLSchema-instance"; - - class ServletId - { - String version; - String name; - String type; - - public ServletId(String version, String type, String name) - { - super(); - this.version = version; - this.type = type; - this.name = name; - } - } - - private String supportedVersion = "2.5"; - private String fileSep = System.getProperty("file.separator","/"); - private List dtdPublicIds = new ArrayList(); - private List dtdSystemIds = new ArrayList(); - private List nsIds = new ArrayList(); - private List schemaIds = new ArrayList(); - private String validVersions[] = - { "2.5", "2.4", "2.3", "2.2" }; - - public ServletSupportLevelRule() - { - // Servlet 2.5 - schemaIds.add(new ServletId("2.5","Schema","http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd")); - nsIds.add(new ServletId("2.5","XML Namespace","http://java.sun.com/xml/ns/javaee")); - - // Servlet 2.4 - schemaIds.add(new ServletId("2.4","Schema","http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd")); - nsIds.add(new ServletId("2.4","XML Namespace","http://java.sun.com/xml/ns/j2ee")); - - // Servlet 2.3 - dtdPublicIds.add(new ServletId("2.3","DOCTYPE Public ID","-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN")); - dtdSystemIds.add(new ServletId("2.3","DOCTYPE System ID","http://java.sun.com/dtd/web-app_2_3.dtd")); - - // Servlet 2.2 - dtdPublicIds.add(new ServletId("2.2","DOCTYPE Public ID","-//Sun Microsystems, Inc.//DTD WebApplication 2.2//EN")); - dtdSystemIds.add(new ServletId("2.2","DOCTYPE System ID","http://java.sun.com/j2ee/dtds/web-app_2.2.dtd")); - } - - public String getDescription() - { - return "Ensure webapp works within supported servlet spec"; - } - - public String getName() - { - return "servlet-support-level"; - } - - public String getSupportedVersion() - { - return supportedVersion; - } - - public void setSupportedVersion(String supportedLevel) - { - this.supportedVersion = supportedLevel; - } - - @Override - public void visitWebappStart(String path, File dir) - { - super.visitWebappStart(path,dir); - - File webXmlFile = new File(dir,"WEB-INF/web.xml".replaceAll("/",fileSep)); - String webxmlpath = getWebappRelativePath(webXmlFile); - - if (!webXmlFile.exists()) - { - error(webxmlpath,"web.xml does not exist"); - return; - } - - // Using JAXP to parse the web.xml (SAX pls) - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setValidating(false); - factory.setNamespaceAware(true); - - try - { - DocumentBuilder builder = factory.newDocumentBuilder(); - Document doc = builder.parse(webXmlFile); - - List detectedIds = collectServletIds(webxmlpath,doc); - Set versions = new TreeSet(); - for (ServletId id : detectedIds) - { - versions.add(id.version); - } - - if (versions.size() > 1) - { - String msg = String.format("Found %d versions defined [%s], expected 1",versions.size(),join(versions,", ")); - error(webxmlpath,msg); - for (ServletId id : detectedIds) - { - reportConflicting(webxmlpath,id,detectedIds); - } - } - - reportOverVersion(webxmlpath,detectedIds); - } - catch (ParserConfigurationException e) - { - exception(webxmlpath,"[internal] Unable to establish XML parser",e); - } - catch (SAXException e) - { - exception(webxmlpath,"Unable to parse web.xml",e); - } - catch (IOException e) - { - exception(webxmlpath,"Unable to parse web.xml",e); - } - } - - private void reportOverVersion(String webxmlpath, List detectedIds) - { - double supportedVer = Double.parseDouble(this.supportedVersion); - - for (ServletId id : detectedIds) - { - try - { - double detectedVersion = Double.parseDouble(id.version); - if (detectedVersion > supportedVer) - { - String msg = String.format("Specified servlet version %s of %s is over the configured supported servlet version %s",id.version,id.type, - supportedVersion); - error(webxmlpath,msg); - } - } - catch (NumberFormatException e) - { - error(webxmlpath,String.format("Unable to parse version [%s] of %s, not a double",id.version,id.type)); - } - } - - } - - private void reportConflicting(String webxmlpath, ServletId mainId, List otherIds) - { - for (ServletId id : otherIds) - { - if (id.version.equals(mainId.version) == false) - { - String msg = String.format("version %s of %s conflicts with version %s of %s",mainId.version,mainId.type,id.version,id.type); - error(webxmlpath,msg); - } - } - } - - private String join(Collection coll, String delim) - { - StringBuffer msg = new StringBuffer(); - - Iterator it = coll.iterator(); - while (it.hasNext()) - { - msg.append(String.valueOf(it.next())); - if (it.hasNext()) - { - msg.append(delim); - } - } - - return msg.toString(); - } - - private List collectServletIds(String webxmlpath, Document doc) - { - List ids = new ArrayList(); - - // Check for DOCTYPE defined ids. - DocumentType doctype = doc.getDoctype(); - if (doctype != null) - { - if ("web-app".equals(doctype.getName())) - { - boolean valid = false; - for (ServletId id : dtdPublicIds) - { - if (id.name.equals(doctype.getPublicId())) - { - ids.add(id); - valid = true; - } - } - - if (!valid) - { - error(webxmlpath,"Invalid DOCTYPE public ID: " + doctype.getPublicId()); - } - - valid = false; - for (ServletId id : dtdSystemIds) - { - if (id.name.equals(doctype.getSystemId())) - { - ids.add(id); - valid = true; - } - } - - if (!valid) - { - error(webxmlpath,"Invalid DOCTYPE system ID: " + doctype.getSystemId()); - } - } - else - { - error(webxmlpath,"Invalid DOCTYPE detected, expected 'web-app', but found '" + doctype.getName() + "' instaed."); - } - } - - // Check for Root Element Namespace ids. - Element root = doc.getDocumentElement(); - - if ("web-app".equals(root.getTagName())) - { - String actualXmlNs = root.getAttribute("xmlns"); - String actualXsi = root.getAttribute("xmlns:xsi"); - String actualSchema = root.getAttribute("xsi:schemaLocation"); - String actualVersion = root.getAttribute("version"); - - if (hasAnyValue(actualXmlNs,actualXsi,actualSchema,actualVersion)) - { - if ((actualXmlNs == null) || (actualXmlNs == "")) - { - error(webxmlpath,"Attribute must exist with a valid value"); - } - else - { - boolean valid = false; - for (ServletId id : nsIds) - { - if (id.name.equals(actualXmlNs)) - { - ids.add(id); - valid = true; - } - } - - if (!valid) - { - String msg = String.format("Invalid xmlns value for ",actualXmlNs); - error(webxmlpath,msg); - } - } - - if ((actualXsi == null) || (actualXsi == "")) - { - error(webxmlpath,"Attribute must exist with a valid value"); - } - else if (!XSI_NS.equals(actualXsi)) - { - String msg = String.format("Attribute mismatch expecting but found ",XSI_NS,actualXsi); - error(webxmlpath,msg); - } - - if ((actualSchema == null) || (actualSchema == "")) - { - error(webxmlpath,"Attribute must exist with a valid value"); - } - else - { - boolean valid = false; - for (ServletId id : schemaIds) - { - if (id.name.equals(actualSchema)) - { - ids.add(id); - valid = true; - } - } - - if (!valid) - { - String msg = String.format("Invalid schemaLocation value ",actualSchema); - error(webxmlpath,msg); - } - } - - if ((actualVersion == null) || (actualVersion == "")) - { - error(webxmlpath,"Attribute must exist with a valid value"); - } - else - { - boolean valid = false; - for (String version : validVersions) - { - if (version.equals(actualVersion)) - { - ids.add(new ServletId(version,"version attribute",null)); - valid = true; - } - } - - if (!valid) - { - String msg = String.format("Invalid version value ",actualVersion); - error(webxmlpath,msg); - } - } - } - } - else - { - error(webxmlpath,"Invalid web.xml, root element expectd to be , but was <" + root.getTagName() + ">"); - } - - return ids; - } - - private boolean hasAnyValue(String... values) - { - for (String value : values) - { - if ((value != null) && (value.length() > 0)) - { - return true; - } - } - return false; - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/ASMUtil.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/ASMUtil.java deleted file mode 100644 index 9267c57ea7f..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/ASMUtil.java +++ /dev/null @@ -1,54 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules.asm; - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; - -import org.eclipse.jetty.util.IO; -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassVisitor; - -/** - * Some simple utility methods for working with ASM in a common way. - */ -public class ASMUtil -{ - public static void visitClassFile(File classFile, ClassVisitor visitor, int flags) throws IOException - { - FileInputStream fin = null; - ClassReader creader = null; - - try - { - fin = new FileInputStream(classFile); - creader = new ClassReader(fin); - creader.accept(visitor,flags); - } - finally - { - IO.close(fin); - } - } - - public static void visitClass(InputStream stream, ClassVisitor visitor, int flags) throws IOException - { - ClassReader creader = new ClassReader(stream); - creader.accept(visitor,flags); - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/AbstractClassVisitor.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/AbstractClassVisitor.java deleted file mode 100644 index 1ec62be77d1..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/rules/asm/AbstractClassVisitor.java +++ /dev/null @@ -1,77 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules.asm; - -import org.objectweb.asm.AnnotationVisitor; -import org.objectweb.asm.Attribute; -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.FieldVisitor; -import org.objectweb.asm.MethodVisitor; - -/** - * Abstact implementation of {@link ClassVisitor} to make asm use within Rules easier. - */ -public abstract class AbstractClassVisitor implements ClassVisitor -{ - - public void visit(int version, int access, String name, String signature, String superName, String[] interfaces) - { - /* Override Ready */ - } - - public AnnotationVisitor visitAnnotation(String desc, boolean visible) - { - /* Override Ready */ - return null; - } - - public void visitAttribute(Attribute attr) - { - /* Override Ready */ - } - - public void visitEnd() - { - /* Override Ready */ - } - - public FieldVisitor visitField(int access, String name, String desc, String signature, Object value) - { - /* Override Ready */ - return null; - } - - public void visitInnerClass(String name, String outerName, String innerName, int access) - { - /* Override Ready */ - } - - public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) - { - /* Override Ready */ - return null; - } - - public void visitOuterClass(String owner, String name, String desc) - { - /* Override Ready */ - } - - public void visitSource(String source, String debug) - { - /* Override Ready */ - } -} diff --git a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/support/PathGlob.java b/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/support/PathGlob.java deleted file mode 100644 index 12dd2e16369..00000000000 --- a/jetty-webapp-verifier/src/main/java/org/eclipse/jetty/webapp/verifier/support/PathGlob.java +++ /dev/null @@ -1,58 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.support; - -public class PathGlob -{ - /** - * @return true if match. - */ - public static boolean match(String pathSpec, String path) throws IllegalArgumentException - { - return match(pathSpec,path,false); - } - - /** - * @return true if match. - */ - public static boolean match(String pathSpec, String path, boolean noDefault) throws IllegalArgumentException - { - char c = pathSpec.charAt(0); - if (c == '/') - { - if (!noDefault && pathSpec.length() == 1 || pathSpec.equals(path)) - return true; - - if (isPathWildcardMatch(pathSpec,path)) - return true; - } - else if (c == '*') - return path.regionMatches(path.length() - pathSpec.length() + 1,pathSpec,1,pathSpec.length() - 1); - return false; - } - - private static boolean isPathWildcardMatch(String pathSpec, String path) - { - // For a spec of "/foo/*" match "/foo" , "/foo/..." but not "/foobar" - int cpl = pathSpec.length() - 2; - if (pathSpec.endsWith("/*") && path.regionMatches(0,pathSpec,0,cpl)) - { - if (path.length() == cpl || '/' == path.charAt(cpl)) - return true; - } - return false; - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/.gitignore b/jetty-webapp-verifier/src/test/artifacts/.gitignore deleted file mode 100644 index bf5aabfefa2..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -target/ -.classpath -.project -.settings/ -*.tar.gz -*.zip -bsh* -jruby* -jython* -groovy* -*.swp diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/pom.xml deleted file mode 100644 index 3d7601f2e1b..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-groovy-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Groovy Lib - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/META-INF/services/javax.script.ScriptEngineFactory b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/META-INF/services/javax.script.ScriptEngineFactory deleted file mode 100644 index 8af8bb9660d..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/META-INF/services/javax.script.ScriptEngineFactory +++ /dev/null @@ -1 +0,0 @@ -org.codehaus.groovy.jsr223.GroovyScriptEngineFactory \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/README.txt deleted file mode 100644 index 906d0a4f50f..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-lib/src/main/resources/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid JAR file, nor contains valid Groovy implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/pom.xml deleted file mode 100644 index 82ecbe4dad0..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/pom.xml +++ /dev/null @@ -1,22 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-groovy-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Groovy Webapp - - - junit - junit - 3.8.1 - test - - - org.eclipse.jetty.tests - dummy-groovy-lib - 1.0-SNAPSHOT - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/README.txt deleted file mode 100644 index f27b3191d90..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid Groovy implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/dummy.groovy b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/dummy.groovy deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/other/lib.groovy b/jetty-webapp-verifier/src/test/artifacts/dummy-groovy-webapp/src/main/webapp/other/lib.groovy deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/pom.xml deleted file mode 100644 index 302fcaf410b..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java11-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.1 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.1 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLib.java deleted file mode 100644 index d9a8203d145..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java11-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/pom.xml deleted file mode 100644 index c2b6cc3872d..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java12-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.2 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.2 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyUpdatedLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyUpdatedLib.java deleted file mode 100644 index 30e35fa1e6e..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyUpdatedLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyUpdatedLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java12-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/pom.xml deleted file mode 100644 index 29683ed739e..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java13-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.3 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.3 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyCurrentLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyCurrentLib.java deleted file mode 100644 index 25f060c490d..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyCurrentLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyCurrentLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java13-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/pom.xml deleted file mode 100644 index f469224ddb7..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java14-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.4 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.4 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyFreshLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyFreshLib.java deleted file mode 100644 index b93f2cfd982..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyFreshLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyFreshLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java14-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/pom.xml deleted file mode 100644 index e12af4a27c4..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java15-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.5 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.5 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLatestLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLatestLib.java deleted file mode 100644 index be05acc114a..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyLatestLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyLatestLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java15-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/pom.xml deleted file mode 100644 index 6ff141d7504..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/pom.xml +++ /dev/null @@ -1,20 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-java16-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java1.6 Lib - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.6 - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyModernLib.java b/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyModernLib.java deleted file mode 100644 index 1e4c0352dcd..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/java/org/eclipse/jetty/testcase/verifier/DummyModernLib.java +++ /dev/null @@ -1,27 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.testcase.verifier; - -/** - * Dummy class for testcase purposes. - */ -public class DummyModernLib -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-java16-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/pom.xml deleted file mode 100644 index c38b9b4035a..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/pom.xml +++ /dev/null @@ -1,84 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-javaversions-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Java Versions Webapp - - - org.eclipse.jetty.tests - dummy-java11-lib - 1.0-SNAPSHOT - - - org.eclipse.jetty.tests - dummy-java12-lib - 1.0-SNAPSHOT - - - org.eclipse.jetty.tests - dummy-java13-lib - 1.0-SNAPSHOT - - - org.eclipse.jetty.tests - dummy-java14-lib - 1.0-SNAPSHOT - - - org.eclipse.jetty.tests - dummy-java15-lib - 1.0-SNAPSHOT - - - org.eclipse.jetty.tests - dummy-java16-lib - 1.0-SNAPSHOT - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - explode-jars-to-classes - process-resources - - unpack-dependencies - - - **/*.class - ${project.build.directory}/${project.artifactId}-${project.version}/WEB-INF/classes - - - - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/README.txt deleted file mode 100644 index ba2e2233228..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-javaversions-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/pom.xml deleted file mode 100644 index 6fec6b3db33..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-jruby-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy JRuby Lib - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/src/main/resources/README.txt deleted file mode 100644 index 73178116f20..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/src/main/resources/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid JAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/src/main/resources/builtin/javasupport.rb b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-lib/src/main/resources/builtin/javasupport.rb deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/pom.xml deleted file mode 100644 index 1f04225a007..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/pom.xml +++ /dev/null @@ -1,22 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-jruby-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy JRuby Webapp - - - junit - junit - 3.8.1 - test - - - org.eclipse.jetty.tests - dummy-jruby-lib - 1.0-SNAPSHOT - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/README.txt deleted file mode 100644 index ba2e2233228..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/example.rb b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/example.rb deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/other/lib.rb b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/other/lib.rb deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/output.rhtml b/jetty-webapp-verifier/src/test/artifacts/dummy-jruby-webapp/src/main/webapp/output.rhtml deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/pom.xml deleted file mode 100644 index 28076c9057d..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-jython-lib - jar - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Jython Lib - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/Version.java b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/Version.java deleted file mode 100644 index bf6af0b796b..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/Version.java +++ /dev/null @@ -1,28 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== - -package org.python; - -/** - * Dummy class for testcase purposes. - */ -public class Version -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/core/JythonInitializer.java b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/core/JythonInitializer.java deleted file mode 100644 index c9f720aa1d1..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/core/JythonInitializer.java +++ /dev/null @@ -1,28 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== - -package org.python.core; - -/** - * Dummy class for testcase purposes. - */ -public class JythonInitializer -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/util/Generic.java b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/util/Generic.java deleted file mode 100644 index b692781f8e6..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/java/org/python/util/Generic.java +++ /dev/null @@ -1,28 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== - -package org.python.util; - -/** - * Dummy class for testcase purposes. - */ -public class Generic -{ - public void dummyTestClassNotIntendedForUse() - { - /* not intended for use - only used for test case purposes */ - } -} diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/resources/README.txt deleted file mode 100644 index bc6accef097..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-lib/src/main/resources/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid JAR file, nor contains valid Jython implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/pom.xml deleted file mode 100644 index c37cae0b537..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/pom.xml +++ /dev/null @@ -1,22 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-jython-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Jython Webapp - - - junit - junit - 3.8.1 - test - - - org.eclipse.jetty.tests - dummy-jython-lib - 1.0-SNAPSHOT - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/README.txt deleted file mode 100644 index ba2e2233228..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/dummy.py b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/dummy.py deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/dummy.pyc b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/dummy.pyc deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/other/lib.py b/jetty-webapp-verifier/src/test/artifacts/dummy-jython-webapp/src/main/webapp/other/lib.py deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/pom.xml deleted file mode 100644 index af7f08ef7c0..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/pom.xml +++ /dev/null @@ -1,17 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-nativeaccess-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Native Access Webapp - - - junit - junit - 3.8.1 - test - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/README.txt deleted file mode 100644 index ba2e2233228..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.exe b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.exe deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.o b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.o deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.so b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/dummy.so deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/executable b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/executable deleted file mode 100755 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.dll b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.dll deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.o b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.o deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.0.5.7 b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.0.5.7 deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.1 b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.1 deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.5 b/jetty-webapp-verifier/src/test/artifacts/dummy-nativeaccess-webapp/src/main/webapp/other/lib.so.5 deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/pom.xml deleted file mode 100644 index 992cccb5e29..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/pom.xml +++ /dev/null @@ -1,84 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-scm-lib - pom - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy SCM Lib - - - - org.apache.maven.plugins - maven-antrun-plugin - - - create-scm-files - generate-resources - - run - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - - - attach-scm-lib - package - - attach-artifact - - - - - ${project.build.directory}/${project.artifactId}-${project.version}.jar - jar - - - - - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/src/main/resources/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/src/main/resources/README.txt deleted file mode 100644 index 62c883903b9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-lib/src/main/resources/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -This dummy lib is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -This JAR file is not for use outside of the /jetty-webapp-verifier/ test cases. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/pom.xml deleted file mode 100644 index f2a20367d62..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/pom.xml +++ /dev/null @@ -1,116 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-scm-webapp - pom - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy SCM Webapp - - - org.eclipse.jetty.tests - dummy-scm-lib - 1.0-SNAPSHOT - - - - ${project.build.directory}/generated-webapp - - - - - org.apache.maven.plugins - maven-antrun-plugin - - - create-scm-files - generate-resources - - run - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - create-war - package - - run - - - - - - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-deps - process-resources - - copy-dependencies - - - ${war_work_dir}/WEB-INF/lib - - - - - - org.codehaus.mojo - build-helper-maven-plugin - - - attach-scm-lib - process-resources - - attach-artifact - - - - - ${project.build.directory}/${project.artifactId}-${project.version}.war - war - - - - - - - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/README.txt deleted file mode 100644 index ba2e2233228..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid JRuby implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-scm-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/pom.xml deleted file mode 100644 index fb11c34596d..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-servlet23-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Servlet 2.3 Webapp - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 8e33e5df0f9..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet23-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Web Application with Servlet 2.3 - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/pom.xml deleted file mode 100644 index 124277c0623..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-servlet24-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Servlet 2.4 Webapp - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 84d45f90325..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet24-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Web Application for Servlet 2.4 - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/pom.xml deleted file mode 100644 index 53f45ba3b9c..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-servlet25-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Servlet 2.5 Webapp - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index d06d132c1c6..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servlet25-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - Web Application for Servlet 2.5 - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/pom.xml deleted file mode 100644 index 60dd7e54cf4..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-servletmixed1-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Servlet Mixed 2.3+2.4 Webapp - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 7380f0f453e..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed1-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - Web Application with Mixed Servlet 2.3+2.4 - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/pom.xml deleted file mode 100644 index 28905a1b9f1..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/pom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-servletmixed2-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Servlet Mixed 2.3+2.5 Webapp - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 655af0b40d0..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-servletmixed2-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - Web Application with Mixed Servlet 2.3+2.5 - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/.gitignore b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/.gitignore deleted file mode 100644 index 8baee4f43cf..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -target/ -.classpath -.project -.settings -*.swp -*.log -*.patch -*.diff diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/pom.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/pom.xml deleted file mode 100644 index 419a4ce698f..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/pom.xml +++ /dev/null @@ -1,17 +0,0 @@ - - 4.0.0 - org.eclipse.jetty.tests - dummy-shellscripts-webapp - war - 1.0-SNAPSHOT - Jetty :: Webapp Verifier :: Dummy Shellscripts Webapp - - - junit - junit - 3.8.1 - test - - - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/README.txt b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/README.txt deleted file mode 100644 index f9b06ce72d7..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/README.txt +++ /dev/null @@ -1,4 +0,0 @@ -This is a webapp is a TEST RESOURCE, used by the jetty project at http://www.eclipse.org/jetty/ - -It is neither a valid WAR file, nor contains valid Shell Script implementations, -in either scripting, source or binary form. diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f9632..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.bat b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.bat deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.cmd b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.cmd deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.sh b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.sh deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.vbs b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/dummy.vbs deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.bat b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.bat deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.cmd b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.cmd deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.sh b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.sh deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.vbs b/jetty-webapp-verifier/src/test/artifacts/dummy-shellscripts-webapp/src/main/webapp/other/lib.vbs deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/jetty-webapp-verifier/src/test/artifacts/pom.xml b/jetty-webapp-verifier/src/test/artifacts/pom.xml deleted file mode 100644 index 2378b4f5d16..00000000000 --- a/jetty-webapp-verifier/src/test/artifacts/pom.xml +++ /dev/null @@ -1,36 +0,0 @@ - - 4.0.0 - - org.eclipse.jetty - jetty-project - 7.0.0.RC3-SNAPSHOT - - org.eclipse.jetty.tests - jetty-webapp-verifier-artifacts - Jetty :: Webapp Verifier :: Artifacts Parent - pom - - dummy-jruby-lib - dummy-jython-lib - dummy-groovy-lib - dummy-jruby-webapp - dummy-jython-webapp - dummy-groovy-webapp - dummy-shellscripts-webapp - dummy-nativeaccess-webapp - dummy-java11-lib - dummy-java12-lib - dummy-java13-lib - dummy-java14-lib - dummy-java15-lib - dummy-java16-lib - dummy-javaversions-webapp - dummy-scm-lib - dummy-scm-webapp - dummy-servlet23-webapp - dummy-servlet24-webapp - dummy-servlet25-webapp - dummy-servletmixed1-webapp - dummy-servletmixed2-webapp - - diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/AbstractTestWebappVerifier.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/AbstractTestWebappVerifier.java deleted file mode 100644 index 62dd0fa258a..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/AbstractTestWebappVerifier.java +++ /dev/null @@ -1,47 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; - -import junit.framework.TestCase; - -import org.eclipse.jetty.util.IO; - -public class AbstractTestWebappVerifier extends TestCase -{ - protected File getTestWorkDir() - { - File workDir = MavenTestingUtils.toTargetFile("test-work-dir"); - if (!workDir.exists()) - { - workDir.mkdirs(); - } - File testSpecificDir = new File(workDir,this.getClass().getSimpleName() + "_" + getName()); - if (testSpecificDir.exists()) - { - IO.delete(testSpecificDir); - } - testSpecificDir.mkdirs(); - return testSpecificDir; - } - - protected RuleSet loadRuleSet(String name) throws Exception - { - File xmlFile = MavenTestingUtils.getTestResourceFile(name); - return RuleSet.load(xmlFile.toURL()); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/CountingRule.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/CountingRule.java deleted file mode 100644 index a9f055a691d..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/CountingRule.java +++ /dev/null @@ -1,126 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.util.jar.JarFile; -import java.util.zip.ZipFile; - -public class CountingRule extends AbstractRule -{ - public int countWebappStart = 0; - public int countDirStart = 0; - public int countFile = 0; - public int countDirEnd = 0; - public int countWebInfClassesStart = 0; - public int countWebInfClass = 0; - public int countWebInfClassResource = 0; - public int countWebInfClassesEnd = 0; - public int countWebInfLibStart = 0; - public int countWebInfLibJar = 0; - public int countWebInfLibZip = 0; - public int countWebInfLibEnd = 0; - public int countWebappEnd = 0; - - public String getDescription() - { - return "TestCase only rule, that counts hits to visitors"; - } - - public String getName() - { - return "test-counting"; - } - - @Override - public void visitDirectoryEnd(String path, File dir) - { - countDirEnd++; - } - - @Override - public void visitDirectoryStart(String path, File dir) - { - countDirStart++; - } - - @Override - public void visitFile(String path, File dir, File file) - { - countFile++; - } - - @Override - public void visitWebappEnd(String path, File dir) - { - countWebappEnd++; - } - - @Override - public void visitWebappStart(String path, File dir) - { - super.visitWebappStart(path,dir); - countWebappStart++; - } - - @Override - public void visitWebInfClass(String path, String className, File classFile) - { - countWebInfClass++; - } - - @Override - public void visitWebInfClassesEnd(String path, File dir) - { - countWebInfClassesEnd++; - } - - @Override - public void visitWebInfClassesStart(String path, File dir) - { - countWebInfClassesStart++; - } - - @Override - public void visitWebInfClassResource(String path, String resourcePath, File resourceFile) - { - countWebInfClassResource++; - } - - @Override - public void visitWebInfLibEnd(String path, File dir) - { - countWebInfLibEnd++; - } - - @Override - public void visitWebInfLibJar(String path, File archive, JarFile jar) - { - countWebInfLibJar++; - } - - @Override - public void visitWebInfLibStart(String path, File dir) - { - countWebInfLibStart++; - } - - @Override - public void visitWebInfLibZip(String path, File archive, ZipFile zip) - { - countWebInfLibZip++; - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/MavenTestingUtils.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/MavenTestingUtils.java deleted file mode 100644 index 6691f717e43..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/MavenTestingUtils.java +++ /dev/null @@ -1,166 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; -import java.io.FileReader; -import java.io.IOException; - -import org.eclipse.jetty.util.IO; - -/** - * Common utility methods for working with JUnit tests cases in a maven friendly way. - */ -public class MavenTestingUtils -{ - private static File basedir; - private static File testResourcesDir; - private static File targetDir; - - public static File getBasedir() - { - if (basedir == null) - { - String cwd = System.getProperty("basedir"); - - if (cwd == null) - { - cwd = System.getProperty("user.dir"); - } - - basedir = new File(cwd); - } - - return basedir; - } - - /** - * Get the directory to the /target directory for this project. - * - * @return the directory path to the target directory. - */ - public static File getTargetDir() - { - if (targetDir == null) - { - targetDir = new File(basedir,"target"); - PathAssert.assertDirExists("Target Dir",targetDir); - } - return targetDir; - } - - /** - * Get a file from the src/test/resource directory. - * - * @param name - * the name of the path to get (it must exist as a file) - * @return the file in src/test/resource - */ - public static File getTestResourceFile(String name) - { - File file = new File(getTestResourcesDir(),name); - PathAssert.assertFileExists("Test Resource File",file); - return file; - } - - /** - * Get a dir from the src/test/resource directory. - * - * @param name - * the name of the path to get (it must exist as a dir) - * @return the dir in src/test/resource - */ - public static File getTestResourceDir(String name) - { - File dir = new File(getTestResourcesDir(),name); - PathAssert.assertDirExists("Test Resource Dir",dir); - return dir; - } - - /** - * Get a path resource (File or Dir) from the src/test/resource directory. - * - * @param name - * the name of the path to get (it must exist) - * @return the path in src/test/resource - */ - public static File getTestResourcePath(String name) - { - File path = new File(getTestResourcesDir(),name); - PathAssert.assertExists("Test Resource Path",path); - return path; - } - - /** - * Get the directory to the src/test/resource directory - * - * @return the directory {@link File} to the src/test/resources directory - */ - public static File getTestResourcesDir() - { - if (testResourcesDir == null) - { - testResourcesDir = new File(basedir,"src/test/resources".replace("/",File.separator)); - PathAssert.assertDirExists("Test Resources Dir",testResourcesDir); - } - return testResourcesDir; - } - - /** - * Create a {@link File} object for a path in the /target directory. - * - * @param path - * the path desired, no validation of existence is performed. - * @return the File to the path. - */ - public static File toTargetFile(String path) - { - return new File(getTargetDir(),path.replace("/",File.separator)); - } - - /** - * Read the contents of a file into a String and return it. - * - * @param file - * the file to read. - * @return the contents of the file. - * @throws IOException - * if unable to read the file. - */ - public static String readToString(File file) throws IOException - { - FileReader reader = null; - try - { - reader = new FileReader(file); - return IO.toString(reader); - } - finally - { - IO.close(reader); - } - } - - public static File toTargetTestingDir() - { - File dir = new File(getTargetDir(),"testing"); - if (!dir.exists()) - { - dir.mkdirs(); - } - return dir; - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/PathAssert.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/PathAssert.java deleted file mode 100644 index ff3012bc930..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/PathAssert.java +++ /dev/null @@ -1,40 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.File; - -import junit.framework.Assert; - -public class PathAssert -{ - public static void assertDirExists(String msg, File path) - { - assertExists(msg,path); - Assert.assertTrue(msg + " path should be a Dir : " + path.getAbsolutePath(),path.isDirectory()); - } - - public static void assertFileExists(String msg, File path) - { - assertExists(msg,path); - Assert.assertTrue(msg + " path should be a File : " + path.getAbsolutePath(),path.isFile()); - } - - public static void assertExists(String msg, File path) - { - Assert.assertTrue(msg + " path should exist: " + path.getAbsolutePath(),path.exists()); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssert.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssert.java deleted file mode 100644 index 5b9f25ba33f..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssert.java +++ /dev/null @@ -1,184 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; -import java.io.IOException; -import java.net.URI; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import junit.framework.Assert; - -import org.eclipse.jetty.util.IO; - -/** - * Rule based assertions. - */ -public class RuleAssert -{ - private static Pattern expectedViolationPattern; - - /** - *

- * Perform a static Rule assertion. - *

- * - *

- * You will need the following files. - *

- * - *
    - *
  1. src/test/resources/${prefix}.setup.txt - contains 1 line, which is the src/test/resources - * relative path to the webapp you want to test, (it can be a WAR file, or an exploded webapp directory
  2. - * - *
  3. src/test/resources/${prefix}.config.xml - contains an XMLConfiguration suitable XML file for - * loading into a RuleSet. Represents the configuration that will be used for this test.
  4. - * - *
  5. src/test/resources/${prefix}.expectations.txt - contains a list of expected Violations (1 - * violation per line), with the expected values pipe "|" delimited. Example: pattern is - * "${severity}|${path}|${detail}", where a representative line - * "ERROR|/WEB-INF|Missing required web.xml" would mean a violation of type {@link Severity#ERROR}, - * with path "/WEB-INF", and detail "Missing required web.xml"
  6. - *
- * - * @param prefix - * the prefix of the integration files in src/test/resources that you want to use. - * @throws Exception - */ - public static void assertIntegration(String prefix) throws Exception - { - // Load the 3 integration files. - File setupFile = MavenTestingUtils.getTestResourceFile(prefix + ".setup.txt"); - File configFile = MavenTestingUtils.getTestResourceFile(prefix + ".config.xml"); - File expectationFile = MavenTestingUtils.getTestResourceFile(prefix + ".expectations.txt"); - - // Establish Webapp to use - String webappName = MavenTestingUtils.readToString(setupFile).trim(); - File webappPath = MavenTestingUtils.getTestResourcePath(webappName); - URI webappURI = webappPath.toURI(); - - // Load RuleSet configuration - RuleSet ruleset = RuleSet.load(configFile); - - // Run Verification - WebappVerifier verifier = ruleset.createWebappVerifier(webappURI); - verifier.setWorkDir(MavenTestingUtils.toTargetTestingDir()); - verifier.visitAll(); - - // Compare violations - assertViolations(loadExpectedViolations(expectationFile),verifier.getViolations()); - } - - public static void assertViolations(Collection expectedColl, Collection actualColl) - { - List actualViolations = new ArrayList(actualColl); - List expectedViolations = new ArrayList(expectedColl); - - Collections.sort(actualViolations,ViolationComparator.getInstance()); - Collections.sort(expectedViolations,ViolationComparator.getInstance()); - - // Compare expected vs actual - if (expectedViolations.size() != actualViolations.size()) - { - dumpViolations("Expected",expectedViolations); - dumpViolations("Actual",actualViolations); - Assert.assertEquals("Violation count",expectedViolations.size(),actualViolations.size()); - } - - for (int i = 0, n = expectedViolations.size(); i < n; i++) - { - Violation expected = expectedViolations.get(i); - Violation actual = actualViolations.get(i); - - Assert.assertEquals("Violation[" + i + "].path",expected.getPath(),actual.getPath()); - Assert.assertEquals("Violation[" + i + "].detail",expected.getDetail(),actual.getDetail()); - Assert.assertEquals("Violation[" + i + "].severity",expected.getSeverity(),actual.getSeverity()); - // TODO: add check on Violation.throwable - // TODO: add check on Violation.verifierId - // TODO: add check on Violation.verifierClass - } - } - - public static void dumpViolations(String msg, Collection violations) - { - System.out.println(); - System.out.printf("/* Violations Dump: %s */%n",msg); - for (Violation violation : violations) - { - System.out.println(violation.toDelimString()); - } - } - - public static Collection loadExpectedViolations(File expectationFile) throws IOException - { - FileReader reader = null; - BufferedReader buf = null; - try - { - List ret = new ArrayList(); - reader = new FileReader(expectationFile); - buf = new BufferedReader(reader); - - String line; - - while ((line = buf.readLine()) != null) - { - if (line.charAt(0) == '#') - { - // a comment. - continue; - } - - // Parse line - Violation violation = parseViolation(line); - - Assert.assertNotNull("Unable to parse expected violation line: " + line,violation); - - // Add to list - ret.add(violation); - } - - return ret; - } - finally - { - IO.close(buf); - IO.close(reader); - } - } - - protected static Violation parseViolation(String line) - { - expectedViolationPattern = Pattern.compile("^([^|]*)\\|([^|]*)\\|(.*)$"); - Matcher mat = expectedViolationPattern.matcher(line); - if (mat.matches()) - { - Severity severity = Severity.parse(mat.group(1)); - String path = mat.group(2); - String detail = mat.group(3); - return new Violation(severity,path,detail); - } - else - return null; - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssertTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssertTest.java deleted file mode 100644 index cc3d837bb18..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleAssertTest.java +++ /dev/null @@ -1,33 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import junit.framework.TestCase; - -public class RuleAssertTest extends TestCase -{ - public void testParseLine() - { - Violation v; - - v = RuleAssert.parseViolation("ERROR|/WEB-INF|Missing web.xml"); - - assertNotNull("Verifier should not be null",v); - assertEquals("Verifier.severity",Severity.ERROR,v.getSeverity()); - assertEquals("Verifier.path","/WEB-INF",v.getPath()); - assertEquals("Verifier.detail","Missing web.xml",v.getDetail()); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleSetTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleSetTest.java deleted file mode 100644 index 5c19012f12f..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/RuleSetTest.java +++ /dev/null @@ -1,36 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import org.eclipse.jetty.webapp.verifier.rules.ForbiddenContentsRule; -import org.eclipse.jetty.webapp.verifier.rules.RequiredContentsRule; - -public class RuleSetTest extends AbstractTestWebappVerifier -{ - public void testLoad() throws Exception - { - RuleSet suite = loadRuleSet("basic-ruleset.xml"); - assertNotNull("Should have a valid RuleSet.",suite); - - assertNotNull("verifier list should not be null",suite.getRules()); - assertEquals("Should have 2 verifier",2,suite.getRules().size()); - - Rule verifier = suite.getRules().get(0); - assertEquals("Verifier[0]",ForbiddenContentsRule.class.getName(),verifier.getClass().getName()); - verifier = suite.getRules().get(1); - assertEquals("Verifier[1]",RequiredContentsRule.class.getName(),verifier.getClass().getName()); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/WebappVerifierTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/WebappVerifierTest.java deleted file mode 100644 index a5301492a31..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/WebappVerifierTest.java +++ /dev/null @@ -1,63 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier; - -import java.util.Collection; - -public class WebappVerifierTest extends AbstractTestWebappVerifier -{ - public void testVerifierVisitation() throws Exception - { - CountingRule counts = new CountingRule(); - - // Create Webapp Specific Verifier from Verifier Suite - WebappVerifier verifier = new WebappVerifier(MavenTestingUtils.toTargetFile("war-files/test-webapp-logging-java.war").toURI()); - verifier.addRule(counts); - verifier.setWorkDir(getTestWorkDir()); - - // Run the verification. - verifier.visitAll(); - - // Collect the violations - Collection violations = verifier.getViolations(); - assertNotNull("Should never have a null set of Violations",violations); - assertEquals("No violations caused",0,violations.size()); - - // Ensure each visitor was visited according to real contents of WAR - assertEquals("Counts.webappStart",1,counts.countWebappStart); - assertEquals("Counts.countWebappEnd",1,counts.countWebappEnd); - - // Visits in Directory - assertEquals("Counts.countDirStart",12,counts.countDirStart); - assertEquals("Counts.countFile",6,counts.countFile); - assertEquals("Counts.countDirEnd",12,counts.countDirEnd); - assertEquals("Counts.countDir (Start == End)",counts.countDirStart,counts.countDirEnd); - - // Visits in WEB-INF/classes - assertEquals("Counts.countWebInfClassesStart",1,counts.countWebInfClassesStart); - assertEquals("Counts.countWebInfClass",1,counts.countWebInfClass); - assertEquals("Counts.countWebInfClassResource",1,counts.countWebInfClassResource); - assertEquals("Counts.countWebInfClassesEnd",1,counts.countWebInfClassesEnd); - assertEquals("Counts.countWebInfClasses (Start == End)",counts.countWebInfClassesStart,counts.countWebInfClassesEnd); - - // Visits in WEB-INF/lib - assertEquals("Counts.countWebInfLibStart",0,counts.countWebInfLibStart); - assertEquals("Counts.countWebInfLibJar",0,counts.countWebInfLibJar); - assertEquals("Counts.countWebInfLibZip",0,counts.countWebInfLibZip); - assertEquals("Counts.countWebInfLibEnd",0,counts.countWebInfLibEnd); - assertEquals("Counts.countWebInfLib (Start == End)",counts.countWebInfLibStart,counts.countWebInfLibEnd); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRuleTest.java deleted file mode 100644 index a85560de4cc..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JarSignatureRuleTest.java +++ /dev/null @@ -1,38 +0,0 @@ -// ======================================================================== -// Copyright (c) 2009-2009 Mort Bay Consulting Pty. Ltd. -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// The Apache License v2.0 is available at -// http://www.opensource.org/licenses/apache2.0.php -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import org.eclipse.jetty.webapp.verifier.AbstractTestWebappVerifier; -import org.eclipse.jetty.webapp.verifier.MavenTestingUtils; -import org.eclipse.jetty.webapp.verifier.WebappVerifier; - -/** - * Tests against {@link JarSignatureRule} - */ -public class JarSignatureRuleTest extends AbstractTestWebappVerifier -{ - public void testSimpleVerify() throws Exception - { - JarSignatureRule signed = new JarSignatureRule(); - - // Create Webapp Specific Verifier from Verifier Suite - WebappVerifier verifier = new WebappVerifier(MavenTestingUtils.toTargetFile("test-classes/webapps/signed-jar-test-webapp.war").toURI()); - verifier.addRule( signed ); - verifier.setWorkDir( getTestWorkDir() ); - - // Run the verification. - verifier.visitAll(); - - assertTrue( verifier.getViolations().size() == 0 ); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRuleTest.java deleted file mode 100644 index 81050f6b051..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/JavaSupportLevelRuleTest.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.eclipse.jetty.webapp.verifier.rules; - -import junit.framework.TestCase; - -import org.eclipse.jetty.webapp.verifier.RuleAssert; - -public class JavaSupportLevelRuleTest extends TestCase -{ - public void testJava15() throws Exception - { - RuleAssert.assertIntegration("java_level_1.5"); - } - - public void testJava14() throws Exception - { - RuleAssert.assertIntegration("java_level_1.4"); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRuleTest.java deleted file mode 100644 index 87a4891c8f4..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoNativeRuleTest.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.eclipse.jetty.webapp.verifier.rules; - -import junit.framework.TestCase; - -import org.eclipse.jetty.webapp.verifier.RuleAssert; - -public class NoNativeRuleTest extends TestCase -{ - public void testNoNative() throws Exception - { - RuleAssert.assertIntegration("no_native"); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRuleTest.java deleted file mode 100644 index c6c8bf32ec6..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoScriptingRuleTest.java +++ /dev/null @@ -1,42 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import org.eclipse.jetty.webapp.verifier.AbstractTestWebappVerifier; -import org.eclipse.jetty.webapp.verifier.RuleAssert; - -public class NoScriptingRuleTest extends AbstractTestWebappVerifier -{ - public void testJRubyConfiguration() throws Exception - { - RuleAssert.assertIntegration("no_scripting_jruby"); - } - - public void testJythonConfiguration() throws Exception - { - RuleAssert.assertIntegration("no_scripting_jython"); - } - - public void testGroovyConfiguration() throws Exception - { - RuleAssert.assertIntegration("no_scripting_groovy"); - } - - public void testShellConfiguration() throws Exception - { - RuleAssert.assertIntegration("no_scripting_shell"); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRuleTest.java deleted file mode 100644 index ddc387a50ca..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/NoSourceControlRuleTest.java +++ /dev/null @@ -1,31 +0,0 @@ -// ======================================================================== -// Copyright (c) Webtide LLC -// ------------------------------------------------------------------------ -// All rights reserved. This program and the accompanying materials -// are made available under the terms of the Eclipse Public License v1.0 -// and Apache License v2.0 which accompanies this distribution. -// -// The Eclipse Public License is available at -// http://www.eclipse.org/legal/epl-v10.html -// -// The Apache License v2.0 is available at -// http://www.apache.org/licenses/LICENSE-2.0.txt -// -// You may elect to redistribute this code under either of these licenses. -// ======================================================================== -package org.eclipse.jetty.webapp.verifier.rules; - -import junit.framework.TestCase; - -import org.eclipse.jetty.webapp.verifier.RuleAssert; - -/** - * NoSourceControlRuleTest - */ -public class NoSourceControlRuleTest extends TestCase -{ - public void testNoScm() throws Exception - { - RuleAssert.assertIntegration("no_scm"); - } -} diff --git a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRuleTest.java b/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRuleTest.java deleted file mode 100644 index 621abbcee7c..00000000000 --- a/jetty-webapp-verifier/src/test/java/org/eclipse/jetty/webapp/verifier/rules/ServletSupportLevelRuleTest.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.eclipse.jetty.webapp.verifier.rules; - -import junit.framework.TestCase; - -import org.eclipse.jetty.webapp.verifier.RuleAssert; - -public class ServletSupportLevelRuleTest extends TestCase -{ - public void testServlet23Rule() throws Exception - { - RuleAssert.assertIntegration("servlet_level_2.3"); - } - - public void testServlet24Rule() throws Exception - { - RuleAssert.assertIntegration("servlet_level_2.4"); - } - - public void testServlet25Rule() throws Exception - { - RuleAssert.assertIntegration("servlet_level_2.5"); - } - - public void testServletMixed23n24Rule() throws Exception - { - RuleAssert.assertIntegration("servlet_level_mixed_2.3_2.4"); - } - - public void testServletMixed23n25Rule() throws Exception - { - RuleAssert.assertIntegration("servlet_level_mixed_2.3_2.5"); - } -} diff --git a/jetty-webapp-verifier/src/test/resources/basic-ruleset.xml b/jetty-webapp-verifier/src/test/resources/basic-ruleset.xml deleted file mode 100644 index 2ac16f95f35..00000000000 --- a/jetty-webapp-verifier/src/test/resources/basic-ruleset.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - *.jsp - - - - - - - /copyright.jsp - - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/content-verifier/WEB-INF/web.xml b/jetty-webapp-verifier/src/test/resources/content-verifier/WEB-INF/web.xml deleted file mode 100644 index 12bbf745ce3..00000000000 --- a/jetty-webapp-verifier/src/test/resources/content-verifier/WEB-INF/web.xml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.4.config.xml b/jetty-webapp-verifier/src/test/resources/java_level_1.4.config.xml deleted file mode 100644 index aa26dd24aa7..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.4.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 1.4 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.4.expectations.txt b/jetty-webapp-verifier/src/test/resources/java_level_1.4.expectations.txt deleted file mode 100644 index 432b2441296..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.4.expectations.txt +++ /dev/null @@ -1,4 +0,0 @@ -ERROR|WEB-INF/classes/org/eclipse/jetty/testcase/verifier/DummyLatestLib.class|Class is compiled for java version [1.5] which is over supported java version [1.4] -ERROR|WEB-INF/classes/org/eclipse/jetty/testcase/verifier/DummyModernLib.class|Class is compiled for java version [1.6] which is over supported java version [1.4] -ERROR|WEB-INF/lib/dummy-java15-lib-1.0-SNAPSHOT.jar!/org/eclipse/jetty/testcase/verifier/DummyLatestLib.class|Class is compiled for java version [1.5] which is over supported java version [1.4] -ERROR|WEB-INF/lib/dummy-java16-lib-1.0-SNAPSHOT.jar!/org/eclipse/jetty/testcase/verifier/DummyModernLib.class|Class is compiled for java version [1.6] which is over supported java version [1.4] diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.4.setup.txt b/jetty-webapp-verifier/src/test/resources/java_level_1.4.setup.txt deleted file mode 100644 index db98daf3ecf..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.4.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-javaversions-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.5.config.xml b/jetty-webapp-verifier/src/test/resources/java_level_1.5.config.xml deleted file mode 100644 index 5f80d29608c..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.5.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 1.5 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.5.expectations.txt b/jetty-webapp-verifier/src/test/resources/java_level_1.5.expectations.txt deleted file mode 100644 index c119c45715c..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.5.expectations.txt +++ /dev/null @@ -1,2 +0,0 @@ -ERROR|WEB-INF/classes/org/eclipse/jetty/testcase/verifier/DummyModernLib.class|Class is compiled for java version [1.6] which is over supported java version [1.5] -ERROR|WEB-INF/lib/dummy-java16-lib-1.0-SNAPSHOT.jar!/org/eclipse/jetty/testcase/verifier/DummyModernLib.class|Class is compiled for java version [1.6] which is over supported java version [1.5] diff --git a/jetty-webapp-verifier/src/test/resources/java_level_1.5.setup.txt b/jetty-webapp-verifier/src/test/resources/java_level_1.5.setup.txt deleted file mode 100644 index db98daf3ecf..00000000000 --- a/jetty-webapp-verifier/src/test/resources/java_level_1.5.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-javaversions-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_native.config.xml b/jetty-webapp-verifier/src/test/resources/no_native.config.xml deleted file mode 100644 index 47d49fc9c70..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_native.config.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_native.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_native.expectations.txt deleted file mode 100644 index b187c8eeab7..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_native.expectations.txt +++ /dev/null @@ -1,6 +0,0 @@ -ERROR|dummy.exe|Native code is forbidden -ERROR|dummy.o|Native code is forbidden -ERROR|dummy.so|Native code is forbidden -ERROR|other/lib.dll|Native code is forbidden -ERROR|other/lib.o|Native code is forbidden -ERROR|other/lib.so|Native code is forbidden diff --git a/jetty-webapp-verifier/src/test/resources/no_native.setup.txt b/jetty-webapp-verifier/src/test/resources/no_native.setup.txt deleted file mode 100644 index 543f1ae3740..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_native.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-nativeaccess-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scm.config.xml b/jetty-webapp-verifier/src/test/resources/no_scm.config.xml deleted file mode 100644 index af006caf35e..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scm.config.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scm.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_scm.expectations.txt deleted file mode 100644 index 0b0f2c893b6..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scm.expectations.txt +++ /dev/null @@ -1,36 +0,0 @@ -ERROR|_darcs/|Darcs Source Control directories are not allowed -ERROR|_svn/|Subversion Source Control directories are not allowed -ERROR|.arch-ids/|Arch Source Control directories are not allowed -ERROR|.bzr/|Bazaar Source Control directories are not allowed -ERROR|.cvsignore|CVS Source Control file are not allowed -ERROR|.darcsrepo/|Darcs Source Control directories are not allowed -ERROR|.darcs-temp-mail|Darcs Source Control file are not allowed -ERROR|.git/|Git Source Control directories are not allowed -ERROR|.gitignore|Git Source Control file are not allowed -ERROR|.hg/|Mercurial Source Control directories are not allowed -ERROR|.MySCMServerInfo|SurroundSCM Source Control file are not allowed -ERROR|.svn/|Subversion Source Control directories are not allowed -ERROR|BitKeeper/|BitKeeper Source Control directories are not allowed -ERROR|ChangeSet/|BitKeeper Source Control directories are not allowed -ERROR|CVS/|CVS Source Control directories are not allowed -ERROR|RCS/|RCS Source Control directories are not allowed -ERROR|SCCS/|SCCS Source Control directories are not allowed -ERROR|vssver.scc|Visual SourceSafe Source Control file are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/_darcs/|Darcs Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/_svn/|Subversion Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.arch-ids/|Arch Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.bzr/|Bazaar Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.cvsignore|CVS Source Control file are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.darcsrepo/|Darcs Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.darcs-temp-mail|Darcs Source Control file are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.git/|Git Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.gitignore|Git Source Control file are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.hg/|Mercurial Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.MySCMServerInfo|SurroundSCM Source Control file are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/.svn/|Subversion Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/BitKeeper/|BitKeeper Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/ChangeSet/|BitKeeper Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/CVS/|CVS Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/RCS/|RCS Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/SCCS/|SCCS Source Control directories are not allowed -ERROR|WEB-INF/lib/dummy-scm-lib-1.0-SNAPSHOT.jar!/vssver.scc|Visual SourceSafe Source Control file are not allowed diff --git a/jetty-webapp-verifier/src/test/resources/no_scm.setup.txt b/jetty-webapp-verifier/src/test/resources/no_scm.setup.txt deleted file mode 100644 index bc01807d23c..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scm.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-scm-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.config.xml b/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.config.xml deleted file mode 100644 index 4986faf70b1..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - false - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.expectations.txt deleted file mode 100644 index 5a86d668a6d..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.expectations.txt +++ /dev/null @@ -1,4 +0,0 @@ -ERROR|dummy.groovy|Groovy scripting not allowed -ERROR|other/lib.groovy|Groovy scripting not allowed -ERROR|WEB-INF/lib/dummy-groovy-lib-1.0-SNAPSHOT.jar!/org/codehaus/groovy/GroovyException.class|Groovy dependencies are not allowed -ERROR|WEB-INF/lib/dummy-groovy-lib-1.0-SNAPSHOT.jar!/org/codehaus/groovy/jsr223/GroovyScriptEngineFactory.class|Groovy dependencies are not allowed diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.setup.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.setup.txt deleted file mode 100644 index f631249a77d..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_groovy.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-groovy-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.config.xml b/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.config.xml deleted file mode 100644 index 882f5c2a308..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - false - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.expectations.txt deleted file mode 100644 index 92678886a36..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.expectations.txt +++ /dev/null @@ -1,6 +0,0 @@ -ERROR|example.rb|JRuby scripting not allowed -ERROR|other/lib.rb|JRuby scripting not allowed -ERROR|output.rhtml|JRuby scripting not allowed -ERROR|WEB-INF/lib/dummy-jruby-lib-1.0-SNAPSHOT.jar!/org/jruby/javasupport/JavaArray.class|JRuby dependencies are not allowed -ERROR|WEB-INF/lib/dummy-jruby-lib-1.0-SNAPSHOT.jar!/org/jruby/Ruby.class|JRuby dependencies are not allowed -ERROR|WEB-INF/lib/dummy-jruby-lib-1.0-SNAPSHOT.jar!/org/jruby/runtime/RubyEvent.class|JRuby dependencies are not allowed \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.setup.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.setup.txt deleted file mode 100644 index 793c6a4e9e6..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jruby.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-jruby-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.config.xml b/jetty-webapp-verifier/src/test/resources/no_scripting_jython.config.xml deleted file mode 100644 index 83d5aad8b6b..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - false - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_jython.expectations.txt deleted file mode 100644 index c6823a168a6..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.expectations.txt +++ /dev/null @@ -1,6 +0,0 @@ -ERROR|dummy.py|Jython and Python scripting not allowed -ERROR|dummy.pyc|Jython and Python scripting not allowed -ERROR|other/lib.py|Jython and Python scripting not allowed -ERROR|WEB-INF/lib/dummy-jython-lib-1.0-SNAPSHOT.jar!/org/python/util/Generic.class|Jython dependencies are not allowed -ERROR|WEB-INF/lib/dummy-jython-lib-1.0-SNAPSHOT.jar!/org/python/Version.class|Jython dependencies are not allowed -ERROR|WEB-INF/lib/dummy-jython-lib-1.0-SNAPSHOT.jar!/org/python/core/JythonInitializer.class|Jython dependencies are not allowed diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.setup.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_jython.setup.txt deleted file mode 100644 index 4b20b76b0d6..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_jython.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-jython-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.config.xml b/jetty-webapp-verifier/src/test/resources/no_scripting_shell.config.xml deleted file mode 100644 index f97ea8bcdf1..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - false - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.expectations.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_shell.expectations.txt deleted file mode 100644 index 462b265c087..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.expectations.txt +++ /dev/null @@ -1,8 +0,0 @@ -ERROR|dummy.bat|Shell scripting not allowed -ERROR|dummy.cmd|Shell scripting not allowed -ERROR|dummy.sh|Shell scripting not allowed -ERROR|dummy.vbs|Shell scripting not allowed -ERROR|other/lib.bat|Shell scripting not allowed -ERROR|other/lib.cmd|Shell scripting not allowed -ERROR|other/lib.sh|Shell scripting not allowed -ERROR|other/lib.vbs|Shell scripting not allowed diff --git a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.setup.txt b/jetty-webapp-verifier/src/test/resources/no_scripting_shell.setup.txt deleted file mode 100644 index e180fb91db1..00000000000 --- a/jetty-webapp-verifier/src/test/resources/no_scripting_shell.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-shellscripts-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.config.xml b/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.config.xml deleted file mode 100644 index 91b35b25245..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 2.1 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.expectations.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.expectations.txt deleted file mode 100644 index 20af16893fc..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.expectations.txt +++ /dev/null @@ -1,2 +0,0 @@ -ERROR|target/testing/dummy-servlet23-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE Public ID is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servlet23-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE System ID is over the configured supported servlet version 2.1 diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.setup.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.setup.txt deleted file mode 100644 index 97453d84b28..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.3.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-servlet23-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.config.xml b/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.config.xml deleted file mode 100644 index 91b35b25245..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 2.1 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.expectations.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.expectations.txt deleted file mode 100644 index 07a9e3f6661..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.expectations.txt +++ /dev/null @@ -1,3 +0,0 @@ -ERROR|target/testing/dummy-servlet24-webapp/WEB-INF/web.xml|Specified servlet version 2.4 of Schema is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servlet24-webapp/WEB-INF/web.xml|Specified servlet version 2.4 of version attribute is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servlet24-webapp/WEB-INF/web.xml|Specified servlet version 2.4 of XML Namespace is over the configured supported servlet version 2.1 diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.setup.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.setup.txt deleted file mode 100644 index 5996e9b7e24..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.4.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-servlet24-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.config.xml b/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.config.xml deleted file mode 100644 index 196f3e72336..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 2.4 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.expectations.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.expectations.txt deleted file mode 100644 index 78fa619543c..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.expectations.txt +++ /dev/null @@ -1,3 +0,0 @@ -ERROR|target/testing/dummy-servlet25-webapp/WEB-INF/web.xml|Specified servlet version 2.5 of Schema is over the configured supported servlet version 2.4 -ERROR|target/testing/dummy-servlet25-webapp/WEB-INF/web.xml|Specified servlet version 2.5 of version attribute is over the configured supported servlet version 2.4 -ERROR|target/testing/dummy-servlet25-webapp/WEB-INF/web.xml|Specified servlet version 2.5 of XML Namespace is over the configured supported servlet version 2.4 diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.setup.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.setup.txt deleted file mode 100644 index 66caaf0dfe0..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_2.5.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-servlet25-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.config.xml b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.config.xml deleted file mode 100644 index 91b35b25245..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 2.1 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.expectations.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.expectations.txt deleted file mode 100644 index a9da5ebb15f..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.expectations.txt +++ /dev/null @@ -1,14 +0,0 @@ -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Found 2 versions defined [2.3, 2.4], expected 1 -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Invalid schemaLocation value -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE Public ID is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE System ID is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Specified servlet version 2.4 of version attribute is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|Specified servlet version 2.4 of XML Namespace is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE Public ID conflicts with version 2.4 of version attribute -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE Public ID conflicts with version 2.4 of XML Namespace -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE System ID conflicts with version 2.4 of version attribute -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE System ID conflicts with version 2.4 of XML Namespace -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.4 of version attribute conflicts with version 2.3 of DOCTYPE Public ID -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.4 of version attribute conflicts with version 2.3 of DOCTYPE System ID -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.4 of XML Namespace conflicts with version 2.3 of DOCTYPE Public ID -ERROR|target/testing/dummy-servletmixed1-webapp/WEB-INF/web.xml|version 2.4 of XML Namespace conflicts with version 2.3 of DOCTYPE System ID diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.setup.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.setup.txt deleted file mode 100644 index b473c59a4e4..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.4.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-servletmixed1-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.config.xml b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.config.xml deleted file mode 100644 index 91b35b25245..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.config.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - 2.1 - - - - - \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.expectations.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.expectations.txt deleted file mode 100644 index d2326c321ca..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.expectations.txt +++ /dev/null @@ -1,15 +0,0 @@ -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Attribute must exist with a valid value -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Attribute must exist with a valid value -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Found 2 versions defined [2.3, 2.5], expected 1 -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE Public ID is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Specified servlet version 2.3 of DOCTYPE System ID is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Specified servlet version 2.5 of version attribute is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|Specified servlet version 2.5 of XML Namespace is over the configured supported servlet version 2.1 -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE Public ID conflicts with version 2.5 of version attribute -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE Public ID conflicts with version 2.5 of XML Namespace -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE System ID conflicts with version 2.5 of version attribute -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.3 of DOCTYPE System ID conflicts with version 2.5 of XML Namespace -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.5 of version attribute conflicts with version 2.3 of DOCTYPE Public ID -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.5 of version attribute conflicts with version 2.3 of DOCTYPE System ID -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.5 of XML Namespace conflicts with version 2.3 of DOCTYPE Public ID -ERROR|target/testing/dummy-servletmixed2-webapp/WEB-INF/web.xml|version 2.5 of XML Namespace conflicts with version 2.3 of DOCTYPE System ID diff --git a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.setup.txt b/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.setup.txt deleted file mode 100644 index da6d2ca5075..00000000000 --- a/jetty-webapp-verifier/src/test/resources/servlet_level_mixed_2.3_2.5.setup.txt +++ /dev/null @@ -1 +0,0 @@ -webapps/dummy-servletmixed2-webapp.war \ No newline at end of file diff --git a/jetty-webapp-verifier/src/test/resources/webapps/README.txt b/jetty-webapp-verifier/src/test/resources/webapps/README.txt deleted file mode 100644 index a46c58ef038..00000000000 --- a/jetty-webapp-verifier/src/test/resources/webapps/README.txt +++ /dev/null @@ -1,10 +0,0 @@ -There are a number of Webapps in this directory. - -Not all of them are valid. -But all of them are created by the jetty project. - -The non-eclipse names present in the various webapps, for classes, packages, etc. -Are used for testcase reasons, and are all dummy implementations. - -See the /jetty-webapp-verifier-examples/ project tree in source control for the -projects that built these webapps, and their respective WEB-INF/lib jars. diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-groovy-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-groovy-webapp.war deleted file mode 100644 index 96f1eaec365..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-groovy-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-javaversions-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-javaversions-webapp.war deleted file mode 100644 index 967fd373ee2..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-javaversions-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-jruby-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-jruby-webapp.war deleted file mode 100644 index 6704458065c..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-jruby-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-jython-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-jython-webapp.war deleted file mode 100644 index 6492ba056a4..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-jython-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-nativeaccess-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-nativeaccess-webapp.war deleted file mode 100644 index 81fa93c36d8..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-nativeaccess-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-scm-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-scm-webapp.war deleted file mode 100644 index f7622c4c782..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-scm-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet23-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet23-webapp.war deleted file mode 100644 index ffd51fba646..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet23-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet24-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet24-webapp.war deleted file mode 100644 index 57cc88c85e0..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet24-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet25-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet25-webapp.war deleted file mode 100644 index ba56dfb49dd..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servlet25-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed1-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed1-webapp.war deleted file mode 100644 index 5ce4a90ddb9..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed1-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed2-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed2-webapp.war deleted file mode 100644 index 8ecd5cd918a..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-servletmixed2-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/dummy-shellscripts-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/dummy-shellscripts-webapp.war deleted file mode 100644 index fa7ffa3a581..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/dummy-shellscripts-webapp.war and /dev/null differ diff --git a/jetty-webapp-verifier/src/test/resources/webapps/signed-jar-test-webapp.war b/jetty-webapp-verifier/src/test/resources/webapps/signed-jar-test-webapp.war deleted file mode 100644 index 4cce7a8a205..00000000000 Binary files a/jetty-webapp-verifier/src/test/resources/webapps/signed-jar-test-webapp.war and /dev/null differ