ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/jasper/runtime/JspApplicationContextImpl.java

Path
ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/jasper/runtime/JspApplicationContextImpl.java
Status
scanned
Type
file
Name
JspApplicationContextImpl.java
Extension
.java
Programming language
Java
Mime type
text/plain
File type
ASCII text, with CRLF line terminators
Tag

      
    
Rootfs path

      
    
Size
4323 (4.2 KB)
MD5
1aae7e5d49a2c994d691461f2d53daa4
SHA1
f12e54e5e091556c2f411f80e40614892cd11cf2
SHA256
04baccf8124120d74aee2cc8de278d8c61ba7ad74725b6658c4c563247adb4c2
SHA512

      
    
SHA1_git
c50acd6983a86362267db500b4f51037a67a0f2b
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
JspApplicationContextImpl.java | 4.2 KB |

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You 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 org.apache.jasper.runtime; import java.util.ArrayList; import java.util.List; import jakarta.el.ELContext; import jakarta.el.ELContextEvent; import jakarta.el.ELContextListener; import jakarta.el.ELResolver; import jakarta.el.ExpressionFactory; import jakarta.servlet.ServletContext; import jakarta.servlet.jsp.JspApplicationContext; import jakarta.servlet.jsp.JspContext; import org.apache.jasper.compiler.Localizer; import org.apache.jasper.el.ELContextImpl; import org.apache.jasper.el.JasperELResolver; /** * Implementation of JspApplicationContext. */ public class JspApplicationContextImpl implements JspApplicationContext { private static final String KEY = JspApplicationContextImpl.class.getName(); private final ExpressionFactory expressionFactory = ExpressionFactory.newInstance(); private final List<ELContextListener> contextListeners = new ArrayList<>(); private final List<ELResolver> resolvers = new ArrayList<>(); private boolean instantiated = false; private ELResolver resolver; public JspApplicationContextImpl() { } @Override public void addELContextListener(ELContextListener listener) { if (listener == null) { throw new IllegalArgumentException(Localizer.getMessage("jsp.error.nullArgument")); } this.contextListeners.add(listener); } public static JspApplicationContextImpl getInstance(ServletContext context) { if (context == null) { throw new IllegalArgumentException(Localizer.getMessage("jsp.error.nullArgument")); } JspApplicationContextImpl impl = (JspApplicationContextImpl) context.getAttribute(KEY); if (impl == null) { impl = new JspApplicationContextImpl(); context.setAttribute(KEY, impl); } return impl; } public ELContextImpl createELContext(JspContext context) { if (context == null) { throw new IllegalArgumentException(Localizer.getMessage("jsp.error.nullArgument")); } // create ELContext for JspContext final ELResolver r = this.createELResolver(); ELContextImpl ctx = new ELContextImpl(r); ctx.putContext(JspContext.class, context); // alert all ELContextListeners fireListeners(ctx); return ctx; } protected void fireListeners(ELContext elContext) { ELContextEvent event = new ELContextEvent(elContext); for (ELContextListener contextListener : this.contextListeners) { contextListener.contextCreated(event); } } private ELResolver createELResolver() { this.instantiated = true; if (this.resolver == null) { this.resolver = new JasperELResolver(this.resolvers, expressionFactory.getStreamELResolver()); } return this.resolver; } @Override public void addELResolver(ELResolver resolver) throws IllegalStateException { if (resolver == null) { throw new IllegalArgumentException(Localizer.getMessage("jsp.error.nullArgument")); } if (this.instantiated) { throw new IllegalStateException(Localizer.getMessage("jsp.error.cannotAddResolver")); } this.resolvers.add(resolver); } @Override public ExpressionFactory getExpressionFactory() { return expressionFactory; } }
Detected license expression
apache-2.0
Detected license expression (SPDX)
Apache-2.0
Percentage of license text
29.53
Copyrights

      
    
Holders

      
    
Authors

      
    
License detections License expression License expression SPDX
apache_2_0-4bde3f57-78aa-4201-96bf-531cba09e7de apache-2.0 Apache-2.0
URL Start line End line
http://www.apache.org/licenses/LICENSE-2.0 9 9