View Javadoc

1   package net.sf.tomp.xtcl.command;
2   
3   import net.sf.tomp.xtcl.Context;
4   
5   import java.io.PrintStream;
6   
7   /***
8    * DOCUMENT ME!
9    * 
10   * @author tomp
11   */
12  public class SetCommand extends VarCommand {
13      /*** DOCUMENT ME! */
14      protected String srcVar;
15  
16      /***
17       * DOCUMENT ME!
18       * 
19       * @param r DOCUMENT ME!
20       */
21      public void setSrcVar(String r) {
22          srcVar = r;
23      }
24  
25      /***
26       * DOCUMENT ME!
27       * 
28       * @param context DOCUMENT ME!
29       * @return DOCUMENT ME!
30       * @throws Exception DOCUMENT ME!
31       */
32      public int execute(Context context) throws Exception {
33          Object src = context.get(srcVar);
34  
35          context.put(var, src);
36  
37          PrintStream out = context.getOut();
38  
39          if (out != null) {
40              out.print(((src == null) ? "ERR " : "OK ") + this);
41          }
42  
43          return 0;
44      }
45  
46      /***
47       * DOCUMENT ME!
48       * 
49       * @return DOCUMENT ME!
50       */
51      public String toString() {
52          return "SET " + var + "=" + srcVar;
53      }
54  }
55  
56  /*
57   * The contents of this file are subject to the Mozilla Public License Version
58   * 1.1 (the "License"); you may not use this file except in compliance with the
59   * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
60   * Software distributed under the License is distributed on an "AS IS" basis,
61   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
62   * the specific language governing rights and limitations under the License. The
63   * Original Code is: all this file. The Initial Developer of the Original Code
64   * is: Tomas Pitner, Masaryk University in Brno, Czech Republic. Contributor(s):
65   */