public boolean isEnableJacc() { ApplicationSecurityDomainConfig config = knownSecurityDomain == null ? null : knownSecurityDomain.apply(getSecurityDomain()); if (config != null) { return config.isEnableJacc(); } return false; }
Function<String, ApplicationSecurityDomainConfig> getKnownSecurityDomainFunction() { return name -> { synchronized (knownApplicationSecurityDomains) { for (ApplicationSecurityDomainConfig applicationSecurityDomainConfig : knownApplicationSecurityDomains) { if (applicationSecurityDomainConfig.isSameDomain(name)) { return applicationSecurityDomainConfig; } } } return null; }; } }
@Override protected void populateModel(OperationContext context, ModelNode operation, Resource resource) throws OperationFailedException { super.populateModel(context, operation, resource); ModelNode model = resource.getModel(); boolean enableJacc = false; if (model.hasDefined(ENABLE_JACC.getName())) { enableJacc = ENABLE_JACC.resolveModelAttribute(context, model).asBoolean(); } knownApplicationSecurityDomains.add(new ApplicationSecurityDomainConfig(context.getCurrentAddressValue(), enableJacc)); }
@Override protected void performRemove(OperationContext context, ModelNode operation, ModelNode model) throws OperationFailedException { super.performRemove(context, operation, model); HashSet<ApplicationSecurityDomainConfig> applicationSecurityDomainConfigs; synchronized (knownApplicationSecurityDomains) { applicationSecurityDomainConfigs = new HashSet<>(knownApplicationSecurityDomains); } for (ApplicationSecurityDomainConfig domain : applicationSecurityDomainConfigs) { if (domain.isSameDomain(context.getCurrentAddressValue())) { knownApplicationSecurityDomains.remove(domain); } } }