import java.awt.*; import java.awt.event.*; import java.io.*; public class ExecutionCommand implements ActionListener { static final int START = 0; static final int STOP = 1; private int m_id; private Gui m_gui; private WebScript m_script; private static ScriptThread m_thread; public ExecutionCommand(int id, Gui frame) { m_id = id; m_gui = frame; } public void actionPerformed(ActionEvent e) { switch (m_id) { case START: System.out.println("Run: " + m_gui.getCurrentScript()); startRun(); break; case STOP: System.out.println("Stop"); stopRun(); break; } } public void startRun() { String s = m_gui.getCurrentScript(); try { m_script = WebScript.parse(s); RunServiceVisitor visitor = new RunServiceVisitor(); visitor.setGui(m_gui); //m_script.runScript(visitor); m_thread = new ScriptThread(m_script,visitor); m_thread.start(); } catch(RuntimeException e) { //System.out.println(e); System.out.println("Illegal script"); //MessageBox mb = new MessageBox(m_gui,"Parse Error","Illegal script"); //mb.setSize(200,200); //mb.show(); } catch(Exception e) { System.out.println(e); return; } } public void stopRun() { if(m_thread != null) { //StopServiceVisitor visitor = new StopServiceVisitor(); //m_script.stopScript(visitor); System.out.println("stop in Command"); m_thread.stopRun(); } } }