Search in sources :

Example 11 with Indexer

use of org.jboss.jandex.Indexer in project wildfly by wildfly.

the class AnnotationsTestCase method testProcessAdministeredObject.

/**
     * Process: AdministeredObject -- verification of the
     * processAdministeredObject method
     *
     * @throws Throwable throwable exception
     */
@Test
public void testProcessAdministeredObject() throws Throwable {
    try {
        URI uri = getURI("/ra16annoadminobj.rar");
        final VirtualFile virtualFile = VFS.getChild(uri);
        final Indexer indexer = new Indexer();
        final List<VirtualFile> classChildren = virtualFile.getChildren(new SuffixMatchFilter(".class", VisitorAttributes.RECURSE_LEAVES_ONLY));
        for (VirtualFile classFile : classChildren) {
            InputStream inputStream = null;
            try {
                inputStream = classFile.openStream();
                indexer.index(inputStream);
            } finally {
                VFSUtils.safeClose(inputStream);
            }
        }
        final Index index = indexer.complete();
        AnnotationRepository ar = new JandexAnnotationRepositoryImpl(index, Thread.currentThread().getContextClassLoader());
        annotations.process(ar, null, Thread.currentThread().getContextClassLoader());
    } catch (Throwable t) {
        fail(t.getMessage());
    }
}
Also used : VirtualFile(org.jboss.vfs.VirtualFile) Indexer(org.jboss.jandex.Indexer) InputStream(java.io.InputStream) SuffixMatchFilter(org.jboss.vfs.util.SuffixMatchFilter) AnnotationRepository(org.jboss.jca.common.spi.annotations.repository.AnnotationRepository) Index(org.jboss.jandex.Index) URI(java.net.URI) Test(org.junit.Test)

Aggregations

Index (org.jboss.jandex.Index)11 Indexer (org.jboss.jandex.Indexer)11 InputStream (java.io.InputStream)10 URI (java.net.URI)8 AnnotationRepository (org.jboss.jca.common.spi.annotations.repository.AnnotationRepository)8 VirtualFile (org.jboss.vfs.VirtualFile)8 SuffixMatchFilter (org.jboss.vfs.util.SuffixMatchFilter)8 Test (org.junit.Test)8 ByteArrayOutputStream (java.io.ByteArrayOutputStream)2 File (java.io.File)2 FileOutputStream (java.io.FileOutputStream)2 URL (java.net.URL)2 IndexWriter (org.jboss.jandex.IndexWriter)2 ByteArrayAsset (org.jboss.shrinkwrap.api.asset.ByteArrayAsset)2 ZipExporter (org.jboss.shrinkwrap.api.exporter.ZipExporter)2 JavaArchive (org.jboss.shrinkwrap.api.spec.JavaArchive)2 CompositeIndex (org.jboss.as.server.deployment.annotation.CompositeIndex)1