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

## org.opengion.hayabusa.common
クラス SystemManager

    java.lang.Object
      org.opengion.hayabusa.common.SystemManager

    public final class SystemManager

extends java.lang.Object

Webアプリケーション全体で使用しているオブジェクト類のトータルの管理クラスです。 SystemManager は、 session オブジェクトの管理とアクセス／開放 の作業を行います。 上記のクラス(staticメソッド)へのアクセスは、もちろん直接呼び出して 操作することも可能ですが、サーバーのクリーンシャットダウン時やセッションの 開放時、初期化処理など、ある種の統合的なトリガを受けて、関係するクラスに イベントを伝えるようにすることで、Webアプリケーションサーバーとのやり取りを 一元管理する目的で作成されています。

機能分類
  初期化
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

メソッドの概要
`static void` | `addCleanable(Cleanable obj)` 初期化したいオブジェクトを登録します。
`static void` | `addCleanable(Cleanable obj, boolean flag)` 初期化したいオブジェクトを登録します。
`static void` | `addSession(javax.servlet.http.HttpSession session)` session を記録します。
`static void` | `allClear(boolean flag)` addCleanable( final Cleanable ) で登録したすべてのオブジェクトを初期化します。
`protected static void` | `clearGE12()` GE12からCONTXT PATHをhost:port/context/で登録している物を削除します。
`protected static void` | `deleteGUIAccessInfo()` アクセス統計テーブル(GE15)の再編成を行います。
`static int` | `getRunningCount()` システムにログイン中の、すべてのセッション数を、取得します。
`static UserSummary[]` | `getRunningUserSummary(java.lang.String key, boolean direction)` すべてのシステムにログイン中のUserSummary オブジェクトを取得します。
`static void` | `removeSession(javax.servlet.http.HttpSession session)` session を削除します。
`(package private) static void` | `sessionDestroyed()` contextDestroyed 時に、すべてのセッションを、invalidate()します。

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

メソッドの詳細

### addSession

    public static void addSession(javax.servlet.http.HttpSession session)

  session を記録します。 管理者権限で、強制ログアウトさせる場合などに、使用します。 Servlet 2.1 では、HttpSessio#getSessionContext() より取り出した HttpSessionContextのgetSession(java.lang.String sessionId) で すべての session を取り出せましたが,Deprecated になりました。 セキュリティー上、好ましくない処理ですので,注意して使用してください。 common\session_init.jsp より登録します

  パラメータ:
    `session` - Httpセッション
  変更履歴:

    5.5.9.1 (2012/12/07) セッション作成時に、規定のキーでセッションIDを保存しておく。

### removeSession

    public static void removeSession(javax.servlet.http.HttpSession session)

  session を削除します。 管理者権限で、強制ログアウトさせる場合などに、使用します。 Servlet 2.1 では、HttpSessio#getSessionContext() より取り出した HttpSessionContextのgetSession(java.lang.String sessionId) で すべての session を取り出せましたが,Deprecated になりました。 セキュリティー上、好ましくない処理ですので,注意して使用してください。

  パラメータ:
    `session` - Httpセッション
  変更履歴:

    5.5.9.1 (2012/12/07) セッション作成時に登録した規定のキーで userInfo を削除します。
    5.6.6.0 (2013/07/05) セッションの Attribute に SESSION_KEY で登録している sessionID も削除します。

### getRunningUserSummary

    public static UserSummary[] getRunningUserSummary(java.lang.String key,
                                                      boolean direction)

  すべてのシステムにログイン中のUserSummary オブジェクトを取得します。 キーは、UserSummary の Attribute も含めた値が使用できます。 引数のキーは、内部で大文字に変換されたのち、内部キーとして使用されます。

  パラメータ:
    `key` - ソートするキー項目を指定
    `direction` - ソートする方向[true:昇順/false:降順]
  戻り値:
    ログイン中のオブジェクト
  変更履歴:

    4.0.0.0 (2005/01/31) 内部ロジック大幅変更
    5.6.6.0 (2013/07/05) Comparator の作り方を、簡素化します。キーの指定範囲も増やします。

### getRunningCount

    public static int getRunningCount()

  システムにログイン中の、すべてのセッション数を、取得します。 ちなみに、不正なデータが存在した場合は、ここでMapから削除しておきます。

  戻り値:
    ログイン中の有効なすべてのセッション数
  変更履歴:

    4.0.0.0 (2005/01/31) 新規作成

### sessionDestroyed

    static void sessionDestroyed()

  contextDestroyed 時に、すべてのセッションを、invalidate()します。 注意：キャッシュで内部管理していたセッションが、すべて無効化されてしまいます。 よって、内部にセッションを管理しなくなったため、invalidate() もできません。 不具合が出るかもしれません。

  変更履歴:

    3.5.2.1 (2003/10/27) 新規作成
    4.0.0.0 (2005/01/31) セッション ⇒ UserSummary に変更

### addCleanable

    public static void addCleanable(Cleanable obj)

  初期化したいオブジェクトを登録します。 オブジェクトは、Cleanable インターフェースを実装しておく必要があります。 実際に、clear() する場合は、ここで登録した全てのオブジェクトの clear() メソッドが呼び出されます。

  パラメータ:
    `obj` - インターフェースの実装
  変更履歴:

    4.0.0.0 (2005/01/31) 新規作成
    4.3.6.2 (2009/04/15) コンテキスト終了時のみのclear()対応

### addCleanable

    public static void addCleanable(Cleanable obj,
                                    boolean flag)

  初期化したいオブジェクトを登録します。 オブジェクトは、Cleanable インターフェースを実装しておく必要があります。 実際に、clear() する場合は、ここで登録した全てのオブジェクトの clear() メソッドが呼び出されます。

  パラメータ:
    `obj` - インターフェースの実装
    `flag` - trueの場合、コンテキスト停止時のみclear()を呼び出す
  変更履歴:

    4.0.0.0 (2005/01/31) 新規作成
    4.3.6.2 (2009/04/15) コンテキスト終了時のみのclear()対応

### allClear

    public static void allClear(boolean flag)

  addCleanable( final Cleanable ) で登録したすべてのオブジェクトを初期化します。 処理は、Cleanable インターフェースの clear()メソッドを順次呼び出します。

  パラメータ:
    `flag` - 完全終了時に、true
  変更履歴:

    4.0.0.0 (2005/01/31) 新規作成
    4.3.6.2 (2009/04/15) コンテキスト終了時のみのclear()対応

### clearGE12

    protected static void clearGE12()

  GE12からCONTXT PATHをhost:port/context/で登録している物を削除します。 (web.xmlにTOMCAT_PORTを指定した場合に上記CONTEXT_PATHで登録されます)

  変更履歴:

    4.1.0.0 (2007/12/26) 新規作成
    5.5.4.5 (2012/07/27) 初期起動時のDB接続先は、RESOURCE_DBID とする。

### deleteGUIAccessInfo

    protected static void deleteGUIAccessInfo()

  アクセス統計テーブル(GE15)の再編成を行います。 データの保存期間については、システムリソースのACCESS_TOKEI_ALIVE_DAYSで指定します。 データの作成された日時を基準として、上記の期間よりも古いデータは、物理削除されます。 ACCESS_TOKEI_ALIVE_DAYSが指定されていない場合、データの削除は行われません。

  変更履歴:

    5.0.2.0 (2009/11/01) 新規作成
    5.5.5.1 (2012/08/07) リソース系DBID 付け忘れ対策

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

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.