Smart CODE
生成済みコードに関するオンラインガイド

名前
ConditionsProc - サーバーとの接続を管理するクライアントの Precondition (事前条件) と Postcondition (事後条件)
概要
thin クライアントは、データの処理は行わずに、サーバーへデータを渡すだけです。しかし、データを送信する前に、データの妥当性検査を行い、フィールドに適切な入力が行われていない場合は、そのトランザクションを取り消す場合もあります。 この処理は、precondition 関数によって行われます。 さらに、クライアント側では、インタフェースを更新する前に、サーバーから返されたデータを調べることが必要な場合があります。この処理は、postcondition 関数によって行われます。

生成済みコードには、名目上の precondition 関数および postcondition 関数が組み込まれていて、どちらも「true」 (ゼロ以外) を返します。これらのスタブ内に、必要なチェックを自由に記述することができ、グループデータオブジェクトを使用してグループ内のデータにアクセスし、変更することができます。

precondition 関数では、グループデータオブジェクトにはインタフェースの状態が示されます。postcondition 関数では、サーバーから送信された新しい状態が示されます。インタフェースが更新されるのは、postcondition 関数が呼び出された後に限られます。

形式

C
typedef int (*PreconditionsProc)( AnyGroup_t*)
        AnyGroup_t * group;
/* 例 */
int
CALLBACKNAME_preconditions ( group)
AnyGroup_t* group;
{
return 1; /* ここにチェックを記述します */
}
typedef int (*PostconditionsProc)( AnyGroup_t*)
AnyGroup_t * group;

/* 例 */
int
aaa_postconditions ( group)

AnyGroup_t* group;
{
return 1; /* ここにチェックを記述します */
}
C++
class METHODNAME_cs: public sc_stdcs_c
{
int preconditions() { return 1; }
int postconditions() { return 1; } };
sc_stdcs_c *
getNew_METHODNAME()
{
return (sc_stdcs_c*) new METHODNAME_cs;
}
Java
public class METHODNAME_cs extends SCStdCS
{
public boolean preconditions()
{
return true;
}
public boolean postconditions()
{
return true;
}
public static METHODNAME_cs getNew()
{
return  new METHODNAME_cs();
} }
入力
戻り値
C、C++ では、「true」の場合ゼロ以外。Java では、ブール型の「true」または「false」。
その他の注意
CALLBACKNAME および METHODNAME は、生成済みのコードでは、それぞれユーザーがコールバックおよびメソッドに指定した名前に置き換えられます。
説明
使用法
関連項目