RAT (Release Audit Tool) results

The following document contains the results of RAT (Release Audit Tool).

*****************************************************
Summary
-------
Generated at: 2012-07-05T21:04:37-07:00
Notes: 0
Binaries: 98
Archives: 0
Standards: 95

Apache Licensed: 82
Generated Documents: 0

JavaDocs are generated and so license header is optional
Generated files do not required license headers

13 Unknown Licenses

*******************************

Unapproved licenses:

  C:/sandbox/classscan/api/src/main/.bin/META-INF/MANIFEST.MF
  C:/sandbox/classscan/api/src/main/.classpath
  C:/sandbox/classscan/api/src/main/.project
  C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.component
  C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.project.facet.core.xml
  C:/sandbox/classscan/api/src/main/java/META-INF/MANIFEST.MF
  C:/sandbox/classscan/api/src/test/.bin/META-INF/MANIFEST.MF
  C:/sandbox/classscan/api/src/test/.classpath
  C:/sandbox/classscan/api/src/test/.project
  C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.component
  C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.project.facet.core.xml
  C:/sandbox/classscan/api/src/test/java/META-INF/MANIFEST.MF
  C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/util/ReapingHashMapTest.java

*******************************

Archives:

*****************************************************
  Files with Apache License headers will be marked AL
  Binary files (which do not require AL headers) will be marked B
  Compressed archives will be marked A
  Notices, licenses etc will be marked N
  AL    C:/sandbox/classscan/api/pom.xml
 !????? C:/sandbox/classscan/api/src/main/.bin/META-INF/MANIFEST.MF
  AL    C:/sandbox/classscan/api/src/main/.bin/META-INF/services/org.apache.commons.classscan.spi.ClassPathElementFactory
  AL    C:/sandbox/classscan/api/src/main/.bin/META-INF/services/org.apache.commons.classscan.spi.ClassPathFactory
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/BootstrapClassPath.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/BootstrapMetaClassLoader$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/BootstrapMetaClassLoader.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/ClassFileIterator.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/ClassNameHelper.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultArrayType.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultClassPathElementFactory.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultClassPathFactory.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultMetaClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultMetaRegistry$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/DefaultMetaRegistry.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/FileClassFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/FileClassPathElement$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/FileClassPathElement$FileCursor.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/FileClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/FileResourceFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/JarClassFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/JarClassPathElement$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/JarClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/JarResourceFile$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/JarResourceFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/PrimitiveClass.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/UrlClassPath.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/UrlMetaClassLoader$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/builtin/UrlMetaClassLoader.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/ClassFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/ClassPath.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/ClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/HasName.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/MetaClassLoader.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/MetaClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/MetaRegistry.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaAnnotation$EnumValue.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaAnnotation$Property.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaAnnotation.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaArray.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaClass.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaField.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaMethod.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaParameter.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/MetaType.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/model/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/ResourceFile.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/ClassDigesterFactory.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/ClassPathElementFactory.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/ClassPathFactory.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/HasResolve.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiClassDigester.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiClassPath.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaAnnotation$SpiProperty.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaAnnotation.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaArray.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaClass.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaClassLoader.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaClassPathElement.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaField.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaMethod.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaParameter.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/model/SpiMetaRegistry.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/spi/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/CallStack$GetCallerStrategy.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/CallStack$SecurityManagerMethod.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/CallStack$SunReflection.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/CallStack.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/FactoryCache$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/FactoryCache.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/NameSet$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/NameSet$2.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/NameSet$NameResolve.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/NameSet.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/package-info.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReadOnlySet$1.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReadOnlySet.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReapingHashMap$HashWeakReference.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReapingHashMap$KeyReference.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReapingHashMap$ReaperThread.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ReapingHashMap.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ResolveSet.class
  B     C:/sandbox/classscan/api/src/main/.bin/org/apache/commons/classscan/util/ServiceVisitor.class
 !????? C:/sandbox/classscan/api/src/main/.classpath
 !????? C:/sandbox/classscan/api/src/main/.project
 !????? C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.component
 !????? C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.project.facet.core.xml
 !????? C:/sandbox/classscan/api/src/main/java/META-INF/MANIFEST.MF
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/BootstrapClassPath.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/BootstrapMetaClassLoader.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/ClassFileIterator.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/ClassNameHelper.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/DefaultArrayType.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/DefaultClassPathElementFactory.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/DefaultClassPathFactory.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/DefaultMetaClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/DefaultMetaRegistry.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/FileClassFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/FileClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/FileResourceFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/JarClassFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/JarClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/JarResourceFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/PrimitiveClass.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/UrlClassPath.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/builtin/UrlMetaClassLoader.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/ClassFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/ClassPath.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/ClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/HasName.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/MetaClassLoader.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/MetaClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/MetaRegistry.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaAnnotation.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaArray.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaClass.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaField.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaMethod.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaParameter.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/MetaType.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/model/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/ResourceFile.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/ClassDigesterFactory.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/ClassPathElementFactory.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/ClassPathFactory.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/HasResolve.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiClassDigester.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiClassPath.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaAnnotation.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaArray.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaClass.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaClassLoader.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaClassPathElement.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaField.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaMethod.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaParameter.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/model/SpiMetaRegistry.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/spi/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/CallStack.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/FactoryCache.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/NameSet.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/package-info.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/ReadOnlySet.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/ReapingHashMap.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/ResolveSet.java
  AL    C:/sandbox/classscan/api/src/main/java/org/apache/commons/classscan/util/ServiceVisitor.java
  AL    C:/sandbox/classscan/api/src/main/resources/META-INF/services/org.apache.commons.classscan.spi.ClassPathElementFactory
  AL    C:/sandbox/classscan/api/src/main/resources/META-INF/services/org.apache.commons.classscan.spi.ClassPathFactory
  AL    C:/sandbox/classscan/api/src/test/.bin/logback.xml
 !????? C:/sandbox/classscan/api/src/test/.bin/META-INF/MANIFEST.MF
  AL    C:/sandbox/classscan/api/src/test/.bin/META-INF/services/org.apache.commons.classscan.test.classes.FullInterface
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/AnnotationAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/ConstructorAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/FieldAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/MethodAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/ParameterAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/TestEnum.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/annotations/TypeAnnotation.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/classes/BadPackage.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/classes/FullInterface.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/classes/FullyDecorated.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/test/classes/ValidateFullyDecorated.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/util/ReapingHashMapTest$BigObject.class
  B     C:/sandbox/classscan/api/src/test/.bin/org/apache/commons/classscan/util/ReapingHashMapTest.class
 !????? C:/sandbox/classscan/api/src/test/.classpath
 !????? C:/sandbox/classscan/api/src/test/.project
 !????? C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.component
 !????? C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.project.facet.core.xml
 !????? C:/sandbox/classscan/api/src/test/java/META-INF/MANIFEST.MF
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/AnnotationAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/ConstructorAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/FieldAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/MethodAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/ParameterAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/TestEnum.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/annotations/TypeAnnotation.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/classes/BadPackage.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/classes/FullInterface.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/classes/FullyDecorated.java
  AL    C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/test/classes/ValidateFullyDecorated.java
 !????? C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/util/ReapingHashMapTest.java
  AL    C:/sandbox/classscan/api/src/test/resources/logback.xml
  AL    C:/sandbox/classscan/api/src/test/resources/META-INF/services/org.apache.commons.classscan.test.classes.FullInterface
  B     C:/sandbox/classscan/api/src/test/resources/org/apache/commons/classscan/test/classes/--InvalidClassName--.class
  B     C:/sandbox/classscan/api/src/test/resources/org/apache/commons/classscan/test/classes/NotAClass.class
 
 *****************************************************
 Printing headers for files without AL header...
 
 
 =======================================================================
 ==C:/sandbox/classscan/api/src/main/.bin/META-INF/MANIFEST.MF
 =======================================================================
Manifest-Version: 1.0
Class-Path:  slf4j-api.jar


 =======================================================================
 ==C:/sandbox/classscan/api/src/main/.classpath
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" path="java"/>
	<classpathentry excluding="**/*.class" kind="src" path="classes"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
	</classpathentry>
	<classpathentry kind="lib" path="C:/Users/chonton/.m2/repository/org/slf4j/slf4j-api/1.5.10/slf4j-api-1.5.10.jar">
	</classpathentry>
	<classpathentry kind="output" path=".bin"/>
</classpath>

 =======================================================================
 ==C:/sandbox/classscan/api/src/main/.project
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>api</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.common.project.facet.core.builder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.validation.validationbuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
	</natures>
	<linkedResources>
		<link>
			<name>classes</name>
			<type>2</type>
			<location>C:/classscan/api/target/classes</location>
		</link>
	</linkedResources>
</projectDescription>

 =======================================================================
 ==C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.component
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
	<wb-module deploy-name="api">
		<wb-resource deploy-path="/" source-path="/java"/>
	</wb-module>
</project-modules>

 =======================================================================
 ==C:/sandbox/classscan/api/src/main/.settings/org.eclipse.wst.common.project.facet.core.xml
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
	<fixed facet="jst.java"/>
	<fixed facet="jst.utility"/>
	<installed facet="jst.java" version="6.0"/>
	<installed facet="jst.utility" version="1.0"/>
</faceted-project>

 =======================================================================
 ==C:/sandbox/classscan/api/src/main/java/META-INF/MANIFEST.MF
 =======================================================================
Manifest-Version: 1.0
Class-Path:  slf4j-api.jar


 =======================================================================
 ==C:/sandbox/classscan/api/src/test/.bin/META-INF/MANIFEST.MF
 =======================================================================
Manifest-Version: 1.0
Class-Path:  api.jar
  slf4j-api.jar
  junit.jar
  logback-classic.jar
  logback-core.jar


 =======================================================================
 ==C:/sandbox/classscan/api/src/test/.classpath
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" path="java"/>
	<classpathentry excluding="**/*.class" kind="src" path="test-classes"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
	</classpathentry>
	<classpathentry combineaccessrules="false" exported="true" kind="src" path="/api"/>
	<classpathentry kind="lib" path="C:/Users/chonton/.m2/repository/org/slf4j/slf4j-api/1.5.10/slf4j-api-1.5.10.jar">
	</classpathentry>
	<classpathentry kind="lib" path="C:/Users/chonton/.m2/repository/junit/junit/4.3/junit-4.3.jar">
	</classpathentry>
	<classpathentry kind="lib" path="C:/Users/chonton/.m2/repository/ch/qos/logback/logback-classic/0.9.18/logback-classic-0.9.18.jar">
	</classpathentry>
	<classpathentry kind="lib" path="C:/Users/chonton/.m2/repository/ch/qos/logback/logback-core/0.9.18/logback-core-0.9.18.jar">
	</classpathentry>
	<classpathentry kind="output" path=".bin"/>
</classpath>

 =======================================================================
 ==C:/sandbox/classscan/api/src/test/.project
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>api-tests</name>
	<comment></comment>
	<projects>
		<project>api</project>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.common.project.facet.core.builder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.validation.validationbuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
	</natures>
	<linkedResources>
		<link>
			<name>test-classes</name>
			<type>2</type>
			<location>C:/classscan/api/target/test-classes</location>
		</link>
	</linkedResources>
</projectDescription>

 =======================================================================
 ==C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.component
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
	<wb-module deploy-name="api-tests">
		<wb-resource deploy-path="/" source-path="/java"/>
	</wb-module>
</project-modules>

 =======================================================================
 ==C:/sandbox/classscan/api/src/test/.settings/org.eclipse.wst.common.project.facet.core.xml
 =======================================================================
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
	<fixed facet="jst.java"/>
	<fixed facet="jst.utility"/>
	<installed facet="jst.java" version="6.0"/>
	<installed facet="jst.utility" version="1.0"/>
</faceted-project>

 =======================================================================
 ==C:/sandbox/classscan/api/src/test/java/META-INF/MANIFEST.MF
 =======================================================================
Manifest-Version: 1.0
Class-Path:  api.jar
  slf4j-api.jar
  junit.jar
  logback-classic.jar
  logback-core.jar


 =======================================================================
 ==C:/sandbox/classscan/api/src/test/java/org/apache/commons/classscan/util/ReapingHashMapTest.java
 =======================================================================
package org.apache.commons.classscan.util;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;

import java.lang.ref.Reference;
import java.lang.ref.ReferenceQueue;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.List;

import org.junit.Test;

public class ReapingHashMapTest {

	@Test
	public void testHashWeakReferenceIsCollected() throws InterruptedException {
		ReferenceQueue<BigObject> queue = new ReferenceQueue<BigObject>();
		ReapingHashMap.HashWeakReference<BigObject> hwr = new ReapingHashMap.HashWeakReference<BigObject>(new BigObject(2), queue);
		assertNotNull(hwr.get());
		forceWeakRefCollection(queue, hwr);
	}

	@Test
	public void testNullReferenceIsNotCollected() throws InterruptedException {
		ReferenceQueue<BigObject> queue = new ReferenceQueue<BigObject>();

		ReapingHashMap.HashWeakReference<BigObject> nullRef = new ReapingHashMap.HashWeakReference<BigObject>(null, queue);
		assertNull(nullRef.get());
		
		ReapingHashMap.HashWeakReference<BigObject> nnRef = new ReapingHashMap.HashWeakReference<BigObject>(new BigObject(2), queue);
		forceWeakRefCollection(queue, nnRef);
		
		assertFalse(nullRef.isEnqueued());
		assertNull(queue.poll());
	}

	@Test(timeout=10000)
	public void testReapingHashMapIsCollected() throws InterruptedException {
		ReapingHashMap<BigObject, Integer> rhm = new ReapingHashMap<BigObject, Integer>();
		WeakReference<BigObject> key = notReaped(rhm);
		do {
			testHashWeakReferenceIsCollected();
		}
		while(key.get()!=null);
	}