/** @see com.ardais.bigr.iltds.btx.BTXDetails#getDirectlyInvolvedObjects() */ public Set getDirectlyInvolvedObjects() { Set set = new HashSet(); if (Constants.OBJECT_TYPE_ACCOUNT.equalsIgnoreCase(getObjectType())) { set.add(getAccountData().getId()); } else if (Constants.OBJECT_TYPE_USER.equalsIgnoreCase(getObjectType())) { set.add(getUserData().getUserId()); } return set; }
/** @see com.ardais.bigr.iltds.btx.BTXDetails#doGetDetailsAsHTML() */ protected String doGetDetailsAsHTML() { // NOTE: This method must not make use of any fields that aren't // set by the populateFromHistoryRecord method. // // For this object type, the fields we can use here are: // setObjectType // one of the following, depending upon object type // getUserData().setUserId // getAccountData.setId // setAddedPrivileges // setRemovedPrivileges // setAssignedPrivileges - note this will be null // setAllPrivileges - note this will be null // setSelectedPrivileges - note this will be null // setRoleBasedPrivileges - note this will be null // The result has this form: // User <userId> had access to the following privilege revoked: <privilege names>. // They were granted access to the following privileges: <privilege names>. StringBuffer sb = new StringBuffer(512); if (Constants.OBJECT_TYPE_ACCOUNT.equalsIgnoreCase(getObjectType())) { sb.append("Account "); Escaper.htmlEscape(getAccountData().getId(), sb); } else if (Constants.OBJECT_TYPE_USER.equalsIgnoreCase(getObjectType())) { sb.append("User "); Escaper.htmlEscape(getUserData().getUserId(), sb); } // if no changes were made, say that if (getRemovedPrivileges().size() == 0 && getAddedPrivileges().size() == 0) { sb.append(" had no changes made to"); if (Constants.OBJECT_TYPE_ACCOUNT.equalsIgnoreCase(getObjectType())) { sb.append(" its"); } else if (Constants.OBJECT_TYPE_USER.equalsIgnoreCase(getObjectType())) { sb.append(" their"); } sb.append(" privilege access."); } else { if (getRemovedPrivileges().size() > 0) { sb.append(" had access to the following privileges revoked: "); Iterator iterator = getRemovedPrivileges().iterator(); boolean addComma = false; while (iterator.hasNext()) { if (addComma) { sb.append(", "); } addComma = true; sb.append(((PrivilegeDto) iterator.next()).getDescription()); } sb.append("."); } if (getAddedPrivileges().size() > 0) { // if we said something about removed privileges, start a new sentence. if (getRemovedPrivileges().size() > 0) { if (Constants.OBJECT_TYPE_ACCOUNT.equalsIgnoreCase(getObjectType())) { sb.append(" It was"); } else if (Constants.OBJECT_TYPE_USER.equalsIgnoreCase(getObjectType())) { sb.append(" They were "); } } else { sb.append(" was "); } sb.append("granted access to the following privileges: "); Iterator iterator = getAddedPrivileges().iterator(); boolean addComma = false; while (iterator.hasNext()) { if (addComma) { sb.append(", "); } addComma = true; sb.append(((PrivilegeDto) iterator.next()).getDescription()); } sb.append("."); } } return sb.toString(); }