@Published(tag="architect") public abstract class ResourcePathRule extends java.lang.Object
コンストラクタと説明 |
---|
ResourcePathRule() |
修飾子とタイプ | メソッドと説明 |
---|---|
protected java.lang.String |
convertToPathFromContextRoot(java.lang.String path,
javax.servlet.http.HttpServletRequest request)
コンテキストルートからのパスに変換する。
|
protected abstract java.lang.String |
createPathForLanguage(java.lang.String pathFromContextRoot,
java.lang.String language)
言語対応のリソースパスを作成する。
|
protected boolean |
existsResource(java.lang.String resourcePath,
javax.servlet.http.HttpServletRequest request)
指定されたパスが指すファイルが存在するか否かを判定する。
|
java.lang.String |
getPathForLanguage(java.lang.String path,
javax.servlet.http.HttpServletRequest request)
言語対応のリソースパスを取得する。
|
void |
setServletContextCreator(ServletContextCreator servletContextCreator)
ServletContextCreator を設定する。 |
public void setServletContextCreator(ServletContextCreator servletContextCreator)
ServletContextCreator
を設定する。servletContextCreator
- サーブレットコンテキスト生成クラスpublic java.lang.String getPathForLanguage(java.lang.String path, javax.servlet.http.HttpServletRequest request)
言語はThreadContext.getLanguage()
から取得する。ThreadContext.getLanguage()
から言語を取得できない場合は指定されたリソースパスをそのまま返す。 言語対応のリソースパスが指すファイルが存在する場合は言語対応のリソースパスを返し、 存在しない場合は指定されたリソースパスをそのまま返す。 指定されたリソースパスに拡張子を含まない場合は指定されたリソースパスをそのまま返す。 言語対応のリソースパスはcreatePathForLanguage(String, String)
メソッドを呼び出し作成する。createPathForLanguage(String, String)
メソッドはサブクラスにより実装される。
path
- オリジナルのリソースパスrequest
- リクエストprotected boolean existsResource(java.lang.String resourcePath, javax.servlet.http.HttpServletRequest request)
request
- リクエストresourcePath
- リソースパスprotected java.lang.String convertToPathFromContextRoot(java.lang.String path, javax.servlet.http.HttpServletRequest request)
path
- パスrequest
- リクエストprotected abstract java.lang.String createPathForLanguage(java.lang.String pathFromContextRoot, java.lang.String language)
pathFromContextRoot
- コンテキストルートからのパスlanguage
- 言語