/** * @see * com.ardais.bigr.iltds.btx.BTXDetails#describeIntoHistoryRecord(com.ardais.bigr.iltds.btx.BTXHistoryRecord) */ public void describeIntoHistoryRecord(BTXHistoryRecord history) { super.describeIntoHistoryRecord(history); IdList addedPrivilegeIds = new IdList(); StringList addedPrivilegeNames = new StringList(); Iterator iterator = getAddedPrivileges().iterator(); while (iterator.hasNext()) { PrivilegeDto privilege = (PrivilegeDto) iterator.next(); addedPrivilegeIds.add(privilege.getId()); addedPrivilegeNames.add(privilege.getDescription()); } IdList removedPrivilegeIds = new IdList(); StringList removedPrivilegeNames = new StringList(); iterator = getRemovedPrivileges().iterator(); while (iterator.hasNext()) { PrivilegeDto privilege = (PrivilegeDto) iterator.next(); removedPrivilegeIds.add(privilege.getId()); removedPrivilegeNames.add(privilege.getDescription()); } history.setAttrib1(getObjectType()); history.setAttrib2(getUserData().getUserId()); history.setAttrib3(getUserData().getAccountId()); history.setAttrib4(getAccountData().getId()); history.setIdList1(addedPrivilegeIds); history.setClob1(addedPrivilegeNames.pack()); history.setIdList2(removedPrivilegeIds); history.setClob2(removedPrivilegeNames.pack()); }
/** * @see * com.ardais.bigr.iltds.btx.BTXDetails#populateFromHistoryRecord(com.ardais.bigr.iltds.btx.BTXHistoryRecord) */ public void populateFromHistoryRecord(BTXHistoryRecord history) { super.populateFromHistoryRecord(history); IdList addedPrivilegeIds = history.getIdList1(); StringList addedPrivilegeNames = new StringList(history.getClob1()); Iterator idIterator = addedPrivilegeIds.iterator(); Iterator nameIterator = addedPrivilegeNames.iterator(); List addedPrivileges = new ArrayList(); while (idIterator.hasNext() && nameIterator.hasNext()) { PrivilegeDto privilege = new PrivilegeDto(); privilege.setDescription((String) nameIterator.next()); privilege.setId((String) idIterator.next()); addedPrivileges.add(privilege); } IdList removedPrivilegeIds = history.getIdList2(); StringList removedPrivilegeNames = new StringList(history.getClob2()); idIterator = removedPrivilegeIds.iterator(); nameIterator = removedPrivilegeNames.iterator(); List removedPrivileges = new ArrayList(); while (idIterator.hasNext() && nameIterator.hasNext()) { PrivilegeDto privilege = new PrivilegeDto(); privilege.setDescription((String) nameIterator.next()); privilege.setId((String) idIterator.next()); removedPrivileges.add(privilege); } setObjectType(history.getAttrib1()); getUserData().setUserId(history.getAttrib2()); getUserData().setAccountId(history.getAttrib3()); getAccountData().setId(history.getAttrib4()); setAddedPrivileges(addedPrivileges); setRemovedPrivileges(removedPrivileges); // These fields don't correspond to anything in the history record // but we must set them anyways. setAssignedPrivileges(null); setAllPrivileges(null); setRoleBasedPrivileges(null); setSelectedPrivileges(null); setPrivilegeFilter(null); }