示例#1
0
 /**
  * Process all global ACI attribute types found in the configuration entry and adds them to that
  * ACI list cache. It also logs messages about the number of ACI attribute types added to the
  * cache. This method is called once at startup. It also will put the server into lockdown mode if
  * needed.
  *
  * @param configuration The config handler containing the ACI configuration information.
  * @throws InitializationException If there is an error reading the global ACIs from the
  *     configuration entry.
  */
 private void processGlobalAcis(DseeCompatAccessControlHandlerCfg configuration)
     throws InitializationException {
   SortedSet<Aci> globalAcis = configuration.getGlobalACI();
   try {
     if (globalAcis != null) {
       aciList.addAci(DN.nullDN(), globalAcis);
       Message message = INFO_ACI_ADD_LIST_GLOBAL_ACIS.get(Integer.toString(globalAcis.size()));
       logError(message);
     }
   } catch (Exception e) {
     if (debugEnabled()) {
       TRACER.debugCaught(DebugLogLevel.ERROR, e);
     }
     Message message =
         INFO_ACI_HANDLER_FAIL_PROCESS_GLOBAL_ACI.get(String.valueOf(configuration.dn()));
     throw new InitializationException(message, e);
   }
 }
示例#2
0
 /** {@inheritDoc} */
 @Override()
 public void initializeAccessControlHandler(DseeCompatAccessControlHandlerCfg configuration)
     throws ConfigException, InitializationException {
   initStatics();
   DN configurationDN = configuration.dn();
   aciList = new AciList(configurationDN);
   aciListenerMgr = new AciListenerManager(aciList, configurationDN);
   processGlobalAcis(configuration);
   processConfigAcis();
   DirectoryServer.registerSupportedControl(OID_GET_EFFECTIVE_RIGHTS);
 }