/* * 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.api.request; import javax.servlet.ServletContext; import javax.servlet.ServletRequest; /** * represents an event published by the Sling engine while * dispatching a request. * <p> * This class is not intended to be extended or instantiated by clients. * * @see org.apache.sling.api.request.SlingRequestListener * @since 2.1.0 (Sling API Bundle 2.1.0) */ public class SlingRequestEvent { private final ServletContext sc; private final ServletRequest request; private final EventType type; /** * type of the event */ public enum EventType { EVENT_INIT, EVENT_DESTROY }; public SlingRequestEvent (ServletContext sc, ServletRequest request, EventType type ) { this.sc = sc; this.request = request; this.type = type; } /** * Gets the actual servlet context object as <code>ServletContext</code> * @return the actual servlet context. */ public ServletContext getServletContext() { return sc; } /** * Gets the actual request object as <code>ServletRequest</code> * @return the actual request object as <code>ServletRequest</code> */ public ServletRequest getServletRequest() { return request; } /** * get the type of the event, eg. EVENT_INIT or EVENT_DESTROY * @return the type of the event as <code>EventType</code>, * eg. EVENT_INIT or EVENT_DESTROY */ public EventType getType () { return type; } }