All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.sling.engine.EngineConstants Maven / Gradle / Ivy

There is a newer version: 2024.11.18751.20241128T090041Z-241100
Show newest version
/*
 * 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.sling.engine;

/**
 * The CoreConstants interface provides some symbolic constants for
 * well known constant strings in Sling. Even though these constants will never
 * change, it is recommended that applications refer to the symbolic constants
 * instead of code the strings themselves.
 */
public class EngineConstants {

    /**
     * The name of the framework property defining the Sling home directory
     * (value is "sling.home"). This is a Platform file system directory below
     * which all runtime data, such as the Felix bundle archives, logfiles, the
     * repository, etc., is located.
     * 

* This property is available calling the * BundleContext.getProperty(String) method. * * @see #SLING_HOME_URL * @deprecated Use * {@link org.apache.sling.settings.SlingSettingsService#SLING_HOME} */ @Deprecated public static final String SLING_HOME = "sling.home"; /** * The name of the framework property defining the Sling home directory as * an URL (value is "sling.home.url"). *

* The value of this property is assigned the value of * new File(${sling.home}).toURI().toString() before resolving * the property variables. *

* This property is available calling the * BundleContext.getProperty(String) method. * * @see #SLING_HOME * @deprecated Use * {@link org.apache.sling.settings.SlingSettingsService#SLING_HOME_URL} */ @Deprecated public static final String SLING_HOME_URL = "sling.home.url"; /** * The name of the request attribute providing the name of the currently * executing servlet (value is "sling.core.current.servletName"). This * attribute is set immediately before calling the * Servlet.service() method and reset to any previously stored * value after the service method returns. * * @deprecated Use * {@link org.apache.sling.api.SlingConstants#SLING_CURRENT_SERVLET_NAME} */ @Deprecated public static final String SLING_CURRENT_SERVLET_NAME = "sling.core.current.servletName"; /** * The name of the service registration property of a Servlet registered as * a service containing the name of the servlet (value is * "sling.core.servletName"). If this property is missing or empty, the * component.name property or the service.pid is * used. If none of the three properties is defined, the Servlet is ignored. * * @deprecated */ @Deprecated public static final String SLING_SERLVET_NAME = "sling.core.servletName"; /** * The javax.jcr.Session request attribute used to be set by * the SlingAuthenticator upon successfull authentication. with the * release of the Authentication Core 1.0.0 bundle, this request attribute * is not set any more. *

* Applications requiring access to the JCR Session must be modified to get * the Resource Resolver from the Sling request ( * SlingHttpServletRequest.getResourceResolver()) and adapt it * to the JCR Session. * * @deprecated as of bundle version 2.1 */ @Deprecated public static final String SESSION = "javax.jcr.Session"; /** * The name of the service to be used for registering filters with the * {@link SlingRequestProcessor}. * * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_NAME = "javax.servlet.Filter"; /** * The name of the service registration property of a * java.servlet.Filter service to be used as a filter by the * {@link SlingRequestProcessor}. *

* The specification of the filter.scope service registration * property is required for a javax.servlet.Filter service to * be used as a filter by the Sling Engine. *

* The filter.scope registration property is expected to be a * scalar String, an array of Strings or a Vector of Strings. Case of the * value is ignored. * * @see #FILTER_SCOPE_COMPONENT * @see #FILTER_SCOPE_ERROR * @see #FILTER_SCOPE_FORWARD * @see #FILTER_SCOPE_INCLUDE * @see #FILTER_SCOPE_REQUEST * @since 2.1, Sling Engine 2.2 * @deprecated Use {@link #SLING_FILTER_SCOPE} instead */ @Deprecated public static final String FILTER_SCOPE = "filter.scope"; /** * The name of the service registration property of a * java.servlet.Filter service to be used as a filter by the * {@link SlingRequestProcessor}. *

* The specification of the sling.filter.scope service registration * property is required for a javax.servlet.Filter service to * be used as a filter by the Sling Engine. *

* The sling.filter.scope registration property is expected to be a * scalar String, an array of Strings or a Vector of Strings. Case of the * value is ignored. * * @see #FILTER_SCOPE_COMPONENT * @see #FILTER_SCOPE_ERROR * @see #FILTER_SCOPE_FORWARD * @see #FILTER_SCOPE_INCLUDE * @see #FILTER_SCOPE_REQUEST * @since 2.1, Sling Engine 2.2 */ public static final String SLING_FILTER_SCOPE = "sling.filter.scope"; /** * Regular expression pattern for enabling a filter on a matching path * This refers to both, the request path and the resolved resource path excluding selectors, * extension and suffix. */ public static final String SLING_FILTER_PATTERN = "sling.filter.pattern"; /** * Regular expression pattern for enabling a filter on a matching request path * This refers to the resolved resource path excluding selectors, * extension and suffix. * @since 2.4.0, Sling Engine 2.7.0 */ public static final String SLING_FILTER_RESOURCE_PATTERN = "sling.filter.resource.pattern"; /** * Regular expression pattern for enabling a filter on a matching request path * This refers to the request path excluding selectors, * extension and suffix. * @since 2.4.0, Sling Engine 2.7.0 */ public static final String SLING_FILTER_REQUEST_PATTERN = "sling.filter.request.pattern"; /** * Regular expression pattern for enabling a filter on a matching request suffix *@since Sling Engine 2.7 */ public static final String SLING_FILTER_SUFFIX_PATTERN = "sling.filter.suffix.pattern"; /** * Set of selectors enabling a filter if contains one or more request selectors *@since Sling Engine 2.7 */ public static final String SLING_FILTER_SELECTORS = "sling.filter.selectors"; /** * Set of methods enabling a filter on contains request method *@since Sling Engine 2.7 */ public static final String SLING_FILTER_METHODS = "sling.filter.methods"; /** * Set of resource types enabling a filter if contains request resource type *@since Sling Engine 2.7 */ public static final String SLING_FILTER_RESOURCETYPES = "sling.filter.resourceTypes"; /** * Set of extensions enabling a filter if contains request extension *@since Sling Engine 2.7 */ public static final String SLING_FILTER_EXTENSIONS = "sling.filter.extensions"; /** * Filter scope value identifying a component level filter. *

* Component level filters are called once at the beginning of each request * (after the {@link #FILTER_SCOPE_REQUEST} filters) and for each resource * being included or forwarded. The order of calling the filters is defined * by the service.ranking (or {@link #FILTER_ORDER}) property * and the service registration ID. * * @see #SLING_FILTER_SCOPE * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_SCOPE_COMPONENT = "COMPONENT"; /** * Filter scope value identifying an error level filter. *

* Error level filters are called before calling the * {@link org.apache.sling.api.servlets.ErrorHandler} due to either a * HttpServletResponse.sendError call or due to an uncaught * Throwable. The order of calling the filters is defined by * the service.ranking (or {@link #FILTER_ORDER}) property and * the service registration ID. * * @see #FILTER_SCOPE * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_SCOPE_ERROR = "ERROR"; /** * Filter scope value identifying an include level filter. *

* Include level filters are called before the script handling an included * resource is called. A resource is considered included if it rendered as a * result of calling RequestDispatcher.include. This may also * be induced by any JSP tags causing the * RequestDispatcher.include method being called, e.g. * <sling:include>. The order of calling the filters is * defined by the service.ranking (or {@link #FILTER_ORDER}) * property and the service registration ID. * * @see #FILTER_SCOPE * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_SCOPE_INCLUDE = "INCLUDE"; /** * Filter scope value identifying a forward level filter. *

* Forward level filters are called before the script handling a forwarded * resource is called. A resource is considered forwarded if it rendered as * a result of calling RequestDispatcher.forward. This may also * be induced by any JSP tags causing the * RequestDispatcher.forward method being called, e.g. * <sling:forward>. The order of calling the filters is * defined by the service.ranking (or {@link #FILTER_ORDER}) * property and the service registration ID. * * @see #FILTER_SCOPE * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_SCOPE_FORWARD = "FORWARD"; /** * Filter scope value identifying a request level filter. *

* Request level filters are called once at the beginning of each request. * The order of calling the filters is defined by the * service.ranking (or {@link #FILTER_ORDER}) property and the * service registration ID. * * @see #FILTER_SCOPE * @since 2.1, Sling Engine 2.2 */ public static final String FILTER_SCOPE_REQUEST = "REQUEST"; /** * The name of the service registration property previously used to place an * order amongst filters. Starting with the Sling Engine 2.2, filters should * be registered with a standard service.ranking service * property to implement filter ordering. *

* If a service is registered with both a service.ranking and a * filter.order property, the service.ranking * property is used for ordering. If only a filter.order * property is used it is currently still used. * * @since 2.1, Sling Engine 2.2 * @deprecated Use "service.ranking" * (org.osgi.framework.Constants.SERVICE_RANKING) instead */ @Deprecated public static final String FILTER_ORDER = "filter.order"; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy