summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2007-01-31 17:05:34 +0000
committerTom Tromey <tromey@redhat.com>2007-01-31 17:05:34 +0000
commit03c2aada415dea936e1dd4a7cff252a5f7423e71 (patch)
treee286fcd0b89ac1320839d27443000b136f928a8d /tools
parentce44fd80cd3222dce88948e39b3e7afbb6935c52 (diff)
downloadclasspath-03c2aada415dea936e1dd4a7cff252a5f7423e71.tar.gz
* resource/gnu/classpath/tools/jar/messages.properties
(Main.Stdin): New message. * tools/gnu/classpath/tools/jar/Main.java (initializeParser): Add '-@' option. (readNames): New method. (run): Use it.
Diffstat (limited to 'tools')
-rw-r--r--tools/gnu/classpath/tools/jar/Main.java29
1 files changed, 28 insertions, 1 deletions
diff --git a/tools/gnu/classpath/tools/jar/Main.java b/tools/gnu/classpath/tools/jar/Main.java
index 533258777..d52028fef 100644
--- a/tools/gnu/classpath/tools/jar/Main.java
+++ b/tools/gnu/classpath/tools/jar/Main.java
@@ -1,5 +1,5 @@
/* Main.java - jar program main()
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,7 +45,9 @@ import gnu.classpath.tools.getopt.OptionException;
import gnu.classpath.tools.getopt.OptionGroup;
import gnu.classpath.tools.getopt.Parser;
+import java.io.BufferedReader;
import java.io.File;
+import java.io.InputStreamReader;
import java.io.IOException;
import java.text.MessageFormat;
import java.util.ArrayList;
@@ -232,11 +234,34 @@ public class Main
changedDirectory = argument;
}
});
+ grp.add(new Option('@', Messages.getString("Main.Stdin"))
+ {
+ public void parsed(String argument) throws OptionException
+ {
+ readNamesFromStdin = true;
+ }
+ });
p.add(grp);
return p;
}
+ private void readNames()
+ {
+ String line;
+ try
+ {
+ BufferedReader br
+ = new BufferedReader(new InputStreamReader(System.in));
+ while ((line = br.readLine()) != null)
+ entries.add(new Entry(new File(line)));
+ }
+ catch (IOException _)
+ {
+ // Ignore.
+ }
+ }
+
private void run(String[] args)
throws InstantiationException, IllegalAccessException, IOException
{
@@ -245,6 +270,8 @@ public class Main
if (args.length > 0 && args[0].charAt(0) != '-')
args[0] = '-' + args[0];
p.parse(args, new HandleFile());
+ if (readNamesFromStdin)
+ readNames();
Action t = (Action) operationMode.newInstance();
t.run(this);
}