diff --git a/src/main/java/org/apache/maven/shared/dependency/graph/DependencyGraphBuilder.java b/src/main/java/org/apache/maven/shared/dependency/graph/DependencyGraphBuilder.java
index 8112aec..7b0cc73 100644
--- a/src/main/java/org/apache/maven/shared/dependency/graph/DependencyGraphBuilder.java
+++ b/src/main/java/org/apache/maven/shared/dependency/graph/DependencyGraphBuilder.java
@@ -30,6 +30,14 @@
  */
 public interface DependencyGraphBuilder
 {
+    /**
+     * Build the dependency graph.
+     *
+     * @param project the project
+     * @param filter artifact filter (can be <code>null</code>
+     * @return the dependency graph
+     * @throws DependencyGraphBuilderException
+     */
     public DependencyNode buildDependencyGraph( MavenProject project, ArtifactFilter filter )
         throws DependencyGraphBuilderException;
 }
diff --git a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven2DependencyNode.java b/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven2DependencyNode.java
index 614846b..f586fe5 100644
--- a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven2DependencyNode.java
+++ b/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven2DependencyNode.java
@@ -48,7 +48,7 @@
         List<DependencyNode> nodes = new ArrayList<DependencyNode>( node.getChildren().size() );
         for ( org.apache.maven.shared.dependency.tree.DependencyNode child : node.getChildren() )
         {
-            if ( filter.include( child.getArtifact() ) )
+            if ( ( filter == null ) || filter.include( child.getArtifact() ) )
             {
                 nodes.add( new Maven2DependencyNode( child, filter ) );
             }
diff --git a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyNode.java b/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyNode.java
index a00ed77..61a7e2a 100644
--- a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyNode.java
+++ b/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyNode.java
@@ -62,7 +62,7 @@
                                                   art.getExtension(), art.getClassifier(), dep.getScope(),
                                                   dep.isOptional() );
 
-            if ( !filter.include( tmpArtifact ) )
+            if ( ( filter != null ) && !filter.include( tmpArtifact ) )
             {
                 this.artifact = null;
                 children = null;
