LaBee Framework
ドキュメントトップに戻る
初期実行プロセス
Webアプリケーション固有でプロパティ読み込み等の初期設定を行ないたい場合があります。そういう場合に以下の条件に沿った
クラスを作成するとLaBeeFrameworkシステムが初期起動した際に作成したクラスのプロセスが自動で実行されます。
初期起動プロセス実装条件
定義箇所 概要
@AppInitProcessアノテーション付加 初期実行したいプロセスクラスには@AppInitProcessアノテーションを付加します。作成するクラスは設定ファイル等で ファイルの所在等を定義する必要は無く、@AppInitProcessアノテーションを付加するだけでLaBeeFrameworkが自動で当該クラスを 検索して実行します。初期実行プロセスクラスは複数存在しても構いませんが実行順は保証されません。
ProcessInterfaceインタフェース実装 初期実行したいプロセスクラスにはcom.bee_wkspace.labee_fw.core.base.ProcessInterfaceインターフェースの実装定義します。
startProcess()メソッド実装 初期実行したいプロセスクラスにはインターフェースで定義しているstartProcess()メソッドを実装します。初期実行処理は このメソッド内で行ないます。プロパティファイル読込みやポーリングスレッド起動などが考えられます。
その他 インターフェースで定義しているその他メソッドを実装します。
初期実行プロセス実装例 (抜粋)
    
/**
 * 初期プロパティ読み込み処理
 */
@AppInitProcess
public class LaBeeConfigMng implements ProcessInterface {

    /** プロパティーファイル名 */
    private static String CONFIG_FILE = "config/LaBeeWeb.properties";

    /** メールサーバ接続情報 */
    private static MailServerContext mainServerContext;

    /*
     * (非 Javadoc)
     * 
     * @see
     * com.bee_wkspace.labee_fw.core.base.AppInitializerInterface#initCall()
     */
    @Override
    public void startProcess() throws Exception {
        try {
            Properties prop = SystemUtil.loadProperties(SystemInitializer.getClassLoaderMakedObject(), CONFIG_FILE);

            mainServerContext = new MailServerContext();
            mainServerContext.setServerHost(StringUtil.trim(prop.getProperty("MAIL_SERVER_HOST")));
            mainServerContext.setServerPort(StringUtil.trim(prop.getProperty("MAIL_SERVER_PORT")));
            mainServerContext.setMailAccount(StringUtil.trim(prop.getProperty("MAIL_ACCOUNT")));
            mainServerContext.setMailPassWord(StringUtil.trim(prop.getProperty("MAIL_PASSWORD")));
            mainServerContext.setSendersName(StringUtil.trim(prop.getProperty("MAIL_SENDERS_NAME")));
            mainServerContext.setSenderMailAddr(StringUtil.trim(prop.getProperty("MAIL_SENDER_ADDR")));

        } catch (MissingResourceException e) {
            throw e;

        } catch (Exception e) {
            throw e;
        }
    }
}
  
ドキュメントトップに戻る
Copyright ARTS Laboratory. All rights reserved.