@Override protected SecurityHandler buildSecurityHandler() { if( constraintServices != null ) { ConstraintSecurityHandler securityHandler = new ConstraintSecurityHandler(); for( ConstraintService eachConstraintService : constraintServices ) { ConstraintMapping csMapping = eachConstraintService.buildConstraintMapping(); if( csMapping != null ) { securityHandler.addConstraintMapping( csMapping ); } } if( !securityHandler.getConstraintMappings().isEmpty() ) { return securityHandler; } } return super.buildSecurityHandler(); }
@Override protected SecurityHandler buildSecurityHandler() { if( constraintServices != null ) { ConstraintSecurityHandler securityHandler = new ConstraintSecurityHandler(); for( ConstraintService eachConstraintService : constraintServices ) { ConstraintMapping csMapping = eachConstraintService.buildConstraintMapping(); if( csMapping != null ) { securityHandler.addConstraintMapping( csMapping ); } } if( !securityHandler.getConstraintMappings().isEmpty() ) { return securityHandler; } } return super.buildSecurityHandler(); }
@Override protected SecurityHandler buildSecurityHandler() { if( constraintServices != null ) { ConstraintSecurityHandler securityHandler = new ConstraintSecurityHandler(); for( ConstraintService eachConstraintService : constraintServices ) { ConstraintMapping csMapping = eachConstraintService.buildConstraintMapping(); if( csMapping != null ) { securityHandler.addConstraintMapping( csMapping ); } } if( !securityHandler.getConstraintMappings().isEmpty() ) { return securityHandler; } } return super.buildSecurityHandler(); }
@Override public void removeSecurityConstraintMappings( final SecurityConstraintMappingModel model) { final ServletContextHandler context = server.getContext(model .getContextModel().getHttpContext()); if (context == null) { return; // context already gone } final SecurityHandler securityHandler = context.getSecurityHandler(); if (securityHandler == null) { throw new IllegalStateException( "Internal error: Cannot find the security handler. Please report."); } List<ConstraintMapping> constraintMappings = ((ConstraintSecurityHandler) securityHandler) .getConstraintMappings(); for (ConstraintMapping constraintMapping : constraintMappings) { boolean urlMatch = constraintMapping.getPathSpec() .equalsIgnoreCase(model.getUrl()); boolean methodMatch = (constraintMapping.getMethod() == null && model.getMapping() == null) || (constraintMapping.getMethod().equalsIgnoreCase(model.getMapping())); if (urlMatch && methodMatch) { constraintMappings.remove(constraintMapping); } } removeContext(model.getContextModel().getHttpContext()); }