use of org.talend.core.model.components.filters.PropertyComponentFilter in project tdi-studio-se by Talend.
the class RenametFTPToFTPGetMigrationTaskForPerl method execute.
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
try {
ECodeLanguage projectLanguage = getProject().getLanguage();
if (projectLanguage.equals(ECodeLanguage.PERL)) {
//$NON-NLS-1$
IComponentConversion removePropertyComponentConversion = new RemovePropertyComponentConversion("TYPE");
//$NON-NLS-1$
RenameComponentConversion renameComponentConversion = new RenameComponentConversion("tFTPGet");
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IComponentFilter filter1 = new PropertyComponentFilter("tFTP", "ACTION", "get");
ModifyComponentsAction.searchAndModify(item, processType, filter1, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
//$NON-NLS-1$
renameComponentConversion.setNewName("tFTPPut");
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IComponentFilter filter2 = new PropertyComponentFilter("tFTP", "ACTION", "put");
ModifyComponentsAction.searchAndModify(item, processType, filter2, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
//$NON-NLS-1$
renameComponentConversion.setNewName("tFTPDelete");
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IComponentFilter filter3 = new PropertyComponentFilter("tFTP", "ACTION", "delete");
ModifyComponentsAction.searchAndModify(item, processType, filter3, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
//$NON-NLS-1$
renameComponentConversion.setNewName("tFTPRename");
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IComponentFilter filter4 = new PropertyComponentFilter("tFTP", "ACTION", "rename");
ModifyComponentsAction.searchAndModify(item, processType, filter4, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
return ExecutionResult.SUCCESS_WITH_ALERT;
} else {
// do nothing
return ExecutionResult.NOTHING_TO_DO;
}
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
Aggregations