Skip to content

Commit

Permalink
FORGE-1848: Fix CDI explosions. Weld doesn't like Anonmymous classes …
Browse files Browse the repository at this point in the history
…sometimes for some reason?
  • Loading branch information
lincolnthree committed May 22, 2014
1 parent 74d30de commit ba5dcf7
Showing 1 changed file with 29 additions and 19 deletions.
Expand Up @@ -11,35 +11,45 @@
import org.jboss.forge.addon.resource.visit.VisitContext;
import org.jboss.forge.roaster.model.source.JavaSource;

/**
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a>
*/
public class ProjectOperations
{
public List<JavaResource> getProjectClasses(Project project)
{
final List<JavaResource> classes = new ArrayList<>();
if (project != null)
{
project.getFacet(JavaSourceFacet.class).visitJavaSources(new JavaResourceVisitor()
{
project.getFacet(JavaSourceFacet.class).visitJavaSources(new JavaClassSourceVisitor(classes));
}
return classes;
}

private static class JavaClassSourceVisitor extends JavaResourceVisitor
{
private final List<JavaResource> classes;

@Override
public void visit(VisitContext context, JavaResource resource)
private JavaClassSourceVisitor(List<JavaResource> classes)
{
this.classes = classes;
}

@Override
public void visit(VisitContext context, JavaResource resource)
{
try
{
JavaSource<?> javaType = resource.getJavaType();
if (javaType.isClass())
{
try
{
JavaSource<?> javaType = resource.getJavaType();
if (javaType.isClass())
{
classes.add(resource);
}
}
catch (FileNotFoundException e)
{
// ignore
}
classes.add(resource);
}
});
}
catch (FileNotFoundException e)
{
// ignore
}
}
return classes;

}
}

0 comments on commit ba5dcf7

Please sign in to comment.