Renaming artifact and packages
[scannotation] / src / main / java / org / scannotation / archiveiterator / FileProtocolIteratorFactory.java
diff --git a/src/main/java/org/scannotation/archiveiterator/FileProtocolIteratorFactory.java b/src/main/java/org/scannotation/archiveiterator/FileProtocolIteratorFactory.java
new file mode 100644 (file)
index 0000000..a8c0a40
--- /dev/null
@@ -0,0 +1,26 @@
+package org.scannotation.archiveiterator;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+
+/**
+ * @author <a href="mailto:bill@burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class FileProtocolIteratorFactory implements DirectoryIteratorFactory
+{
+
+   public StreamIterator create(URL url, Filter filter) throws IOException
+   {
+      File f = new File(url.getPath());
+      if (f.isDirectory())
+      {
+         return new FileIterator(f, filter);
+      }
+      else
+      {
+         return new JarIterator(url.openStream(), filter);
+      }
+   }
+}