Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source.
   * Copyright 2012 Red Hat, Inc., and individual contributors
   * as indicated by the @author tags.
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package io.undertow.servlet.spec;
 
 import java.util.Map;
 import java.util.Set;
 
 
 
 import static javax.servlet.annotation.ServletSecurity.TransportGuarantee.CONFIDENTIAL;

Author(s):
Stuart Douglas
 
 
     private final ServletInfo servletInfo;
     private final Deployment deployment;
 
     public ServletRegistrationImpl(final ServletInfo servletInfofinal Deployment deployment) {
         this. = servletInfo;
         this. = deployment;
     }
 
     @Override
     public void setLoadOnStartup(final int loadOnStartup) {
         .setLoadOnStartup(loadOnStartup);
     }
 
     @Override
     public Set<StringsetServletSecurity(final ServletSecurityElement constraint) {
         if (constraint == null) {
             throw ..argumentCannotBeNull("constraint");
         }
         DeploymentInfo deploymentInfo = .getDeploymentInfo();
 
         //this is not super efficient, but it does not really matter
         final Set<StringurlPatterns = new HashSet<String>();
         for (SecurityConstraint sc : deploymentInfo.getSecurityConstraints()) {
             for (WebResourceCollection webResources : sc.getWebResourceCollections()) {
                 urlPatterns.addAll(webResources.getUrlPatterns());
             }
         }
         final Set<Stringret = new HashSet<String>();
         for (String url : .getMappings()) {
             if (urlPatterns.contains(url)) {
                 ret.add(url);
             }
         }
         ServletSecurityInfo info = new ServletSecurityInfo();
         .setServletSecurityInfo(info);
                 .setEmptyRoleSemantic(emptyRoleSemantic(constraint.getEmptyRoleSemantic()))
                 .addRolesAllowed(constraint.getRolesAllowed());
 
         for (final HttpMethodConstraintElement methodConstraint : constraint.getHttpMethodConstraints()) {
             info.addHttpMethodSecurityInfo(new HttpMethodSecurityInfo()
                     .setTransportGuaranteeType(methodConstraint.getTransportGuarantee() ==  ? . : .)
                     .setMethod(methodConstraint.getMethodName())
                     .setEmptyRoleSemantic(emptyRoleSemantic(methodConstraint.getEmptyRoleSemantic()))
                     .addRolesAllowed(methodConstraint.getRolesAllowed()));
         }
         return ret;
     }
 
        switch (emptyRoleSemantic) {
            case :
                return .;
            case :
                return .;
            default:
                return null;
        }
    }
    @Override
    public void setMultipartConfig(final MultipartConfigElement multipartConfig) {
        .setMultipartConfig(multipartConfig);
    }
    @Override
    public void setRunAsRole(final String roleName) {
        .setRunAs(roleName);
    }
    @Override
    public void setAsyncSupported(final boolean isAsyncSupported) {
        .setAsyncSupported(isAsyncSupported);
    }
    @Override
    public Set<StringaddMapping(final String... urlPatterns) {
        DeploymentInfo deploymentInfo = .getDeploymentInfo();
        final Set<Stringret = new HashSet<String>();
        final Set<Stringexisting = new HashSet<String>();
        for (ServletInfo s : deploymentInfo.getServlets().values()) {
            if (!s.getName().equals(.getName())) {
                existing.addAll(s.getMappings());
            }
        }
        for (String pattern : urlPatterns) {
            if (existing.contains(pattern)) {
                ret.add(pattern);
            }
        }
        //only update if no changes have been made
        if (ret.isEmpty()) {
            for (String pattern : urlPatterns) {
                if (!.getMappings().contains(pattern)) {
                    .addMapping(pattern);
                }
            }
        }
        return ret;
    }
    @Override
    public Collection<StringgetMappings() {
        return .getMappings();
    }
    @Override
    public String getRunAsRole() {
        return .getRunAs();
    }
    @Override
    public String getName() {
        return .getName();
    }
    @Override
    public String getClassName() {
        return .getServletClass().getName();
    }
    @Override
    public boolean setInitParameter(final String namefinal String value) {
        if (.getInitParams().containsKey(name)) {
            return false;
        }
        .addInitParam(namevalue);
        return true;
    }
    @Override
    public String getInitParameter(final String name) {
        return .getInitParams().get(name);
    }
    @Override
    public Set<StringsetInitParameters(final Map<StringStringinitParameters) {
        final Set<Stringret = new HashSet<String>();
        for (Map.Entry<StringStringentry : initParameters.entrySet()) {
            if (!setInitParameter(entry.getKey(), entry.getValue())) {
                ret.add(entry.getKey());
            }
        }
        return ret;
    }
    @Override
    public Map<StringStringgetInitParameters() {
        return .getInitParams();
    }
New to GrepCode? Check out our FAQ X