@Override
 Status doEvaluation(
     final PersonPE person,
     final List<RoleWithIdentifier> allowedRoles,
     final ProjectUpdatesDTO updates) {
   assert groupPredicate.initialized : "Predicate has not been initialized";
   Status status;
   status = groupPredicate.doEvaluation(person, allowedRoles, updates.getIdentifier());
   if (status.equals(Status.OK) == false) {
     return status;
   }
   String newGroupCode = updates.getGroupCode();
   if (newGroupCode != null) {
     GroupIdentifier newGroupIdentifier =
         new GroupIdentifier(updates.getIdentifier().getDatabaseInstanceCode(), newGroupCode);
     status = groupPredicate.doEvaluation(person, allowedRoles, newGroupIdentifier);
   }
   return status;
 }
 public final void init(IAuthorizationDataProvider provider) {
   groupPredicate.init(provider);
 }