利用対象... Big Data Platform Cloud API Services Platform Cloud Big Data Platform Cloud Data Fabric Cloud Data Management Platform Data Fabric Data Management Platform Data Services Platform MDM Platform Qlik Talend Cloud Enterprise Edition Qlik Talend Cloud Premium Edition Real-Time Big Data Platform
ユーザー定義インジケーターにJavaアーカイブを作成する前に、ワークスペースプラグインのコンパイルとテストの対象となるターゲットプラットフォームをEclipseで定義する必要があります。
Before you begin
Profiling パースペクティブを選択済みであること。
Procedure
ターゲットプラットフォームを定義します。
Eclipseで、[Preferences] (環境設定) を選択して[Preferences] (環境設定) ウィンドウを表示します。
[Plug-in Development] (プラグイン開発) を展開して[Target Platform] (ターゲットプラットフォーム) を選択し、[Add...] (追加...) をクリックしてターゲット定義を作成するためのビューを開きます。
[Nothing: Start with an empty target definition] (なし: 空のターゲット定義で始める) オプションを選択し、[Next] (次へ) をクリックします。
[Name] (名前) フィールドに新しいターゲット定義の名前を入力し、[Next] (次へ) をクリックします。
[Add Content] (コンテンツを追加) リストから[Installation] (インストール) を選択し、[Next] (次へ) をクリックします。
[Browse...] (参照...) ボタンを使ってインストールディレクトリーのパスを設定し、[Next] (次へ) をクリックします。
場所のリストに新しいターゲット定義が表示されます。
[Finish] (終了) をクリックしてダイアログボックスを閉じます。
ユーザー定義インジケーターのJavaアーカイブを作成
Eclipseでは、project from Git をご覧ください。
このJavaプロジェクトには、インジケーターエディターの[Indicator Category] (インジケーターカテゴリー) ビューにリスト表示されたインジケーターカテゴリーに対応する4つのJavaクラスがあります。
どのJavaクラスもUserDefIndicatorImpl インジケーターを拡張します。下の図は、MyAvgLength Javaクラスを使った例を示したものです。
package test.udi;
import org.talend.dataquality.indicators.sql.impl.UserDefIndicatorImpl;
/**
* @author mzhao
*
* A very simple example of a java implementation of a user defined indicator. This indicator returns a user defined
* real value. It implements the minimum number of required methods.
*/
public class MyAvgLength extends UserDefIndicatorImpl {
private double length = 0;
@Override
public boolean reset() {
super.reset();
length = 0;
return true;
}
@Override
public boolean handle(Object data) {
super.handle(data);
// an indicator which computes the average text length on data which are more than 2 characters (this means that
// text values with less than 2 characters are not taken into account).
int dataLength = (data != null) ? data.toString().length() : 0;
if (dataLength > 2) {
length += dataLength;
}
return true;
}
/*
* (non-Javadoc)
*
* @see org.talend.dataquality.indicators.impl.IndicatorImpl#finalizeComputation()
*/
@Override
public boolean finalizeComputation() {
value = String.valueOf(this.length / (this.getCount() - this.getNullCount()));
return super.finalizeComputation();
}
}
必要に応じて、各@Override に続くメソッドのコードを編集してください。
Optional:
次のメソッドをコードで使い、インジケーターのパラメーターを取得します。
メソッド
説明
ndicatorParameters
IndicatorParameters オブジェクトを返します
omain
ドメイン オブジェクトを返します
JavaUDIIndicatorParameter
パラメーターを定義するキー/値の各ペアを保存するJavaUDIIndicatorParameter のリストを返します。
変更を保存します。
Eclipseを使用してこの新しいJavaアーカイブをエクスポートします。
Results
以上で、Profiling パースペクティブで作成するどのJavaインジケーターにもJavaアーカイブを添付できるようになります。