Java 分類子の作成
Java 分類子を作成できます。データのセットを分類するカスタム・ロジックを Java クラスに書き込むことで、Java 分類子を使用してデータを分類することができます。
このタスクについて
ASBServer/lib フォルダーおよび ASBNode/lib/java フォルダーに対する書き込み権限を持っている必要があります。
すべての Java ベースの分類子について、public boolean matchValue(Object value) をオーバーライドして、ValueBasedClassifier インターフェースを実装する必要があります。ValueBasedClassifier インターフェースの public boolean matchValue(Object value) をオーバーライドして分類子をデプロイする場合は、実装を実際の value と比較する必要があります。例えば、600000000 から 999999999 の間のすべての値を分類する場合は、値が指定の数値の間にあるかどうかを検証する必要があります。値が指定された数値の間にある場合は true、そうでない場合は false として分類されます。値が true の場合は、xml 定義で指定した名前で分類されます。
手順
- Eclipse または Java 用の統合開発環境 (IDE) でプロジェクトを作成します。
- ia-common.jar を InfoSphere® Information Server (IIS) のインストール・ロケーションから取得して、プロジェクトのクラスパスに追加します。この JAR ファイルは、ASBNODE¥lib¥java フォルダーまたは ASBServer¥lib フォルダーにあります。
- カスタム名を指定してクラス・ファイルを作成し、ValueBasedClassifier を実装します。
- ia-common.jar にあるカスタム・クラスに ValueBasedClassifier インターフェースをインポートして、コンパイラーの問題を解決します。
- public boolean matchValue(Object value) メソッドを実装して、そのメソッド内にカスタム・ロジックを書き込みます。このメソッドは、渡された値に基づいて true または false を返します。
- 任意の必要な名前を指定して、JAR ファイルとして分類子をエクスポートします。
例
package my.test.classifier;
import com.ibm.infosphere.ia.classification.ValueBasedClassifier;
public class MyCustom implements ValueBasedClassifier {
public boolean matchValue(Object value) {
// if the value is a number, it matches the class if it is in the expected range
if (value instanceof Number) {
int intValue = ((Number)value).intValue();
return intValue>600000000 && intValue<999999999;
}
// if the value is not a number, it cannot match the class
else {
return false;
}
}
}
上記の分類子の XML 定義:
<?xml version="1.0" encoding="UTF-8"?>
<tns:DataClasses
xmlns:tns="http://www.ibm.com/infosphere/ia/classification/DataclassesDefinition"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.ibm.com/infosphere/ia/classification
/DataclassesDefinition/../../../model/DataClassesDefinition.xsd ">
<tns:DataClass id="customID" name="CustomName"
description="Custom description" example="999999999">
<tns:JavaClassifier
className="my.test.classifier.MyCustom" />
<tns:DataTypeFilter>
<tns:LogicalDataType>numeric</tns:LogicalDataType>
</tns:DataTypeFilter>
</tns:DataClass>
</tns:DataClasses>
次のタスク
2 つのファイルが作成された後、必要な名前を指定して、それらのファイルをバンドルして再び JAR にします。メイン JAR ファイルは、Customjar ファイルと xml ファイルのバンドルです。デプロイメント時に、パラメーターとして Mainjar を渡します。
次のコマンドを使用してモデルにデータ・クラスをデプロイします。
IAAdmin -user user_name -password password -url https://host:port -deployDataClasses <path of the Mainjar file>
エンジン層およびサーバー層で、以下のコマンドを使用して、新規 Java 分類子に関連する Java クラスをインストールします。IAAdmin -installClassifiers <path of the Mainjar file>
注: サーバー層の場合は IAAdmin スクリプトは <InformationServer Home>/ASBServer/bin にあり、エンジン層の場合は IAAdmin スクリプトは <InformationServer Home>/ASBNode/bin にあります。