Repository: camel
Updated Branches:
  refs/heads/master 968fd2b17 -> 8cd032925


CAMEL-10701 - proper naming considering review and added option for xml dsl


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/09cf89cc
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/09cf89cc
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/09cf89cc

Branch: refs/heads/master
Commit: 09cf89cc702aa3d7e3b5bed68651939341635df5
Parents: fc72a19
Author: onders86 <ondersez...@gmail.com>
Authored: Tue Mar 14 18:31:54 2017 +0300
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Tue Mar 14 18:29:38 2017 +0100

----------------------------------------------------------------------
 .../camel/model/dataformat/ZipFileDataFormat.java  | 17 +++++++++++++++++
 .../dataformat/zipfile/ZipFileDataFormat.java      | 12 ++++++------
 .../camel/dataformat/zipfile/ZipIterator.java      | 15 +++++++--------
 .../dataformat/zipfile/ZipFileDataFormatTest.java  |  4 ++--
 4 files changed, 32 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/09cf89cc/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipFileDataFormat.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipFileDataFormat.java
 
b/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipFileDataFormat.java
index 49ba9b2..4d54554 100644
--- 
a/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipFileDataFormat.java
+++ 
b/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipFileDataFormat.java
@@ -36,6 +36,8 @@ import org.apache.camel.spi.Metadata;
 public class ZipFileDataFormat extends DataFormatDefinition {
     @XmlAttribute
     private Boolean usingIterator;
+    @XmlAttribute
+    private Boolean allowEmptyDirectory;
 
     public ZipFileDataFormat() {
         super("zipfile");
@@ -46,11 +48,18 @@ public class ZipFileDataFormat extends DataFormatDefinition 
{
         if (usingIterator != null) {
             setProperty(camelContext, dataFormat, "usingIterator", 
usingIterator);
         }
+        if (allowEmptyDirectory != null) {
+            setProperty(camelContext, dataFormat, "allowEmptyDirectory", 
allowEmptyDirectory);
+        }
     }
 
     public Boolean getUsingIterator() {
         return usingIterator;
     }
+    
+    public Boolean getAllowEmptyDirectory() {
+        return allowEmptyDirectory;
+    }
 
     /**
      * If the zip file has more then one entry, the setting this option to 
true, allows to work with the splitter EIP,
@@ -59,5 +68,13 @@ public class ZipFileDataFormat extends DataFormatDefinition {
     public void setUsingIterator(Boolean usingIterator) {
         this.usingIterator = usingIterator;
     }
+    
+    /**
+     * If the zip file has more then one entry, setting this option to true, 
allows to get the iterator
+     * even if the directory is empty
+     */
+    public void setAllowEmptyDirectory(Boolean allowEmptyDirectory) {
+        this.allowEmptyDirectory = allowEmptyDirectory;
+    }
 
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/09cf89cc/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
----------------------------------------------------------------------
diff --git 
a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
 
b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
index 72b4ce5..4bb5824 100644
--- 
a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
+++ 
b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
@@ -39,7 +39,7 @@ import static org.apache.camel.Exchange.FILE_NAME;
  */
 public class ZipFileDataFormat extends ServiceSupport implements DataFormat, 
DataFormatName {
     private boolean usingIterator;
-    private boolean supportIteratorForEmptyDirectory;
+    private boolean allowEmptyDirectory;
 
     @Override
     public String getDataFormatName() {
@@ -75,7 +75,7 @@ public class ZipFileDataFormat extends ServiceSupport 
implements DataFormat, Dat
     public Object unmarshal(final Exchange exchange, final InputStream 
inputStream) throws Exception {
         if (usingIterator) {
             ZipIterator zipIterator = new ZipIterator(exchange.getIn());
-            
zipIterator.setSupportIteratorForEmptyDirectory(supportIteratorForEmptyDirectory);
+            zipIterator.setAllowEmptyDirectory(allowEmptyDirectory);
             return zipIterator;
         } else {
             ZipInputStream zis = new ZipInputStream(inputStream);
@@ -108,12 +108,12 @@ public class ZipFileDataFormat extends ServiceSupport 
implements DataFormat, Dat
         this.usingIterator = usingIterator;
     }
     
-    public boolean isSupportIteratorForEmptyDirectory() {
-        return supportIteratorForEmptyDirectory;
+    public boolean isAllowEmptyDirectory() {
+        return allowEmptyDirectory;
     }
 
-    public void setSupportIteratorForEmptyDirectory(boolean 
supportIteratorForEmptyDirectory) {
-        this.supportIteratorForEmptyDirectory = 
supportIteratorForEmptyDirectory;
+    public void setAllowEmptyDirectory(boolean allowEmptyDirectory) {
+        this.allowEmptyDirectory = allowEmptyDirectory;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/09cf89cc/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipIterator.java
----------------------------------------------------------------------
diff --git 
a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipIterator.java
 
b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipIterator.java
index 3370d21..0e64d2c 100644
--- 
a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipIterator.java
+++ 
b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipIterator.java
@@ -40,13 +40,13 @@ public class ZipIterator implements Iterator<Message>, 
Closeable {
     static final Logger LOGGER = LoggerFactory.getLogger(ZipIterator.class);
     
     private final Message inputMessage;
-    private boolean supportIteratorForEmptyDirectory;
+    private boolean allowEmptyDirectory;
     private volatile ZipInputStream zipInputStream;
     private volatile Message parent;
     
     public ZipIterator(Message inputMessage) {
         this.inputMessage = inputMessage;
-        this.supportIteratorForEmptyDirectory = false;
+        this.allowEmptyDirectory = false;
         InputStream inputStream = inputMessage.getBody(InputStream.class);
         if (inputStream instanceof ZipInputStream) {
             zipInputStream = (ZipInputStream)inputStream;
@@ -132,9 +132,8 @@ public class ZipIterator implements Iterator<Message>, 
Closeable {
             if (!entry.isDirectory()) {
                 return entry;
             } else {
-                if (supportIteratorForEmptyDirectory) {
-                    ZipEntry dirEntry = new ZipEntry(entry.getName());
-                    return dirEntry;
+                if (allowEmptyDirectory) {
+                    return entry;
                 }
             }
         }
@@ -154,10 +153,10 @@ public class ZipIterator implements Iterator<Message>, 
Closeable {
     }
     
     public boolean isSupportIteratorForEmptyDirectory() {
-        return supportIteratorForEmptyDirectory;
+        return allowEmptyDirectory;
     }
 
-    public void setSupportIteratorForEmptyDirectory(boolean 
supportIteratorForEmptyDirectory) {
-        this.supportIteratorForEmptyDirectory = 
supportIteratorForEmptyDirectory;
+    public void setAllowEmptyDirectory(boolean allowEmptyDirectory) {
+        this.allowEmptyDirectory = allowEmptyDirectory;
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/09cf89cc/components/camel-zipfile/src/test/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormatTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-zipfile/src/test/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormatTest.java
 
b/components/camel-zipfile/src/test/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormatTest.java
index de996fb..305283e 100644
--- 
a/components/camel-zipfile/src/test/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormatTest.java
+++ 
b/components/camel-zipfile/src/test/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormatTest.java
@@ -117,7 +117,7 @@ public class ZipFileDataFormatTest extends CamelTestSupport 
{
     public void testUnzipWithEmptyDirectorySupported() throws Exception {
         deleteDirectory(new File("hello_out"));
         zip.setUsingIterator(true);
-        zip.setSupportIteratorForEmptyDirectory(true);
+        zip.setAllowEmptyDirectory(true);
         template.sendBody("direct:unzipWithEmptyDirectory", new 
File("src/test/resources/hello.odt"));
         assertTrue(Files.exists(Paths.get("hello_out/Configurations2")));
         deleteDirectory(new File("hello_out"));
@@ -127,7 +127,7 @@ public class ZipFileDataFormatTest extends CamelTestSupport 
{
     public void testUnzipWithEmptyDirectoryUnsupported() throws Exception {
         deleteDirectory(new File("hello_out"));
         zip.setUsingIterator(true);
-        zip.setSupportIteratorForEmptyDirectory(false);
+        zip.setAllowEmptyDirectory(false);
         template.sendBody("direct:unzipWithEmptyDirectory", new 
File("src/test/resources/hello.odt"));
         assertTrue(!Files.exists(Paths.get("hello_out/Configurations2")));
         deleteDirectory(new File("hello_out"));

Reply via email to