diff -r 1a067a217454 -r a2aa84f310a5 streamlet-examples/JarInfo.java
--- a/streamlet-examples/JarInfo.java Wed Jan 29 18:41:42 2020 +0100
+++ b/streamlet-examples/JarInfo.java Wed Jan 29 20:50:12 2020 +0100
@@ -21,8 +21,27 @@
import java.util.List;
import java.util.jar.JarFile;
+/**
+ *
+ * This streamlet provides metadata from JAR (or ZIP) files.
+ *
+ *
+ * With no options it returns the main class (if any) and number of entries (files and directories) in the archive.
+ *
+ *
+ * Specific attributes can be selected using options – e.g. --option 'attribute' '…' Supported attributes are:
+ *
+ *
+ * - comment
+ * - entries
+ * - main_class
+ *
+ */
public class JarInfo extends Streamlet {
+ // TODO: total size
+ // TODO: OSGi metadata etc.
+ // TODO: more OOP, move to separate repository, proper Maven project, clean-up, stabilize API
public static final String ATTRIBUTE_COMMENT = "comment";
public static final String ATTRIBUTE_ENTRIES = "entries";
public static final String ATTRIBUTE_MAIN_CLASS = "main_class";
@@ -33,14 +52,6 @@
JarInfo s = new JarInfo();
int status = s.run();
System.exit(status);
-
- // TODO: return real values:
- JarFile jar = new JarFile(new File(args[0]));
- String mainClass = jar.getManifest() == null ? null : jar.getManifest().getMainAttributes().getValue("Main-Class");
- System.out.println("Name: " + jar.getName());
- System.out.println("Comment: " + jar.getComment());
- System.out.println("Entries: " + jar.stream().count());
- System.out.println("Main class: " + mainClass);
}
protected List getOutputAttributesMetadata() {