データソース拡張機能では、拡張機能の構成を記述し、データソースの構成を検証し、構成変更がデータソースに対して完全取得を必要としているかどうかを判断するために、PipelineComponentConfigurationクラスが必要です。
データソース構成を作成する手順は次のとおりです。
public class CsvDataSourceConfig extends
PipelineComponentConfiguration<CsvDataSourceConfig>{
}
private String mInputFile; private String mKeyColumn;
@StringProperty(isRequired=true, name="inputFile", displayName="Input File", description="Path to the input csv file e.g. c:\\incoming\\data.csv") private String mInputFile; @StringProperty(isRequired=true, name="keyColumn", displayName="Key Column", description="Name of the column with the record key") private String mKeyColumn;
@ConfigurationGroupOrder({@ConfigurationGroup(groupName="Basic",
propertyOrder={"filePath","headerRow","separator"})})
public class CsvDataSourceConfig implements
PipelineComponentConfiguration<CsvDataSourceConfig>{
}
propertyOrderを省略した場合、プロパティはアルファベット順にソートされ、アルファベット順に表示されます。
(PipelineComponentConfiguration全体ではなく)特定のプロパティをチェックするコードを記述して、完全取得が必要かどうかを判断できます。完全取得を強制的に行うようにするには、常にtrueを返すコードを記述します。
public List<ValidationFailure> validate(
CsvFileDataSourceConfiguration configuration) {
List<ValidationFailure> validationFailures =
new LinkedList<ValidationFailure>();
File checkFile = new File(configuration.getFilePath());
if (!checkFile.exists()) {
validationFailures.add(new ValidationFailure("File " +
checkFile.getAbsolutePath() + " does not exist"));
}
return validationFailures;
}
検証が失敗した場合、PipelineComponentConfiguration.validate()メソッドがコレクションValidationFailureオブジェクトを返します。
前述の手順の詳細は、<インストール・パス>\IAS\<バージョン>\sample\ias-extensions\src\main\com\endeca\ias\extension\sample\datasource\csv\CsvDataSourceConfig.javaのサンプル・データソース拡張機能を参照してください。
Oracle Endeca Information Discovery Integrator Integrator Acquisition System拡張APIガイド · リリース3.1.0 · 2013年10月
Copyright ©2003, 2013,Oracle and/or its affiliates. All rights reserved.
