@Override public void removeHandler(String name) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.removeHandler(name); runDisabledFastPath.set(false); } finally { config.unlock(); } }
void replaceHandler(AuditLogHandler handler){ assert config.isCore() : "Not available for non-core configuration"; if (addedHandlers != null && addedHandlers.containsKey(handler.getName())){ //We may have added say a syslog-handler, and end up here as part of adding its protocol in a separate step addHandler(handler); return; } if (replacedHandlers == null){ replacedHandlers = new HashMap<String, AuditLogHandler>(); } replacedHandlers.put(handler.getName(), handler); }
@Override public void addHandlerReference(PathAddress referenceAddress) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandlerReference(referenceAddress); runDisabledFastPath.set(false); } finally { config.unlock(); } }
@Override public void updateHandler(AuditLogHandler handler) { config.lock(); try { AuditLogHandler existing = config.getConfiguredHandler(handler.getName()); if (handler.isDifferent(existing)){ if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.replaceHandler(handler); runDisabledFastPath.set(false); } } finally { config.unlock(); } }
@Override public void updateHandler(AuditLogHandler handler) { config.lock(); try { AuditLogHandler existing = config.getConfiguredHandler(handler.getName()); if (handler.isDifferent(existing)){ if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.replaceHandler(handler); runDisabledFastPath.set(false); } } finally { config.unlock(); } }
@Override public void updateHandler(AuditLogHandler handler) { config.lock(); try { AuditLogHandler existing = config.getConfiguredHandler(handler.getName()); if (handler.isDifferent(existing)){ if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.replaceHandler(handler); } } finally { config.unlock(); } }
/** Call with lock taken */ private void applyHandlerUpdates() { if (handlerUpdateTask != null) { handlerUpdateTask.applyChanges(); handlerUpdateTask = null; } }
@Override public void rollbackChanges() { config.lock(); try { if (handlerUpdateTask != null){ handlerUpdateTask.rollbackChanges(); handlerUpdateTask = null; } } finally { config.unlock(); } }
@Override public void addHandler(AuditLogHandler handler) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandler(handler); runDisabledFastPath.set(false); } finally { config.unlock(); } }
@Override public void removeHandler(String name) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.removeHandler(name); runDisabledFastPath.set(false); } finally { config.unlock(); } }
@Override public void addHandler(AuditLogHandler handler) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandler(handler); runDisabledFastPath.set(false); } finally { config.unlock(); } }
void replaceHandler(AuditLogHandler handler){ assert config.isCore() : "Not available for non-core configuration"; if (addedHandlers != null && addedHandlers.containsKey(handler.getName())){ //We may have added say a syslog-handler, and end up here as part of adding its protocol in a separate step addHandler(handler); return; } if (replacedHandlers == null){ replacedHandlers = new HashMap<String, AuditLogHandler>(); } replacedHandlers.put(handler.getName(), handler); }
@Override public void removeHandlerReference(PathAddress referenceAddress) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.removeHandlerReference(referenceAddress); } finally { config.unlock(); } }
@Override public void addHandlerReference(PathAddress referenceAddress) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandlerReference(referenceAddress); runDisabledFastPath.set(false); } finally { config.unlock(); } }
@Override public void removeHandlerReference(PathAddress referenceAddress) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.removeHandlerReference(referenceAddress); runDisabledFastPath.set(false); } finally { config.unlock(); } }
@Override public void rollbackChanges() { config.lock(); try { if (handlerUpdateTask != null){ handlerUpdateTask.rollbackChanges(); handlerUpdateTask = null; } } finally { config.unlock(); } }
@Override public void addHandlerReference(PathAddress referenceAddress) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandlerReference(referenceAddress); } finally { config.unlock(); } }
@Override public void addHandler(AuditLogHandler handler) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.addHandler(handler); } finally { config.unlock(); } }
@Override public void removeHandler(String name) { config.lock(); try { if (handlerUpdateTask == null){ handlerUpdateTask = new HandlerUpdateTask(); } handlerUpdateTask.removeHandler(name); } finally { config.unlock(); } }
/** Call with lock taken */ private void applyHandlerUpdates() { if (handlerUpdateTask != null) { handlerUpdateTask.applyChanges(); handlerUpdateTask = null; } }