Skip to content

Commit

Permalink
FORGE-934 - Resource visitor API
Browse files Browse the repository at this point in the history
  • Loading branch information
lincolnthree committed Nov 21, 2013
1 parent c6571c0 commit 715b1b7
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.jboss.forge.addon.resource.DirectoryResource;
import org.jboss.forge.addon.resource.Resource;
import org.jboss.forge.addon.resource.ResourceFilter;
import org.jboss.forge.addon.resource.visit.ResourceVisit;
import org.jboss.forge.furnace.util.Strings;
import org.jboss.forge.parser.java.JavaSource;

Expand Down Expand Up @@ -190,27 +191,21 @@ public void visitJavaTestSources(final JavaResourceVisitor visitor)

private void visitSources(final Resource<?> searchFolder, final JavaResourceVisitor visitor)
{
if (searchFolder instanceof DirectoryResource)
new ResourceVisit(searchFolder).perform(visitor, new ResourceFilter()
{

searchFolder.listResources(new ResourceFilter()
@Override
public boolean accept(Resource<?> type)
{
@Override
public boolean accept(Resource<?> resource)
{
if (resource instanceof DirectoryResource)
{
visitSources(resource, visitor);
}
else if (resource instanceof JavaResource)
{
visitor.visit((JavaResource) resource);
}

return false;
}
});
}
return type instanceof DirectoryResource;
}
}, new ResourceFilter()
{
@Override
public boolean accept(Resource<?> type)
{
return type instanceof JavaResource;
}
});
}

private List<DirectoryResource> getMainJavaSources()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@
import org.jboss.forge.addon.projects.facets.ResourcesFacet;
import org.jboss.forge.addon.resource.DirectoryResource;
import org.jboss.forge.addon.resource.FileResource;
import org.jboss.forge.addon.resource.Resource;
import org.jboss.forge.addon.resource.ResourceFilter;
import org.jboss.forge.addon.resource.visit.ResourceVisit;
import org.jboss.forge.addon.resource.visit.ResourceVisitor;

/**
* @author Adam Wyłuda
Expand Down Expand Up @@ -134,4 +138,44 @@ private DirectoryResource directoryResourceFromRelativePath(String path)
return getFaceted().getFacet(GradleFacet.class).getBuildScriptResource().getParent()
.getChildDirectory(path);
}

@Override
public void visitResources(ResourceVisitor visitor)
{
new ResourceVisit(getResourceDirectory()).perform(visitor, new ResourceFilter()
{
@Override
public boolean accept(Resource<?> resource)
{
return resource instanceof DirectoryResource;
}
}, new ResourceFilter()
{
@Override
public boolean accept(Resource<?> type)
{
return true;
}
});
}

@Override
public void visitTestResources(ResourceVisitor visitor)
{
new ResourceVisit(getTestResourceDirectory()).perform(visitor, new ResourceFilter()
{
@Override
public boolean accept(Resource<?> resource)
{
return resource instanceof DirectoryResource;
}
}, new ResourceFilter()
{
@Override
public boolean accept(Resource<?> type)
{
return true;
}
});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import org.jboss.forge.addon.parser.java.resources.JavaResourceVisitor;
import org.jboss.forge.addon.projects.Project;
import org.jboss.forge.addon.resource.DirectoryResource;
import org.jboss.forge.addon.resource.visit.VisitContext;
import org.jboss.forge.arquillian.AddonDependency;
import org.jboss.forge.arquillian.Dependencies;
import org.jboss.forge.arquillian.archive.ForgeArchive;
Expand Down Expand Up @@ -55,7 +56,7 @@ public static ForgeArchive getDeployment()
GradleTestProjectProvider.SIMPLE_RESOURCES_PATH,
GradleTestProjectProvider.SIMPLE_RESOURCES);
}

private static GradleTestProjectProvider projectProvider;

@Inject
Expand Down Expand Up @@ -203,7 +204,7 @@ class Holder
{

@Override
public void visit(JavaResource javaResource)
public void visit(VisitContext context, JavaResource javaResource)
{
try
{
Expand Down Expand Up @@ -237,7 +238,7 @@ class Holder
{

@Override
public void visit(JavaResource javaResource)
public void visit(VisitContext context, JavaResource javaResource)
{
try
{
Expand Down

0 comments on commit 715b1b7

Please sign in to comment.