通常は、同期イベントごとにメソッドを 1 つずつ実装します。これらのメソッドは、パブリックにしてください。プライベート・メソッドの場合、Mobile Link サーバでは使用できず、その存在を認識できません。
統合データベース内の ml_script テーブルで指定されている名前と一致していれば、メソッド名は重要ではありません。ただし、このマニュアルの例では、メソッド名は Mobile Link イベント名と同じです。これは、.NET コードを読みやすくするためです。
メソッドのシグニチャは、そのイベント用スクリプトのシグニチャと一致していなければなりません。ただし、パラメータ・リストの最後にパラメータ値が必要でない場合は、リストをトランケートできます。パラメータを渡すとオーバヘッドが生じる可能性があるため、必要なパラメータのみを受け入れてください。
ただし、メソッドはオーバロードできません。ml_script システム・テーブルには、クラスごとにメソッド・プロトタイプが 1 つだけ格納されます。
メソッドを作成したら、それを登録します。メソッドを登録すると、統合データベースの Mobile Link システム・テーブル内にメソッドへの参照が作成されて、イベントが発生すると、そのメソッドが呼び出されます。メソッドの登録方法は、同期スクリプトの追加方法と同じです。ただし、SQL スクリプト全体を Mobile Link システム・テーブルに追加する代わりに、修飾されたメソッド名のみを追加します。
スクリプトの追加と削除を参照してください。
SQL ベースのアップロードまたはダウンロードに対して呼び出されるメソッドは、有効な SQL 言語の文を返さなければなりません。これらのメソッドの戻り値は String 型にします。他の戻り値の型は使用できません。
他のすべてのスクリプトの戻り値の型は、string または void にします。他の型は使用できません。戻り値の型が NULL ではなく文字列の場合、Mobile Link サーバはその文字列に有効な SQL 文が含まれているとみなして、この文を通常の SQL 言語による同期スクリプトと同様に統合データベース内で実行します。通常、メソッドは文字列を返しますが、その戻り値によってデータベースに対して SQL 文を実行しない場合は NULL を返すことができます。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |