package edu.stanford.rt.credential; /** * @author Ninghui Li, Sandra Qiu
* * Implementation of LinkedRole element. */ public class LinkedRole implements PrincipalExpression { private RoleTerm roleTerm1; // required element. private RoleTerm roleTerm2; // required element. /** * Constructor for LinkedRole. */ public LinkedRole(RoleTerm term1, RoleTerm term2) { roleTerm1 = term1; roleTerm2 = term2; } /** * Accessor method for the role terms. */ public RoleTerm getRoleTermAt(int index) { switch(index) { case 0: return roleTerm1; case 1: return roleTerm2; default: return null; } } /** * @see edu.stanford.rt.credential.PrincipalExpression#toString(String) */ public String toString(String indent) { String thisIndent = indent + " "; StringBuffer sb = new StringBuffer(); sb.append(thisIndent).append("Linked Role: \n"); sb .append(thisIndent + " ") .append(roleTerm1.toString(thisIndent + " ")) .append("\n"); sb .append(thisIndent + " ") .append(roleTerm2.toString(thisIndent + " ")) .append("\n"); return sb.toString(); } }