/**
  * Check if an update is required
  * @return 
  * @param string $a_username
  */
 protected function updateRequired($a_username)
 {
     if (!ilObjUser::_checkExternalAuthAccount("apache", $a_username)) {
         return true;
     }
     // Check attribute mapping on login
     include_once './Services/LDAP/classes/class.ilLDAPAttributeMapping.php';
     if (ilLDAPAttributeMapping::hasRulesForUpdate($this->server->getServerId())) {
         #$GLOBALS['ilLog']->write(__METHOD__.': Required 2');
         return true;
     }
     include_once './Services/LDAP/classes/class.ilLDAPRoleAssignmentRule.php';
     if (ilLDAPRoleAssignmentRule::hasRulesForUpdate()) {
         #$GLOBALS['ilLog']->write(__METHOD__.': Required 3');
         return true;
     }
     return false;
 }
 /**
  * Check if an update is required
  * @return bool
  */
 protected function isUpdateRequired()
 {
     if (!$this->getInternalAccount()) {
         return true;
     }
     // Check attribute mapping on login
     include_once './Services/LDAP/classes/class.ilLDAPAttributeMapping.php';
     if (ilLDAPAttributeMapping::hasRulesForUpdate($this->getServer()->getServerId())) {
         return true;
     }
     // Check if there is any change in role assignments
     include_once './Services/LDAP/classes/class.ilLDAPRoleAssignmentRule.php';
     if (ilLDAPRoleAssignmentRule::hasRulesForUpdate()) {
         return true;
     }
     return false;
 }