예제 #1
0
파일: Rule.java 프로젝트: damc-dev/byteman
  /**
   * generate a string representation of the rule
   *
   * @return a string representation of the rule
   */
  public String toString() {
    StringWriter stringWriter = new StringWriter();
    stringWriter.write("RULE ");
    stringWriter.write(getName());
    stringWriter.write("\n");
    if (isInterface()) {
      stringWriter.write("INTERFACE ");
    } else {
      stringWriter.write("CLASS ");
    }
    if (isOverride()) {
      stringWriter.write("^");
    }
    stringWriter.write(getTargetClass());
    stringWriter.write('\n');
    stringWriter.write("METHOD ");
    stringWriter.write(getTargetMethod());
    stringWriter.write('\n');
    stringWriter.write(getTargetLocation().toString());
    stringWriter.write('\n');
    if (event != null) {
      event.writeTo(stringWriter);
    } else {
      stringWriter.write("BIND NOTHING\n");
    }
    if (condition != null) {
      condition.writeTo(stringWriter);
    } else {
      stringWriter.write("COND   TRUE\n");
    }
    if (action != null) {
      action.writeTo(stringWriter);
    } else {
      stringWriter.write("DO   NOTHING\n");
    }

    return stringWriter.toString();
  }