You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bo...@apache.org on 2018/04/29 20:45:47 UTC

commons-compress git commit: COMPRESS-118 allow generic steps to be used

Repository: commons-compress
Updated Branches:
  refs/heads/master fe2ba8d32 -> 15e9c80f5


COMPRESS-118 allow generic steps to be used


Project: http://git-wip-us.apache.org/repos/asf/commons-compress/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-compress/commit/15e9c80f
Tree: http://git-wip-us.apache.org/repos/asf/commons-compress/tree/15e9c80f
Diff: http://git-wip-us.apache.org/repos/asf/commons-compress/diff/15e9c80f

Branch: refs/heads/master
Commit: 15e9c80f56ff63ba71ff7df894266e3174636953
Parents: fe2ba8d
Author: Stefan Bodewig <bo...@apache.org>
Authored: Sun Apr 29 22:45:27 2018 +0200
Committer: Stefan Bodewig <bo...@apache.org>
Committed: Sun Apr 29 22:45:27 2018 +0200

----------------------------------------------------------------------
 .../compress/archivers/examples/Archive.java     | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-compress/blob/15e9c80f/src/main/java/org/apache/commons/compress/archivers/examples/Archive.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/compress/archivers/examples/Archive.java b/src/main/java/org/apache/commons/compress/archivers/examples/Archive.java
index 5ce777a..a929442 100644
--- a/src/main/java/org/apache/commons/compress/archivers/examples/Archive.java
+++ b/src/main/java/org/apache/commons/compress/archivers/examples/Archive.java
@@ -54,6 +54,10 @@ public class Archive {
          */
         ChainBuilder map(Transformer<File> transformer);
         /**
+         * Adds a generic step to the chain.
+         */
+        ChainBuilder withStep(ChainStep<File> step);
+        /**
          * Actually consumes all the files supplied.
          */
         void to(Sink<File> sink) throws IOException, ArchiveException;
@@ -81,13 +85,15 @@ public class Archive {
             this.source = source;
         }
 
+        @Override
         public ChainBuilder filter(Filter<File> filter) {
-            chainDef.add(filter);
-            return this;
+            return withStep(filter);
         }
+        @Override
         public ChainBuilder filter(FileFilter filter) {
             return filter(new FileFilterAdapter(filter));
         }
+        @Override
         public ChainBuilder skipUnreadable() {
             return filter(new FileFilter() {
                 @Override
@@ -96,6 +102,7 @@ public class Archive {
                 }
             });
         }
+        @Override
         public ChainBuilder skipNonFiles() {
             return filter(new FileFilter() {
                 @Override
@@ -104,10 +111,16 @@ public class Archive {
                 }
             });
         }
+        @Override
         public ChainBuilder map(Transformer<File> transformer) {
-            chainDef.add(transformer);
+            return withStep(transformer);
+        }
+        @Override
+        public ChainBuilder withStep(ChainStep<File> step) {
+            chainDef.add(step);
             return this;
         }
+        @Override
         public void to(Sink<File> sink) throws IOException, ArchiveException {
             chainDef.add(sink);
             chainDef.freeze();