## info.dragonlady.scriptlet
クラス SecureServlet

    java.lang.Object
      javax.servlet.GenericServlet
          javax.servlet.http.HttpServlet
              info.dragonlady.scriptlet.SecureServlet

すべての実装されたインタフェース:
  java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

直系の既知のサブクラス:
  Scriptlet

    public abstract class SecureServlet

extends javax.servlet.http.HttpServlet

処理シーケンスの妥当性検証を実装した、javax.servlet.http.HttpServletの継承クラスです。 Scriptletクラスの基底クラスで、このクラスを直接継承することはありません。

作成者:
  nobu
関連項目:
  直列化された形式

フィールドの概要
`static int` `EXEC_SEQUENCE`
`static int` `INIT_SEQUENCE`
`static int` `INVALID_SEQUENCE`
`protected static java.lang.String` `SEQUENCE_KEY`
`protected int` `sequenceId`

コンストラクタの概要
`SecureServlet()`

メソッドの概要
`protected java.lang.String` `getCharSet()` HttpServletResponse#setContentTypeに指定する、 CharSetの値を応答します。
`protected java.lang.String` `getContentType()` HttpServletResponse#setContentTypeに指定する、 ContentTypeの値を応答します。
`protected int` `getDefaultSequence()` シーケンス条件が適合しない場合の、動作設定を応答します。
`abstract java.lang.String` `getInitSequence()` 初期シーケンス（Scriptlet）のverifySequence()にて、 チェックする文字列を返す仮想関数
`abstract java.lang.String` `getNextInitSequence()` 次の初期シーケンス（Scriptlet）のverifySequence()にて、 チェックする文字列を返す仮想関数
`javax.servlet.http.HttpServletRequest` `getRequest()` HttpServletRequestクラスのインスタンスを応答します。
`javax.servlet.http.HttpServletResponse` `getResponse()` HttpServletResponseクラスのインスタンスを応答します。
`protected java.lang.String` `getSequence()` 現在設定されているシーケンスオブジェクトを取得する関数
`abstract long` `getSerialVersionUID()` serialVersionUIDを応答する仮想関数
`javax.servlet.http.HttpSession` `getSession()` HttpSessionクラスのインスタンスを応答します。
`protected void` `initialize()`
`boolean` `isExecute()` 初期モードか、実行モードかを応答する。
`protected void` `service(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)` `HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)`
`protected void` `setSequence()` 次のシーケンスに移行した際、正しいシーケンスであるためのフィンガープリントを設定します。
`protected int` `verifySequence()` 正当なシーケンスで要求されているか検証します。

クラス javax.servlet.http.HttpServlet から継承されたメソッド
`doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service`

クラス javax.servlet.GenericServlet から継承されたメソッド
`destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, init, log, log`

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

フィールドの詳細

### SEQUENCE_KEY

    protected static final java.lang.String SEQUENCE_KEY

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

### sequenceId

    protected int sequenceId

### INIT_SEQUENCE

    public static final int INIT_SEQUENCE

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

### EXEC_SEQUENCE

    public static final int EXEC_SEQUENCE

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

### INVALID_SEQUENCE

    public static final int INVALID_SEQUENCE

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

コンストラクタの詳細

### SecureServlet

    public SecureServlet()

メソッドの詳細

### getSerialVersionUID

    public abstract long getSerialVersionUID()

  serialVersionUIDを応答する仮想関数

  戻り値:

### initialize

    protected void initialize()
                       throws IllegalAccessException

  例外:
    `IllegalAccessException`

### service

    protected final void service(javax.servlet.http.HttpServletRequest req,
                                 javax.servlet.http.HttpServletResponse res)
                          throws java.io.IOException,
                                 javax.servlet.ServletException

  `HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)`

  オーバーライド:
    クラス `javax.servlet.http.HttpServlet` 内の `service`
  例外:
    `java.io.IOException`
    `javax.servlet.ServletException`

### verifySequence

    protected int verifySequence()

  正当なシーケンスで要求されているか検証します。 デフォルト実装では、初期状態か処理系かの判別しか行いません。 シーケンスを拡張する場合、オーバーライドして実装してください。

  パラメータ:
    `servlet` -
  戻り値:

### setSequence

    protected void setSequence()

  次のシーケンスに移行した際、正しいシーケンスであるためのフィンガープリントを設定します。 デフォルトでは、クラス名＋serialVersionUIDをセッションに追加する。

  パラメータ:
    `servlet` -

### getSequence

    protected java.lang.String getSequence()

  現在設定されているシーケンスオブジェクトを取得する関数

### getDefaultSequence

    protected int getDefaultSequence()

  シーケンス条件が適合しない場合の、動作設定を応答します。 デフォルトは初期状態を応答。 注.直リンクを許可しないサーブレットは"INVALID_SEQUENCE"を応答するよう、オーバーライドする必要があります。

  戻り値:

### isExecute

    public boolean isExecute()

  初期モードか、実行モードかを応答する。

  戻り値:

### getNextInitSequence

    public abstract java.lang.String getNextInitSequence()

  次の初期シーケンス（Scriptlet）のverifySequence()にて、 チェックする文字列を返す仮想関数

  戻り値:

### getInitSequence

    public abstract java.lang.String getInitSequence()

  初期シーケンス（Scriptlet）のverifySequence()にて、 チェックする文字列を返す仮想関数

  戻り値:

### getSession

    public javax.servlet.http.HttpSession getSession()

  HttpSessionクラスのインスタンスを応答します。

### getRequest

    public javax.servlet.http.HttpServletRequest getRequest()

  HttpServletRequestクラスのインスタンスを応答します。

### getResponse

    public javax.servlet.http.HttpServletResponse getResponse()

  HttpServletResponseクラスのインスタンスを応答します。

### getCharSet

    protected java.lang.String getCharSet()

  HttpServletResponse#setContentTypeに指定する、
  CharSetの値を応答します。
  デフォルトはShift-jisです。変更したい場合はオーバーライド

### getContentType

    protected java.lang.String getContentType()

  HttpServletResponse#setContentTypeに指定する、
  ContentTypeの値を応答します。
  デフォルトはtext/htmlです。変更したい場合はオーバーライド