cat.debug(">matchInformation");
log.debug(">matchInformation");
       private int matchInformation(AdminInformation admininformation){          cat.debug(">matchInformation");          final int ACCESSRULE = 0;          final int USERGROUP  = 1;          int state     = STATE_UNKNOWN;          int stateprio = 0;          Object[] accessuserpair;          AdminEntity[] adminentities;                     for (int i = 0; i < useraccesspairs.size();i++){             accessuserpair = (Object[]) useraccesspairs.elementAt(i);            adminentities = ((AdminGroup) accessuserpair[USERGROUP]).getAdminEntities();            for(int j = 0; j < adminentities.length;j++){              // If user entity match.              if(adminentities[j].match(admininformation)){                int thisuserstate = ((AccessRule) accessuserpair[ACCESSRULE]).getRuleState();                int thisuserstateprio = adminentities[j].getPriority();                // If rule has higher priority, it's state is to be used.                if( stateprio < thisuserstateprio){                   state=thisuserstate;                   stateprio=thisuserstateprio;                }                else{                  if( stateprio == thisuserstateprio){                    // If the priority is the same then decline has priority over accept.                    if(state < thisuserstate){                        state=thisuserstate;                    }                  }                }              }            }          }          cat.debug("<matchInformation: returns " + state );          return state;       }