本文整理汇总了Java中org.pentaho.di.core.plugins.ImportRulePluginType类的典型用法代码示例。如果您正苦于以下问题:Java ImportRulePluginType类的具体用法?Java ImportRulePluginType怎么用?Java ImportRulePluginType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ImportRulePluginType类属于org.pentaho.di.core.plugins包,在下文中一共展示了ImportRulePluginType类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: loadXML
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void loadXML(Node rulesNode) throws KettleException {
List<Node> ruleNodes = XMLHandler.getNodes(rulesNode, BaseImportRule.XML_TAG);
for (Node ruleNode : ruleNodes) {
String id = XMLHandler.getTagValue(ruleNode, "id");
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, id);
if (plugin==null) {
throw new KettleException("The import rule of type '"+id+"' could not be found in the plugin registry.");
}
ImportRuleInterface rule = (ImportRuleInterface) registry.loadClass(plugin);
rule.loadXML(ruleNode);
getRules().add(rule);
}
}
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:19,代码来源:ImportRules.java
示例2: loadXML
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void loadXML( Node rulesNode ) throws KettleException {
List<Node> ruleNodes = XMLHandler.getNodes( rulesNode, BaseImportRule.XML_TAG );
for ( Node ruleNode : ruleNodes ) {
String id = XMLHandler.getTagValue( ruleNode, "id" );
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId( ImportRulePluginType.class, id );
if ( plugin == null ) {
throw new KettleException( "The import rule of type '"
+ id + "' could not be found in the plugin registry." );
}
ImportRuleInterface rule = (ImportRuleInterface) registry.loadClass( plugin );
rule.loadXML( ruleNode );
getRules().add( rule );
}
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:20,代码来源:ImportRules.java
示例3: init
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
/**
* Initializes the Kettle environment. This method performs the following operations:
* <p/>
* - Creates a Kettle "home" directory if it does not already exist - Reads in the kettle.properties file -
* Initializes the logging back-end - Sets the console log level to debug - If specified by parameter, configures
* Simple JNDI - Registers the native types and the plugins for the various plugin types - Reads the list of variables
* - Initializes the Lifecycle listeners
*
* @param simpleJndi true to configure Simple JNDI, false otherwise
* @throws KettleException Any errors that occur during initialization will throw a KettleException.
*/
public static void init( boolean simpleJndi ) throws KettleException {
init( Arrays.asList(
RowDistributionPluginType.getInstance(),
StepPluginType.getInstance(),
StepDialogFragmentType.getInstance(),
PartitionerPluginType.getInstance(),
JobEntryPluginType.getInstance(),
LogTablePluginType.getInstance(),
RepositoryPluginType.getInstance(),
LifecyclePluginType.getInstance(),
KettleLifecyclePluginType.getInstance(),
ImportRulePluginType.getInstance(),
CartePluginType.getInstance(),
CompressionPluginType.getInstance(),
AuthenticationProviderPluginType.getInstance(),
AuthenticationConsumerPluginType.getInstance(),
EnginePluginType.getInstance()
), simpleJndi );
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:31,代码来源:KettleEnvironment.java
示例4: init
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
/**
* 初始化Ketle环境。此方法执行以下 操作:
*
* 创建一个Kettle "home" 的目录,如果它已经不存在 - 读取 在kettle.properties文件 - 初始化记录后端 - 设置
* 控制台日志级别调试 - 如果指定的参数,配置 简单的JNDI - 寄存器的各种原生类型和插件 插件类型 - 读取变量列表 - 初始化生命周期
* 启动监听程序等
*
* @param simpleJndi
* , 真正简单的JNDI配置,否则返回false
* @throws KettleException
* 在初始化过程中发生的任何错误都将抛出 KettleException。
*/
public static void init(boolean simpleJndi) throws KettleException {
if (initialized == null) {
// 创建一个Kettle "home" 的目录
// createKettleHome();
// 初始化 kettle.properties 初始化其他属性等
environmentInit();
// 初始化日志
// CentralLogStore.init();
// // 设置控制台日志级用来调试
// LogWriter.setConsoleAppenderDebug();
// 配置简单的JNDI 仅供我们在单机模式运行
if (simpleJndi) {
JndiUtil.initJNDI();
}
// 注册原生类型和各个所需的插件
PluginRegistry.addPluginType(StepPluginType.getInstance());
PluginRegistry.addPluginType(PartitionerPluginType.getInstance());
PluginRegistry.addPluginType(JobEntryPluginType.getInstance());
PluginRegistry.addPluginType(RepositoryPluginType.getInstance());
PluginRegistry.addPluginType(DatabasePluginType.getInstance());
PluginRegistry.addPluginType(LifecyclePluginType.getInstance());
PluginRegistry.addPluginType(KettleLifecyclePluginType
.getInstance());
PluginRegistry.addPluginType(ImportRulePluginType.getInstance());
PluginRegistry.init();
// 初始化读取的变量列表。
KettleVariablesList.init();
// 初始化生命周期监听器
initLifecycleListeners();
initialized = true;
}
}
开发者ID:jiangzongyao,项目名称:kettle_support_kettle8.0,代码行数:45,代码来源:KettleEnvironment.java
示例5: init
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
/**
* 初始化Ketle环境。此方法执行以下 操作:
*
* 创建一个Kettle "home" 的目录,如果它已经不存在 - 读取 在kettle.properties文件 - 初始化记录后端 - 设置
* 控制台日志级别调试 - 如果指定的参数,配置 简单的JNDI - 寄存器的各种原生类型和插件 插件类型 - 读取变量列表 - 初始化生命周期
* 启动监听程序等
*
* @param simpleJndi
* , 真正简单的JNDI配置,否则返回false
* @throws KettleException
* 在初始化过程中发生的任何错误都将抛出 KettleException。
*/
public static void init(boolean simpleJndi) throws KettleException {
if (initialized == null) {
// 创建一个Kettle "home" 的目录
// createKettleHome();
// 初始化 kettle.properties 初始化其他属性等
environmentInit();
// 初始化日志
CentralLogStore.init();
// 设置控制台日志级用来调试
LogWriter.setConsoleAppenderDebug();
// 配置简单的JNDI 仅供我们在单机模式运行
if (simpleJndi) {
JndiUtil.initJNDI();
}
// 注册原生类型和各个所需的插件
PluginRegistry.addPluginType(StepPluginType.getInstance());
PluginRegistry.addPluginType(PartitionerPluginType.getInstance());
PluginRegistry.addPluginType(JobEntryPluginType.getInstance());
PluginRegistry.addPluginType(RepositoryPluginType.getInstance());
PluginRegistry.addPluginType(DatabasePluginType.getInstance());
PluginRegistry.addPluginType(LifecyclePluginType.getInstance());
PluginRegistry.addPluginType(KettleLifecyclePluginType
.getInstance());
PluginRegistry.addPluginType(ImportRulePluginType.getInstance());
PluginRegistry.init();
// 初始化读取的变量列表。
KettleVariablesList.init();
// 初始化生命周期监听器
initLifecycleListeners();
initialized = true;
}
}
开发者ID:839536,项目名称:kettle,代码行数:45,代码来源:KettleEnvironment.java
示例6: toString
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
@Override
public String toString() {
// The rule name with an indication of whether or not this rule is enabled should do for now.
//
String pluginId = PluginRegistry.getInstance().getPluginId(this);
PluginInterface plugin = PluginRegistry.getInstance().findPluginWithId(ImportRulePluginType.class, pluginId);
return plugin.getName()+" ("+(enabled?"enabled":"disabled")+").";
}
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:9,代码来源:BaseImportRule.java
示例7: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a transformation to test.
//
TransMeta transMeta = new TransMeta();
NotePadMeta note = new NotePadMeta("A note documenting the transformation", 50, 50, 200, 50);
transMeta.addNote(note);
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "TransformationHasANote");
assertNotNull("The 'transformation has a note' rule could not be found in the plugin registry!", plugin);
TransformationHasANoteImportRule rule = (TransformationHasANoteImportRule) registry.loadClass(plugin);
assertNotNull("The 'transformation has a note' class could not be loaded by the plugin registry!", plugin);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has a note' rule", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
transMeta.removeNote(0);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has a note' rule", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setEnabled(false);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't expect any feedback from the 'transformation has a note' rule while disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:36,代码来源:TransformationHasANoteImportRuleTest.java
示例8: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
JobMeta jobMeta = new JobMeta();
jobMeta.setDescription("This job is used for testing an import rule");
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "JobHasDescription");
assertNotNull("The 'job has description' rule could not be found in the plugin registry!", plugin);
JobHasDescriptionImportRule rule = (JobHasDescriptionImportRule) registry.loadClass(plugin);
assertNotNull("The 'job has description rule' class could not be loaded by the plugin registry!", plugin);
rule.setMinLength(20);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has description rule'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
rule.setMinLength(2000);
rule.setEnabled(true);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setEnabled(false);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't expect any feedback from the 'job has description rule' while disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:33,代码来源:JobHasDescriptionImportRuleTest.java
示例9: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a job to test.
//
JobMeta jobMeta = new JobMeta();
NotePadMeta note = new NotePadMeta("A note documenting the transformation", 50, 50, 200, 50);
jobMeta.addNote(note);
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "JobHasANote");
assertNotNull("The 'job has a note' rule could not be found in the plugin registry!", plugin);
JobHasANoteImportRule rule = (JobHasANoteImportRule) registry.loadClass(plugin);
assertNotNull("The 'job has a note' rule class could not be loaded by the plugin registry!", plugin);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has a note'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
jobMeta.removeNote(0);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has a note' rule", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setEnabled(false);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't expect any feedback from the 'job has no note' rule while disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:35,代码来源:JobHasANoteImportRuleTest.java
示例10: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
JobMeta jobMeta = new JobMeta();
jobMeta.setDescription( "This job is used for testing an import rule" );
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId( ImportRulePluginType.class, "JobHasDescription" );
assertNotNull( "The 'job has description' rule could not be found in the plugin registry!", plugin );
JobHasDescriptionImportRule rule = (JobHasDescriptionImportRule) registry.loadClass( plugin );
assertNotNull( "The 'job has description rule' class could not be loaded by the plugin registry!", plugin );
rule.setMinLength( 20 );
rule.setEnabled( true );
List<ImportValidationFeedback> feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't get any feedback from the 'job has description rule'", !feedback.isEmpty() );
assertTrue(
"An approval ruling was expected",
feedback.get( 0 ).getResultType() == ImportValidationResultType.APPROVAL );
rule.setMinLength( 2000 );
rule.setEnabled( true );
feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't get any feedback from the 'job has description rule'", !feedback.isEmpty() );
assertTrue(
"An error ruling was expected", feedback.get( 0 ).getResultType() == ImportValidationResultType.ERROR );
rule.setEnabled( false );
feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't expect any feedback from the 'job has description rule' while disabled", feedback
.isEmpty() );
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:37,代码来源:JobHasDescriptionImportRuleIT.java
示例11: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a transformation to test.
//
TransMeta transMeta = new TransMeta();
NotePadMeta note = new NotePadMeta( "A note documenting the transformation", 50, 50, 200, 50 );
transMeta.addNote( note );
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId( ImportRulePluginType.class, "TransformationHasANote" );
assertNotNull( "The 'transformation has a note' rule could not be found in the plugin registry!", plugin );
TransformationHasANoteImportRule rule = (TransformationHasANoteImportRule) registry.loadClass( plugin );
assertNotNull( "The 'transformation has a note' class could not be loaded by the plugin registry!", plugin );
rule.setEnabled( true );
List<ImportValidationFeedback> feedback = rule.verifyRule( transMeta );
assertTrue( "We didn't get any feedback from the 'transformation has a note' rule", !feedback.isEmpty() );
assertTrue(
"An approval ruling was expected",
feedback.get( 0 ).getResultType() == ImportValidationResultType.APPROVAL );
transMeta.removeNote( 0 );
feedback = rule.verifyRule( transMeta );
assertTrue( "We didn't get any feedback from the 'transformation has a note' rule", !feedback.isEmpty() );
assertTrue(
"An error ruling was expected", feedback.get( 0 ).getResultType() == ImportValidationResultType.ERROR );
rule.setEnabled( false );
feedback = rule.verifyRule( transMeta );
assertTrue( "We didn't expect any feedback from the 'transformation has a note' rule while disabled", feedback
.isEmpty() );
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:40,代码来源:TransformationHasANoteImportRuleIT.java
示例12: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a job to test.
//
JobMeta jobMeta = new JobMeta();
NotePadMeta note = new NotePadMeta( "A note documenting the transformation", 50, 50, 200, 50 );
jobMeta.addNote( note );
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId( ImportRulePluginType.class, "JobHasANote" );
assertNotNull( "The 'job has a note' rule could not be found in the plugin registry!", plugin );
JobHasANoteImportRule rule = (JobHasANoteImportRule) registry.loadClass( plugin );
assertNotNull( "The 'job has a note' rule class could not be loaded by the plugin registry!", plugin );
rule.setEnabled( true );
List<ImportValidationFeedback> feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't get any feedback from the 'job has a note'", !feedback.isEmpty() );
assertTrue(
"An approval ruling was expected",
feedback.get( 0 ).getResultType() == ImportValidationResultType.APPROVAL );
jobMeta.removeNote( 0 );
feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't get any feedback from the 'job has a note' rule", !feedback.isEmpty() );
assertTrue(
"An error ruling was expected", feedback.get( 0 ).getResultType() == ImportValidationResultType.ERROR );
rule.setEnabled( false );
feedback = rule.verifyRule( jobMeta );
assertTrue( "We didn't expect any feedback from the 'job has no note' rule while disabled", feedback.isEmpty() );
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:38,代码来源:JobHasANoteImportRuleIT.java
示例13: toString
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
@Override
public String toString() {
// The rule name with an indication of whether or not this rule is enabled should do for now.
//
String pluginId = PluginRegistry.getInstance().getPluginId( this );
PluginInterface plugin = PluginRegistry.getInstance().findPluginWithId( ImportRulePluginType.class, pluginId );
return plugin.getName() + " (" + ( enabled ? "enabled" : "disabled" ) + ").";
}
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:9,代码来源:BaseImportRule.java
示例14: getXML
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public String getXML() {
StringBuilder xml = new StringBuilder();
xml.append( XMLHandler.openTag(XML_TAG) ).append(Const.CR).append(Const.CR);
for (ImportRuleInterface rule : getRules()) {
PluginInterface plugin = PluginRegistry.getInstance().getPlugin(ImportRulePluginType.class, rule.getId());
xml.append("<!-- ").append(plugin.getName()).append(" : ").append(plugin.getDescription()).append(Const.CR).append(" -->").append(Const.CR);
xml.append(rule.getXML());
xml.append(Const.CR).append(Const.CR);
}
xml.append( XMLHandler.closeTag(XML_TAG) ) ;
return xml.toString();
}
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:19,代码来源:ImportRules.java
示例15: init
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public static void init(boolean simpleJndi) throws KettleException {
if (initialized==null) {
// Create a home for Kettle if it doesn't exist yet.
//
createKettleHome();
// Read the kettle.properties file before anything else
//
EnvUtil.environmentInit();
// Initialize the logging back-end.
//
CentralLogStore.init();
// Set the console log level to debug
//
LogWriter.setConsoleAppenderDebug();
// Configure Simple JNDI when we run in stand-alone mode (spoon, pan, kitchen, carte, ... NOT on the platform
//
if (simpleJndi) {
JndiUtil.initJNDI();
}
// Register the native types and the plugins for the various plugin types...
//
PluginRegistry.addPluginType(StepPluginType.getInstance());
PluginRegistry.addPluginType(PartitionerPluginType.getInstance());
PluginRegistry.addPluginType(JobEntryPluginType.getInstance());
PluginRegistry.addPluginType(RepositoryPluginType.getInstance());
PluginRegistry.addPluginType(DatabasePluginType.getInstance());
PluginRegistry.addPluginType(LifecyclePluginType.getInstance());
PluginRegistry.addPluginType(ImportRulePluginType.getInstance());
PluginRegistry.init();
// Also read the list of variables.
//
KettleVariablesList.init();
initialized = true;
}
}
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:44,代码来源:KettleEnvironment.java
示例16: init
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
/**
* Initializes the Kettle environment. This method performs the following operations:
*
* - Creates a Kettle "home" directory if it does not already exist
* - Reads in the kettle.properties file
* - Initializes the logging back-end
* - Sets the console log level to debug
* - If specified by parameter, configures Simple JNDI
* - Registers the native types and the plugins for the various plugin types
* - Reads the list of variables
* - Initializes the Lifecycle listeners
*
* @param simpleJndi true to configure Simple JNDI, false otherwise
* @throws KettleException Any errors that occur during initialization will throw a KettleException.
*/
public static void init(boolean simpleJndi) throws KettleException {
if (initialized==null) {
// Create a home for Kettle if it doesn't exist yet.
//
createKettleHome();
// Read the kettle.properties file before anything else
//
EnvUtil.environmentInit();
// Initialize the logging back-end.
//
CentralLogStore.init();
// Set the console log level to debug
//
LogWriter.setConsoleAppenderDebug();
// Configure Simple JNDI when we run in stand-alone mode (spoon, pan, kitchen, carte, ... NOT on the platform
//
if (simpleJndi) {
JndiUtil.initJNDI();
}
// Register the native types and the plugins for the various plugin types...
//
PluginRegistry.addPluginType(StepPluginType.getInstance());
PluginRegistry.addPluginType(PartitionerPluginType.getInstance());
PluginRegistry.addPluginType(JobEntryPluginType.getInstance());
PluginRegistry.addPluginType(RepositoryPluginType.getInstance());
PluginRegistry.addPluginType(DatabasePluginType.getInstance());
PluginRegistry.addPluginType(LifecyclePluginType.getInstance());
PluginRegistry.addPluginType(KettleLifecyclePluginType.getInstance());
PluginRegistry.addPluginType(ImportRulePluginType.getInstance());
PluginRegistry.init();
// Also read the list of variables.
//
KettleVariablesList.init();
// Initialize the Lifecycle Listeners
//
initLifecycleListeners();
initialized = true;
}
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:64,代码来源:KettleEnvironment.java
示例17: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
TransMeta transMeta = new TransMeta();
DatabaseMeta logDbMeta = new DatabaseMeta("LOGDB", "MYSQL", "JDBC", "localhost", "test", "3306", "foo", "bar");
transMeta.addDatabase(logDbMeta);
TransLogTable logTable = transMeta.getTransLogTable();
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "TransformationHasTransLogConfigured");
assertNotNull("The 'transformation has trans log table configured' rule could not be found in the plugin registry!", plugin);
TransformationHasTransLogConfiguredImportRule rule = (TransformationHasTransLogConfiguredImportRule) registry.loadClass(plugin);
assertNotNull("The 'transformation has trans log table configured' class could not be loaded by the plugin registry!", plugin);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has trans log table configured'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
logTable.setTableName("SCHEMA");
logTable.setTableName("LOGTABLE");
logTable.setConnectionName(logDbMeta.getName());
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
// Make the rules stricter!
//
rule.setTableName("SCHEMA");
rule.setTableName("LOGTABLE");
rule.setConnectionName(logDbMeta.getName());
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
// Break the rule
//
rule.setSchemaName("INCORRECT_SCHEMA");
rule.setTableName("LOGTABLE");
rule.setConnectionName(logDbMeta.getName());
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setSchemaName("SCHEMA");
rule.setTableName("INCORRECT_LOGTABLE");
rule.setConnectionName(logDbMeta.getName());
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setSchemaName("SCHEMA");
rule.setTableName("LOGTABLE");
rule.setConnectionName("INCORRECT_DATABASE");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
// No feedback expected!
//
rule.setEnabled(false);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't expect any feedback from the 'transformation has trans log table configured' since the rule is not enabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:68,代码来源:TransformationHasTransLogConfiguredImportRuleTest.java
示例18: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a job to test.
//
JobMeta jobMeta = new JobMeta();
// Add 3 dummy steps connected with hops.
//
JobEntryCopy lastCopy = null;
for (int i=0;i<3;i++) {
JobEntrySpecial dummy = new JobEntrySpecial();
dummy.setDummy(true);
dummy.setName("dummy"+(i+1));
JobEntryCopy copy = new JobEntryCopy(dummy);
copy.setLocation(50+i*50,50);
copy.setDrawn();
jobMeta.addJobEntry(copy);
if (lastCopy!=null) {
JobHopMeta hop = new JobHopMeta(lastCopy, copy);
jobMeta.addJobHop(hop);
}
lastCopy = copy;
}
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "JobHasNoDisabledHops");
assertNotNull("The 'job has no disabled hops' rule could not be found in the plugin registry!", plugin);
JobHasNoDisabledHopsImportRule rule = (JobHasNoDisabledHopsImportRule) registry.loadClass(plugin);
assertNotNull("The 'job has no disabled hops' class could not be loaded by the plugin registry!", plugin);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has no disabled hops'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
jobMeta.getJobHop(0).setEnabled(false);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't get any feedback from the 'job has no disabled hops'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setEnabled(false);
feedback = rule.verifyRule(jobMeta);
assertTrue("We didn't expect any feedback from the 'job has no disabled hops' while disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:53,代码来源:JobHasNoDisabledHopsImportRuleTest.java
示例19: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Create a transformation to test.
//
TransMeta transMeta = new TransMeta();
// Add 3 dummy steps connected with hops.
//
StepMeta lastStep = null;
for (int i=0;i<3;i++) {
DummyTransMeta dummyTransMeta = new DummyTransMeta();
StepMeta stepMeta = new StepMeta("dummy"+(i+1), dummyTransMeta);
stepMeta.setLocation(50+i*50,50);
stepMeta.setDraw(true);
transMeta.addStep(stepMeta);
if (lastStep!=null) {
TransHopMeta hop = new TransHopMeta(lastStep, stepMeta);
transMeta.addTransHop(hop);
}
lastStep=stepMeta;
}
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "TransformationHasNoDisabledHops");
assertNotNull("The 'transformation has no disabled hops' rule could not be found in the plugin registry!", plugin);
TransformationHasNoDisabledHopsImportRule rule = (TransformationHasNoDisabledHopsImportRule) registry.loadClass(plugin);
assertNotNull("The 'transformation has no disabled hops' class could not be loaded by the plugin registry!", plugin);
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has no disabled hops'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
transMeta.getTransHop(0).setEnabled(false);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has no disabled hops'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setEnabled(false);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't expect any feedback from the 'transformation has no disabled hops' while disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:50,代码来源:TransformationHasNoDisabledHopsImportRuleTest.java
示例20: testRule
import org.pentaho.di.core.plugins.ImportRulePluginType; //导入依赖的package包/类
public void testRule() throws Exception {
// Assemble a new database.
//
String DBNAME="test";
String HOSTNAME="localhost";
String PORT="3306";
String USERNAME="foo";
String PASSWORD="bar";
DatabaseMeta verifyMeta = new DatabaseMeta("LOGDB", "MYSQL", "JDBC", HOSTNAME, DBNAME, PORT, USERNAME, PASSWORD);
// Create a transformation to test.
//
TransMeta transMeta = new TransMeta();
transMeta.addDatabase((DatabaseMeta)verifyMeta.clone());
// Load the plugin to test from the registry.
//
PluginRegistry registry = PluginRegistry.getInstance();
PluginInterface plugin = registry.findPluginWithId(ImportRulePluginType.class, "DatabaseConfiguration");
assertNotNull("The 'database configuration' rule could not be found in the plugin registry!", plugin);
DatabaseConfigurationImportRule rule = (DatabaseConfigurationImportRule) registry.loadClass(plugin);
assertNotNull("The 'database configuration' class could not be loaded by the plugin registry!", plugin);
// Set the appropriate rule..
//
rule.setEnabled(true);
List<ImportValidationFeedback> feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'database configuration'", !feedback.isEmpty());
assertTrue("An error ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
rule.setDatabaseMeta(verifyMeta);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An approval ruling was expected", feedback.get(0).getResultType()==ImportValidationResultType.APPROVAL);
// Create some errors...
//
verifyMeta.setDBName("incorrect-test");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected validating the db name", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
verifyMeta.setDBName(DBNAME);
verifyMeta.setHostname("incorrect-hostname");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected validating the db hostname", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
verifyMeta.setHostname(HOSTNAME);
verifyMeta.setDBPort("incorrect-port");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected validating the db port", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
verifyMeta.setDBPort(PORT);
verifyMeta.setUsername("incorrect-username");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected validating the db username", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
verifyMeta.setUsername(USERNAME);
verifyMeta.setPassword("incorrect-password");
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't get any feedback from the 'transformation has description rule'", !feedback.isEmpty());
assertTrue("An error ruling was expected validating the db password", feedback.get(0).getResultType()==ImportValidationResultType.ERROR);
verifyMeta.setPassword(PASSWORD);
// No feedback expected!
//
rule.setEnabled(false);
feedback = rule.verifyRule(transMeta);
assertTrue("We didn't expect any feedback from the 'transformation has trans log table configured' since disabled", feedback.isEmpty());
}
开发者ID:bsspirit,项目名称:kettle-4.4.0-stable,代码行数:78,代码来源:DatabaseConfigurationImportRuleTest.java
注:本文中的org.pentaho.di.core.plugins.ImportRulePluginType类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论