org.apache.sling.engine.EngineConstants Maven / Gradle / Ivy
Show all versions of aem-sdk-api Show documentation
/*
* 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";
}