リファレンスガイド> カスタムプロシージャ用のJavaAPI> CustomProcedure
 
CustomProcedure
CustomProcedureインターフェイスは、カスタムプロシージャを定義します。このインターフェイスを実装するクラスは、カスタムプロシージャを適切にインスタンス化できるように、空のコンストラクタを定義する必要があります。
public interface CustomProcedure
 
このインターフェースは、ProcedureReferenceを拡張します。
コンストラクターを除くCustomProcedureのすべてのメソッドは、エラー状態が発生した場合にCustomProcedureExceptionをスローできます。これらのメソッドからスローされた例外(ランタイム例外を含む)により、現在のアクションのエラーがシステムエラーとして渡されます。
メソッドサマリー
void
String
String
void
void
シリアル化
カスタムプロシージャクラスは、java.lang.Serializableインターフェイスを実装して、サーバーの再起動時に補正状態を伝達できます。再起動後に復元する必要のない変数は、一時的なものとしてマークする必要があります。
ライフサイクル
カスタムプロシージャオブジェクトのライフサイクルは、次のように定義されています。
イントロスペクション時間-コンストラクターを使用してオブジェクトを作成し、イントロスペクションメソッドを使用してメソッドシグネチャを読み取り、オブジェクトを破棄します。
ランタイムセットアップ-コンストラクターを使用して新しいオブジェクトを作成し、初期化を呼び出します。
ランタイム実行-最初にinvokeを呼び出し、次に出力パラメータ値を取得して読み取り、次に出力値を取得します。セットアップを実行してから、まったく呼び出さないようにすることができます。
ランタイムクローズ-オブジェクトが呼び出された場合は、呼び出しが完了したときにcloseメソッドを呼び出します。ロールバックまたはコミットする前に、必ずcloseを呼び出してください。開いているか使用中であり、コミットまたはロールバックに必要のない接続またはリソースは、この時点でクリーンアップする必要があります。たとえば、接続でクエリが実行されたが更新が実行されなかった場合は、ここでクエリを閉じます。
ランタイムコミットまたはロールバック-オブジェクトが呼び出された場合は、最初にcloseを呼び出し、後でを呼び出します。コミットまたはロールバックcommitを呼び出して更新が発生した接続をコミットするか、ロールバックを呼び出してすべての変更をロールバックします。その後、閉じるするか、残りのすべての接続とリソースをクリーンアップします。
糸脱毛
closeメソッドは、invokegetOutputValuesなどの他の呼び出しと同時に呼び出すことができます。。このような場合、保留中のメソッドはすぐにCustomProcedureExceptionをスローする必要があります。
メソッドの詳細
専念
public void commit()
 
このメソッドは、開いているトランザクションをコミットします。
スロー
このメソッドは、親トランザクションに対して呼び出された場合、CustomProcedureExceptionを送出します。エラーが発生した場合はSQLExceptionを送出します。
 
getDescription
public String getDescription()
 
このメソッドは、データソースのイントロスペクション中に呼び出され、手順の説明を取得します。このメソッドはNULLを返さないようにする必要があります。
戻り値
このメソッドは、プロシージャの説明を返します。
 
getName
public String getName()
 
このメソッドは、プロシージャの短い名前を取得します。このメソッドは、データソースのイントロスペクション中に呼び出されます。短い名前は、データソースの構成中に上書きできます。
このメソッドはNULLを返さないようにする必要があります。
戻り値
このメソッドは、プロシージャの短い名前を返します。
 
初期化
public void initialize(ExecutionEnvironment qenv)
 
このメソッドは、クラスの構築直後に1回呼び出され、クエリ実行環境(ExecutionEnvironment)を初期化します。実行環境には、サーバーと対話するために実行されるメソッドが含まれています。
パラメータ
qenv-クエリ実行環境。
ロールバック
public void rollback()
 
このメソッドは、開いているトランザクションをロールバックします。
スロー
このメソッドは、親トランザクションに対して呼び出された場合、CustomProcedureExceptionを送出します。エラーが発生した場合はSQLExceptionを送出します。