/*
 * blanco Framework
 * Copyright (C) 2004-2009 IGA Tosiki
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 */
package blanco.sample.jsf;

import java.sql.Connection;

import blanco.sample.jsf.db.query.SimpleBookInsertInvoker;
import blanco.sample.jsf.db.query.SimpleBookSelectIterator;

/**
 * 処理 [BlancoJsfSample1AddLogic]インタフェース。
 *
 * このインタフェースを実装して [blanco.sample.jsf]パッケージに[BlancoJsfSample1AddLogicImpl]クラスを作成して実際の処理を実装してください。
 */
public interface BlancoJsfSample1AddLogic {
    /**
     * クラスをインスタンス化して処理を実行する際のエントリポイントです。
     *
     * @param argString メインの Managed Bean。
     * @param argInteger session から取得した Managed Bean 'integer'。
     * @param argSimpleBookSelectIterator SQL定義から自動生成されたデータベース・アクセサー。
     * @param argSimpleBookInsertInvoker SQL定義から自動生成されたデータベース・アクセサー。
     * @param conn データベース接続。基本的に、このパラメータは利用しないでください。
     * @return 処理の実行結果。success, error などの遷移先に関する文字列を返却。
     * @throws Exception 例外が発生した場合。
     */
    String execute(final String argString, final Integer argInteger, final SimpleBookSelectIterator argSimpleBookSelectIterator, final SimpleBookInsertInvoker argSimpleBookInsertInvoker, final Connection conn) throws Exception;
}
