Search in sources :

Example 11 with RenameComponentConversion

use of org.talend.core.model.components.conversions.RenameComponentConversion in project tdi-studio-se by Talend.

the class RenametForForPerl method execute.

public ExecutionResult execute(Item item) {
    ProcessType processType = getProcessType(item);
    if (processType == null) {
        return ExecutionResult.NOTHING_TO_DO;
    }
    try {
        if (getProject().getLanguage().equals(ECodeLanguage.PERL)) {
            //$NON-NLS-1$
            IComponentFilter filter1 = new NameComponentFilter("tFor");
            IComponentConversion addProperty = new AddPropertyLoopTypeConversion();
            //$NON-NLS-1$
            IComponentConversion renameComponent = new RenameComponentConversion("tLoop");
            ModifyComponentsAction.searchAndModify(item, processType, filter1, Arrays.<IComponentConversion>asList(addProperty, renameComponent));
            return ExecutionResult.SUCCESS_WITH_ALERT;
        } else {
            // do nothing
            return ExecutionResult.NOTHING_TO_DO;
        }
    } catch (Exception e) {
        ExceptionHandler.process(e);
        return ExecutionResult.FAILURE;
    }
}
Also used : AddPropertyLoopTypeConversion(org.talend.core.model.components.conversions.AddPropertyLoopTypeConversion) ProcessType(org.talend.designer.core.model.utils.emf.talendfile.ProcessType) IComponentFilter(org.talend.core.model.components.filters.IComponentFilter) NameComponentFilter(org.talend.core.model.components.filters.NameComponentFilter) RenameComponentConversion(org.talend.core.model.components.conversions.RenameComponentConversion) IComponentConversion(org.talend.core.model.components.conversions.IComponentConversion)

Example 12 with RenameComponentConversion

use of org.talend.core.model.components.conversions.RenameComponentConversion in project tdi-studio-se by Talend.

the class RenametDBInputToMySQLMigrationTask method execute.

public ExecutionResult execute(Item item) {
    ProcessType processType = getProcessType(item);
    if (processType == null) {
        return ExecutionResult.NOTHING_TO_DO;
    }
    try {
        //$NON-NLS-1$
        IComponentConversion removePropertyComponentConversion = new RemovePropertyComponentConversion("TYPE");
        //$NON-NLS-1$
        RenameComponentConversion renameComponentConversion = new RenameComponentConversion("tMysqlInput");
        //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        IComponentFilter filter1 = new PropertyComponentFilter("tDBInput", "TYPE", "mysql");
        ModifyComponentsAction.searchAndModify(item, processType, filter1, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
        //$NON-NLS-1$
        renameComponentConversion.setNewName("tMysqlOutput");
        //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        IComponentFilter filter2 = new PropertyComponentFilter("tDBOutput", "TYPE", "mysql");
        ModifyComponentsAction.searchAndModify(item, processType, filter2, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
        //$NON-NLS-1$
        renameComponentConversion.setNewName("tMysqlRow");
        //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        IComponentFilter filter3 = new PropertyComponentFilter("tDBSQLRow", "TYPE", "mysql");
        ModifyComponentsAction.searchAndModify(item, processType, filter3, Arrays.<IComponentConversion>asList(renameComponentConversion, removePropertyComponentConversion));
        return ExecutionResult.SUCCESS_WITH_ALERT;
    } catch (Exception e) {
        ExceptionHandler.process(e);
        return ExecutionResult.FAILURE;
    }
}
Also used : ProcessType(org.talend.designer.core.model.utils.emf.talendfile.ProcessType) IComponentFilter(org.talend.core.model.components.filters.IComponentFilter) RemovePropertyComponentConversion(org.talend.core.model.components.conversions.RemovePropertyComponentConversion) PropertyComponentFilter(org.talend.core.model.components.filters.PropertyComponentFilter) RenameComponentConversion(org.talend.core.model.components.conversions.RenameComponentConversion) IComponentConversion(org.talend.core.model.components.conversions.IComponentConversion)

Aggregations

IComponentConversion (org.talend.core.model.components.conversions.IComponentConversion)12 RenameComponentConversion (org.talend.core.model.components.conversions.RenameComponentConversion)12 IComponentFilter (org.talend.core.model.components.filters.IComponentFilter)12 ProcessType (org.talend.designer.core.model.utils.emf.talendfile.ProcessType)12 RemovePropertyComponentConversion (org.talend.core.model.components.conversions.RemovePropertyComponentConversion)6 NameComponentFilter (org.talend.core.model.components.filters.NameComponentFilter)6 PropertyComponentFilter (org.talend.core.model.components.filters.PropertyComponentFilter)6 AddPropertyCSVOptionConversion (org.talend.core.model.components.conversions.AddPropertyCSVOptionConversion)2 AddPropertyLoopTypeConversion (org.talend.core.model.components.conversions.AddPropertyLoopTypeConversion)2 ElementParameterType (org.talend.designer.core.model.utils.emf.talendfile.ElementParameterType)2 NodeType (org.talend.designer.core.model.utils.emf.talendfile.NodeType)2 List (java.util.List)1 ECodeLanguage (org.talend.core.language.ECodeLanguage)1 ConnectionType (org.talend.designer.core.model.utils.emf.talendfile.ConnectionType)1 ElementValueType (org.talend.designer.core.model.utils.emf.talendfile.ElementValueType)1