package edu.sc.seis.sod.status; import edu.sc.seis.fissuresUtil.exceptionHandler.ExceptionReporterUtils; public class StringTreeBranch extends StringTree { public StringTreeBranch(Object actor, boolean status, StringTree branch) { this(actor, status, new StringTree[] {branch}); if (branch == null) { throw new IllegalArgumentException("branch cannot be null"); } } public StringTreeBranch(Object actor, boolean status, StringTree[] branches) { this(ExceptionReporterUtils.getClassName(actor), status, branches); } public StringTreeBranch(String actorName, boolean status, StringTree[] branches) { super(actorName, status); this.branches = branches; } public String toString(int indentationLevel) { String s = ""; if(indentationLevel == 0) { s += '\n'; } s += super.toString(indentationLevel); for(int i = 0; i < branches.length; i++) { if(branches[i] instanceof ShortCircuit){ break; } if (branches[i] != null) { s += "\n" + branches[i].toString(indentationLevel + 1); } else { s += "\n" + "-NULL-"+i; } } return s; } protected StringTree[] branches; }