概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## feat.v1
クラス ContextAccessor

    java.lang.Object
      feat.v1.ContextAccessor

public class ContextAccessor
extends java.lang.Object

コンテキストへのアクセスを統一するためのクラス。

作成者:
  SUGIMOTO Ken-ichi

フィールドの概要
`protected static Log` | `log`
`static int` | `SCOPE_APPLICATION`
`static int` | `SCOPE_PARAM`
`static int` | `SCOPE_REQUEST`
`static int` | `SCOPE_SESSION`

コンストラクタの概要
`ContextAccessor(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, java.lang.String featureName, java.lang.String commandName)`

メソッドの概要
`java.lang.Object` | `getAttribute(int scope, java.lang.String name)` 属性を取得する。
`java.lang.Object` | `getAttribute(int scope, java.lang.String name, java.lang.String path)` 属性を取得する。
`java.lang.Object` | `getAttribute(java.lang.String path)` 属性を取得する。
`CommandDeclaration` | `getCurrentCommandDeclaration()`
`FeatureDeclaration` | `getCurrentFeatureDeclaration()`
`java.lang.String` | `getEncoding()` 現在のエンコーディング設定を返す。
`java.lang.Exception` | `getException()` リクエストの処理中に起きた例外を返す。
`FeatConfig` | `getFeatConfig()`
`FeatureErrors` | `getFeatureErrors()` このリクエストの処理中に発生したエラーのリストを返す。
`java.util.Locale` | `getLocale()` 現在のスコープのロケールを取得する。
`java.util.Map` | `getMappedValue(java.lang.String path)` 指定パスのオブジェクトをMapインタフェースでラップして返す。
`java.lang.String` | `getParameter(java.lang.String name)` リクエストパラメータの値を返す。
`java.lang.String[]` | `getParameterNames()` リクエストパラメータの名前を格納した配列を返す。
`java.lang.String[]` | `getParameterValues(java.lang.String name)` リクエストパラメータの値を返す。
`HttpServletRequest` | `getRequest()`
`HttpServletResponse` | `getResponse()`
`ServletContext` | `getServletContext()`
`HttpSession` | `getSession()`
`java.lang.String` | `getStringResource(FeatureDeclaration featureDecl, java.lang.String name)` 指定フィーチャーからリソース文字列を取得する。
`java.lang.String` | `getStringResource(FeatureDeclaration featureDecl, java.lang.String name, java.util.Locale locale)` リソース文字列を取得する。
`java.lang.String` | `getStringResource(java.lang.String name)` 現在のロケールのリソース文字列を返す。
`void` | `setAttribute(int scope, java.lang.String name, java.lang.Object value)` 属性をセットする。
`void` | `setException(java.lang.Exception ex)` リクエストの処理中に起きた例外をセットする。
`void` | `setLocale(java.util.Locale locale)` このセッションのロケールを変更する。

クラス java.lang.Object から継承したメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

フィールドの詳細

### log

    protected static Log log

### SCOPE_PARAM

    public static final int SCOPE_PARAM

関連項目:
  定数フィールド値

### SCOPE_REQUEST

    public static final int SCOPE_REQUEST

関連項目:
  定数フィールド値

### SCOPE_SESSION

    public static final int SCOPE_SESSION

関連項目:
  定数フィールド値

### SCOPE_APPLICATION

    public static final int SCOPE_APPLICATION

関連項目:
  定数フィールド値

コンストラクタの詳細

### ContextAccessor

    public ContextAccessor(ServletContext servletContext,
                           HttpServletRequest request,
                           HttpServletResponse response,
                           java.lang.String featureName,
                           java.lang.String commandName)
                    throws FeatException

パラメータ:
  `servletContext` - ServletContext
  `request` - HttpServletRequest
  `response` - HttpServletResponse
  `featureName` - 現在のリクエストのフィーチャー名。リクエストURIから取り出した文字列。
  `commandName` - 現在のリクエストのコマンド名。リクエストURIから取り出した文字列。
例外:
  `FeatException` - FeatConfigオブジェクト、フィーチャー定義またはコマンド定義が見つからない

メソッドの詳細

### getRequest

    public HttpServletRequest getRequest()

### getResponse

    public HttpServletResponse getResponse()

### getServletContext

    public ServletContext getServletContext()

### getFeatConfig

    public FeatConfig getFeatConfig()

### getCurrentFeatureDeclaration

    public FeatureDeclaration getCurrentFeatureDeclaration()

### getCurrentCommandDeclaration

    public CommandDeclaration getCurrentCommandDeclaration()

### getSession

    public HttpSession getSession()
                           throws HTTPSessionException

  例外:
    `HTTPSessionException`

### getFeatureErrors

    public FeatureErrors getFeatureErrors()

  このリクエストの処理中に発生したエラーのリストを返す。

  戻り値:
    FeatureErrors

### getParameterNames

    public java.lang.String[] getParameterNames()

  リクエストパラメータの名前を格納した配列を返す。 リクエストパラメータがない場合は空の配列を返す。

  戻り値:

### getParameter

    public java.lang.String getParameter(java.lang.String name)

  リクエストパラメータの値を返す。 パラメータに複数の値が含まれるときは最初の一つを返す。

  パラメータ:
    `name` -
  戻り値:
    パラメータが無いときはnull
  関連項目:
    `javax.servlet.ServletRequest#getParameter(java.lang.String)`

### getParameterValues

    public java.lang.String[] getParameterValues(java.lang.String name)

  リクエストパラメータの値を返す。

  パラメータ:
    `name` -
  戻り値:
  関連項目:
    `javax.servlet.ServletRequest#getParameterValues(java.lang.String)`

### getMappedValue

    public java.util.Map getMappedValue(java.lang.String path)
                                 throws ContextAttributeAccessException,
                                        HTTPSessionException

  指定パスのオブジェクトをMapインタフェースでラップして返す。 "param"を指定するとリクエストパラメータのマップ(値はString[]型)、 それ以外のときはオブジェクトのプロパティのマップを返す。 オブジェクトのパスは "スコープ名:属性名.プロパティのパス" の形式。 プロパティのパスは無くても良い。

  戻り値:
    指定パスのオブジェクトのプロパティマップ
  例外:
    `ContextAttributeAccessException` - paramスコープの後ろに属性名を指定した。 または存在しないスコープを指定した。
    `HTTPSessionException` - セッションを開始できなかった

### getAttribute

    public java.lang.Object getAttribute(int scope,
                                         java.lang.String name)
                                  throws HTTPSessionException,
                                         ContextAttributeAccessException

  属性を取得する。 スコープにSCOPE_PARAMを指定したときは単一の値のみ取得できる。 リクエストパラメータが複数の値を持つ場合は最初の一つだけを返す。

  パラメータ:
    `scope` - SCOPE_PARAM, SCOPE_REQUEST, SCOPE_SESSION, SCOPE_APPLICATIONの定数のどれか。
    `name` - 属性の名前
  戻り値:
    属性の値。名前に対応した値がなければnullを返す
  例外:
    `HTTPSessionException` - セッションを開始できなかった
    `ContextAttributeAccessException` - 存在しないスコープを指定した

### getAttribute

    public java.lang.Object getAttribute(int scope,
                                         java.lang.String name,
                                         java.lang.String path)
                                  throws HTTPSessionException,
                                         ContextAttributeAccessException

  属性を取得する。
  ネストした名前を指定できるので、オブジェクトツリーの中から任意のオブジェクトを取得することができる。
  例えば
  ((Foo)session.getAttribute("user")).getName().getFirstName();
  は、このメソッドでは
  getAttribute(SCOPE_SESSION, "user", "name.firstName");
  と書くことができる。

  パラメータ:
    `scope` - SCOPE_PARAM, SCOPE_REQUEST, SCOPE_SESSION, SCOPE_APPLICATIONの定数のどれか。
    `name` - 属性の名前
    `path` - オブジェクトのプロパティ名。ネストした名前でも良い。
  戻り値:
    属性の値。名前に対応した値がなければnullを返す
  例外:
    `HTTPSessionException` - セッションを開始できなかった
    `ContextAttributeAccessException` - 存在しないスコープを指定した

### getAttribute

    public java.lang.Object getAttribute(java.lang.String path)
                                  throws ContextAttributeAccessException,
                                         HTTPSessionException

  属性を取得する。
  ネストした名前を指定できるので、オブジェクトツリーの中から任意のオブジェクトを取得することができる。
  例えば
  ((Foo)session.getAttribute("user")).getName().getFirstName();
  は、このメソッドでは
  getAttribute("session:user.name.firstName");
  と書くことができる。

  パラメータ:
    `path` - "スコープ名:属性名"
  戻り値:
    Object
  例外:
    `HTTPSessionException` - セッションを開始できなかった
    `ContextAttributeAccessException` - 存在しないスコープを指定した

### setAttribute

    public void setAttribute(int scope,
                             java.lang.String name,
                             java.lang.Object value)
                      throws HTTPSessionException,
                             ContextAttributeAccessException

  属性をセットする。

  パラメータ:
    `scope` - SCOPE_REQUEST, SCOPE_SESSION, SCOPE_APPLICATIONの定数のどれか。
    `name` - 属性の名前
    `value` - 属性の値
  例外:
    `HTTPSessionException`
    `ContextAttributeAccessException`

### getStringResource

    public java.lang.String getStringResource(java.lang.String name)

  現在のロケールのリソース文字列を返す。

  パラメータ:
    `name` - String
  戻り値:
    String

### getStringResource

    public java.lang.String getStringResource(FeatureDeclaration featureDecl,
                                              java.lang.String name)

  指定フィーチャーからリソース文字列を取得する。 ロケールはHTTPセッションに保存された言語設定、HTTPヘッダのAccept-Languageから得られたものを使用する。

  関連項目:
    `setLocale(Locale)`, `getLocale()`

### getStringResource

    public java.lang.String getStringResource(FeatureDeclaration featureDecl,
                                              java.lang.String name,
                                              java.util.Locale locale)

  リソース文字列を取得する。

### getEncoding

    public java.lang.String getEncoding()

  現在のエンコーディング設定を返す。 エンコーディングはリクエストからパラメータを取得するときに参照される。 コマンド、フィーチャーの順で検索される。どちらにも定義されていないときはnull。

  戻り値:
    String

### setLocale

    public void setLocale(java.util.Locale locale)
                   throws HTTPSessionException

  このセッションのロケールを変更する。

  パラメータ:
    `locale` -
  例外:
    `HTTPSessionException`

### getLocale

    public java.util.Locale getLocale()

  現在のスコープのロケールを取得する。 ロケールの検索順は セッション -> HTTPヘッダ(Accept-Language) -> JVMのデフォルトロケール。

  戻り値:

### setException

    public void setException(java.lang.Exception ex)

  リクエストの処理中に起きた例外をセットする。

  パラメータ:
    `ex` -

### getException

    public java.lang.Exception getException()

  リクエストの処理中に起きた例外を返す。

  戻り値:

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド