home *** CD-ROM | disk | FTP | other *** search
- package com.ibm.bsf;
-
- import com.ibm.cs.util.CodeBuffer;
- import com.ibm.cs.util.IOUtils;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.io.PrintWriter;
- import java.io.Reader;
- import java.util.Hashtable;
-
- public class Main {
- private static String DEFAULT_IN_FILE_NAME = "<STDIN>";
- private static String DEFAULT_COMPILE_FLAG = "off";
- private static String DEFAULT_CLASS_NAME = "Test";
- // $FF: synthetic field
- static Class class$com$ibm$bsf$BSFManager;
-
- private static void printHelp() {
- System.err.println("Usage:");
- System.err.println();
- System.err.println(" java " + (class$com$ibm$bsf$BSFManager != null ? class$com$ibm$bsf$BSFManager : (class$com$ibm$bsf$BSFManager = class$("com.ibm.bsf.BSFManager"))).getName() + " [args]");
- System.err.println();
- System.err.println(" args:");
- System.err.println();
- System.err.println(" [-in fileName] default: " + DEFAULT_IN_FILE_NAME);
- System.err.println(" [-language languageName] default: <If -in is specified and -language ");
- System.err.println(" is not, attempt to determine ");
- System.err.println(" language from file extension; ");
- System.err.println(" otherwise, -language is required.>");
- System.err.println(" [-compile (on|off)] default: " + DEFAULT_COMPILE_FLAG);
- System.err.println();
- System.err.println(" Additional args used only if -compile flag is set to \"on\":");
- System.err.println();
- System.err.println(" [-out className] default: " + DEFAULT_CLASS_NAME);
- }
-
- public static void main(String[] var0) throws BSFException, IOException {
- if (var0.length == 0 || var0.length % 2 != 0) {
- printHelp();
- System.exit(1);
- }
-
- Hashtable var1 = new Hashtable();
- var1.put("-compile", DEFAULT_COMPILE_FLAG);
- var1.put("-out", DEFAULT_CLASS_NAME);
-
- for(int var2 = 0; var2 < var0.length; var2 += 2) {
- var1.put(var0[var2], var0[var2 + 1]);
- }
-
- String var3 = (String)var1.get("-in");
- String var4 = (String)var1.get("-language");
- if (var4 == null) {
- if (var3 == null) {
- throw new BSFException(BSFException.REASON_OTHER_ERROR, "unable to determine language");
- }
-
- var4 = BSFManager.getLangFromFilename(var3);
- }
-
- Object var5;
- if (var3 != null) {
- var5 = new FileReader(var3);
- } else {
- var5 = new InputStreamReader(System.in);
- var3 = "<STDIN>";
- }
-
- BSFManager var6 = new BSFManager();
- String var7 = (String)var1.get("-compile");
- if (var7 != null && var7.equals("on")) {
- String var8 = (String)var1.get("-out");
- FileWriter var9 = new FileWriter(var8 + ".java");
- PrintWriter var10 = new PrintWriter(var9);
- CodeBuffer var11 = new CodeBuffer();
- var11.setClassName(var8);
- var6.compileScript(var4, var3, 0, 0, IOUtils.getStringFromReader((Reader)var5), var11);
- var11.print(var10, true);
- ((OutputStreamWriter)var9).close();
- } else {
- var6.exec(var4, var3, 0, 0, IOUtils.getStringFromReader((Reader)var5));
- }
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
- }
-