org.seasar.cubby.util
クラス TokenHelper

java.lang.Object
  上位を拡張 org.seasar.cubby.util.TokenHelper

public class TokenHelper
extends Object

2重サブミット防止処理のヘルパークラス

導入されたバージョン:
1.0.0
作成者:
agata
関連項目:
TokenTag, TokenValidator

フィールドの概要
static String DEFAULT_TOKEN_NAME
          デフォルトのトークン用パラメータ名
static int TOKEN_HISTORY_SIZE
          トークン用Mapに保持するトークンの個数(1セッションあたり何個のトークンを保持するか?)
 
コンストラクタの概要
TokenHelper()
           
 
メソッドの概要
static String generateGUID()
          ユニークなトークンを生成します。
static Map<String,String> getTokenMap(HttpSession session)
          トークン用のマップをセッションから取得します。
static void setToken(HttpSession session, String token)
          トークンをセッション中のトークン用のMapにセットします。
static boolean validateToken(HttpSession session, String token)
          パラメータ中のトークン文字列とセッション中のトークン文字列を検証します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

TOKEN_HISTORY_SIZE

public static int TOKEN_HISTORY_SIZE
トークン用Mapに保持するトークンの個数(1セッションあたり何個のトークンを保持するか?)


DEFAULT_TOKEN_NAME

public static final String DEFAULT_TOKEN_NAME
デフォルトのトークン用パラメータ名

関連項目:
定数フィールド値
コンストラクタの詳細

TokenHelper

public TokenHelper()
メソッドの詳細

generateGUID

public static String generateGUID()
ユニークなトークンを生成します。

戻り値:
ユニークなトークン

getTokenMap

public static Map<String,String> getTokenMap(HttpSession session)
トークン用のマップをセッションから取得します。

セッション中にトークン用のマップが存在しない場合、新規に生成します。 トークン用のマップはLruHashMapを使い、トークンの保持上限付きのMapになります。

パラメータ:
session - セッション
戻り値:
トークン用のマップ

setToken

public static void setToken(HttpSession session,
                            String token)
トークンをセッション中のトークン用のMapにセットします。

パラメータ:
session - セッション
token - トークン文字列

validateToken

public static boolean validateToken(HttpSession session,
                                    String token)
パラメータ中のトークン文字列とセッション中のトークン文字列を検証します。

セッション中に格納されたトークン用のMapのキーに、 指定されたトークン文字列が含まれるかどうかを判定し、Mapから取り除きます。

パラメータ:
session - セッション
token - トークン文字列
戻り値:
指定されたトークン文字列がセッション中に存在したらtrue、それ以外はfalse


Copyright © 2006-2009 The Seasar Foundation. All Rights Reserved.