public Map getCommandProperties() throws DDLException {
    Map props = (Map) getSpecification().getProperties();
    String cols = "", argdelim = (String) props.get("ArgumentListDelimiter");
    Map cmdprops = super.getCommandProperties();

    Enumeration col_e = args.elements();
    while (col_e.hasMoreElements()) {
      ProcedureArgument arg = (ProcedureArgument) col_e.nextElement();
      boolean inscomma = col_e.hasMoreElements();
      cols = cols + arg.getCommand(this) + (inscomma ? argdelim : "");
    }

    cmdprops.put("arguments", cols);
    cmdprops.put("body", body);
    return cmdprops;
  }
 public void setArgument(int index, Argument arg) {
   args.set(index, arg);
 }
 public Argument getArgument(int index) {
   return (Argument) args.get(index);
 }
 public void addArgument(String name, int type, int datatype) throws DDLException {
   Argument arg = createArgument(name, type, datatype);
   if (arg != null) args.add(arg);
 }