@Override protected boolean applyUpdateToRuntime(OperationContext context, ModelNode operation, String attributeName, ModelNode resolvedValue, ModelNode currentValue, org.jboss.as.controller.AbstractWriteAttributeHandler.HandbackHolder<Object> handbackHolder) throws OperationFailedException { if (attributeName.equals(LOG_BOOT.getName())) { handbackHolder.setHandback(auditLogger.isLogBoot()); auditLogger.setLogBoot(resolvedValue.asBoolean()); } else if (attributeName.equals(ENABLED.getName())) { handbackHolder.setHandback(auditLogger.getLoggerStatus()); boolean enabled = resolvedValue.asBoolean(); ManagedAuditLogger.Status status = enabled ? AuditLogger.Status.LOGGING : AuditLogger.Status.DISABLED; auditLogger.setLoggerStatus(status); } else if (attributeName.equals(LOG_READ_ONLY.getName())){ handbackHolder.setHandback(auditLogger.isLogReadOnly()); auditLogger.setLogReadOnly(resolvedValue.asBoolean()); } return false; }
@Override protected boolean applyUpdateToRuntime(OperationContext context, ModelNode operation, String attributeName, ModelNode resolvedValue, ModelNode currentValue, org.jboss.as.controller.AbstractWriteAttributeHandler.HandbackHolder<Object> handbackHolder) throws OperationFailedException { if (attributeName.equals(LOG_BOOT.getName())) { handbackHolder.setHandback(auditLogger.isLogBoot()); auditLogger.setLogBoot(resolvedValue.asBoolean()); } else if (attributeName.equals(ENABLED.getName())) { handbackHolder.setHandback(auditLogger.getLoggerStatus()); boolean enabled = resolvedValue.asBoolean(); ManagedAuditLogger.Status status = enabled ? AuditLogger.Status.LOGGING : AuditLogger.Status.DISABLED; auditLogger.setLoggerStatus(status); } else if (attributeName.equals(LOG_READ_ONLY.getName())){ handbackHolder.setHandback(auditLogger.isLogReadOnly()); auditLogger.setLogReadOnly(resolvedValue.asBoolean()); } return false; }
public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { final boolean wasReadOnly = auditLoggerProvider.isLogReadOnly(); final boolean wasLogBoot = auditLoggerProvider.isLogBoot(); final AuditLogger.Status oldStatus = auditLoggerProvider.getLoggerStatus(); auditLoggerProvider.setLogReadOnly(JmxAuditLoggerResourceDefinition.LOG_READ_ONLY.resolveModelAttribute(context, model).asBoolean()); auditLoggerProvider.setLogBoot(JmxAuditLoggerResourceDefinition.LOG_BOOT.resolveModelAttribute(context, model).asBoolean()); boolean enabled = JmxAuditLoggerResourceDefinition.ENABLED.resolveModelAttribute(context, model).asBoolean(); auditLoggerProvider.setLoggerStatus(enabled ? AuditLogger.Status.LOGGING : AuditLogger.Status.DISABLED); context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { auditLoggerProvider.setLogReadOnly(wasReadOnly); auditLoggerProvider.setLoggerStatus(oldStatus); auditLoggerProvider.setLogBoot(wasLogBoot); } }); } }, OperationContext.Stage.RUNTIME);
public void execute(final OperationContext context, final ModelNode operation) throws OperationFailedException { final boolean wasReadOnly = auditLoggerProvider.isLogReadOnly(); final boolean wasLogBoot = auditLoggerProvider.isLogBoot(); final AuditLogger.Status oldStatus = auditLoggerProvider.getLoggerStatus(); auditLoggerProvider.setLogReadOnly(JmxAuditLoggerResourceDefinition.LOG_READ_ONLY.resolveModelAttribute(context, model).asBoolean()); auditLoggerProvider.setLogBoot(JmxAuditLoggerResourceDefinition.LOG_BOOT.resolveModelAttribute(context, model).asBoolean()); boolean enabled = JmxAuditLoggerResourceDefinition.ENABLED.resolveModelAttribute(context, model).asBoolean(); auditLoggerProvider.setLoggerStatus(enabled ? AuditLogger.Status.LOGGING : AuditLogger.Status.DISABLED); context.completeStep(new OperationContext.RollbackHandler() { @Override public void handleRollback(OperationContext context, ModelNode operation) { auditLoggerProvider.setLogReadOnly(wasReadOnly); auditLoggerProvider.setLoggerStatus(oldStatus); auditLoggerProvider.setLogBoot(wasLogBoot); } }); } }, OperationContext.Stage.RUNTIME);