diff options
14 files changed, 38 insertions, 1 deletions
diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog index d1295d2b9d7..bcba0a9385d 100644 --- a/libjava/classpath/ChangeLog +++ b/libjava/classpath/ChangeLog @@ -1,3 +1,12 @@ +2007-01-31 Tom Tromey <tromey@redhat.com> + + * 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. + 2007-01-26 Andrew Haley <aph@redhat.com> * java/lang/SecurityManager.java: Load and initialize diff --git a/libjava/classpath/resource/gnu/classpath/tools/jar/messages.properties b/libjava/classpath/resource/gnu/classpath/tools/jar/messages.properties index e589a210ffc..a456fe2438d 100644 --- a/libjava/classpath/resource/gnu/classpath/tools/jar/messages.properties +++ b/libjava/classpath/resource/gnu/classpath/tools/jar/messages.properties @@ -69,3 +69,4 @@ Main.FileNameGroup=File name selection Main.ChangeDir=change to directory before the next file Main.ChangeDirArg=DIR FILE Main.InternalError=jar: internal error: +Main.Stdin=Read file names from stdin diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$1.class Binary files differindex 1912cbdbdfd..dad181cde8f 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$1.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$1.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$2.class Binary files differindex 9bd0cbee854..93ef661618a 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$2.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$2.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$3.class Binary files differindex ddbd7f53730..cf00699159f 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$3.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$3.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$4.class Binary files differindex 9dfd4c5c90f..496c4118520 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$4.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$4.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$5.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$5.class Binary files differindex 8050a014e64..2efdda0afea 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$5.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$5.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$6.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$6.class Binary files differindex 126639456ef..4825fd1db1e 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$6.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$6.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$7.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$7.class Binary files differnew file mode 100644 index 00000000000..cb9fcd55e84 --- /dev/null +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$7.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$HandleFile.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$HandleFile.class Binary files differindex 16d4ed73859..6d7c301d9e8 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$HandleFile.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$HandleFile.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$JarParser.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$JarParser.class Binary files differindex 5a62fdc204d..db164f2023e 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$JarParser.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$JarParser.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$ModeOption.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$ModeOption.class Binary files differindex 3630f9b3c21..394b4e02e3f 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$ModeOption.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main$ModeOption.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main.class Binary files differindex 1c32274ee10..5b4d96cd3fc 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/jar/Main.class diff --git a/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java b/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java index 34f637204e7..c3575bdefd5 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/jar/Main.java +++ b/libjava/classpath/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); } |