/* * Copyright 2004-2012 the Seasar Foundation and the Others. * * 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 org.seasar.mayaa.cycle.scope; import java.io.Serializable; import java.util.Locale; import org.seasar.mayaa.ContextAware; /** * リクエストレベルのスコープ。 * @author Masataka Kurihara (Gluegent, Inc.) */ public interface RequestScope extends Serializable, AttributeScope, ContextAware { /** * WEBアプリケーションコンテキストのパス部を返す。 * @return コンテキストパス。 */ String getContextPath(); /** * リクエストされたパス文字列を取得する。 * @return パス文字列。 */ String getRequestedPath(); /** * リクエストされたページ名を取得する。 * @return リクエストページ名。 */ String getPageName(); /** * リクエストで強制されるページ接尾辞を取得する。 * @return リクエスト接尾辞、もしくはnull。 */ String getRequestedSuffix(); /** * リクエストされたページ拡張子を取得する。 * @return リクエスト拡張子。 */ String getExtension(); /** * リクエストされたパスより類推できるMIME型を返す。 * @return リクエストされたパスから類推されるMIME型。 */ String getMimeType(); /** * リクエストのロケールを返す。 * @return リクエストロケール。 */ Locale[] getLocales(); /** * リクエストパラメータを含むスコープを取得する。内包するオブジェクトはStringの配列。 * @return クエリパラメータスコープ。 */ AttributeScope getParamValues(); /** * リクエストヘッダを含むスコープを取得する。内包するオブジェクトはStringの配列。 * @return クエリパラメータスコープ。 */ AttributeScope getHeaderValues(); /** * このリクエストは他からforwardされたものかを判定する。 * @return 他からforwardされたならtrue * @since 1.1.8 */ boolean isForwarded(); }