use of org.talend.designer.core.model.utils.emf.talendfile.ProcessType in project tdi-studio-se by Talend.
the class ChangeParameter4tSAPIDocOutput method execute.
@Override
public ExecutionResult execute(Item item) {
final ProcessType processType = getProcessType(item);
//$NON-NLS-1$
String[] compNames = { "tSAPIDocOutput" };
IComponentConversion conversion = new IComponentConversion() {
public void transform(NodeType node) {
if (node == null) {
return;
}
//$NON-NLS-1$
ElementParameterType parameter = ComponentUtilities.getNodeProperty(node, "FROM_XML");
if (parameter == null) {
//$NON-NLS-1$ $NON-NLS-2$
ComponentUtilities.addNodeProperty(node, "FROM_XML", "CHECK");
//$NON-NLS-1$ $NON-NLS-2$
ComponentUtilities.setNodeValue(node, "FROM_XML", "true");
}
}
};
for (String name : compNames) {
IComponentFilter filter = new NameComponentFilter(name);
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(conversion));
} catch (PersistenceException e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
use of org.talend.designer.core.model.utils.emf.talendfile.ProcessType in project tdi-studio-se by Talend.
the class ChangeParameterName4tMDMConnection method execute.
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
IComponentFilter filter = new NameComponentFilter("tMDMConnection");
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(new IComponentConversion() {
public void transform(NodeType node) {
//$NON-NLS-1$
ElementParameterType username = ComponentUtilities.getNodeProperty(node, "USER");
//$NON-NLS-1$
ElementParameterType passwd = ComponentUtilities.getNodeProperty(node, "PASS");
if (username != null) {
//$NON-NLS-1$
ComponentUtilities.getNodeProperty(node, "USER").setName("USERNAME");
}
if (passwd != null) {
//$NON-NLS-1$
ComponentUtilities.getNodeProperty(node, "PASS").setName("PASSWORD");
}
}
}));
} catch (PersistenceException e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
use of org.talend.designer.core.model.utils.emf.talendfile.ProcessType in project tdi-studio-se by Talend.
the class ChangePigVersionOfPigLoadMigrationTask method execute.
/*
* (non-Javadoc)
*
* @see org.talend.core.model.migration.AbstractItemMigrationTask#execute(org.talend.core.model.properties.Item)
*/
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
//$NON-NLS-1$
String[] componentsName = new String[] { "tPigLoad" };
try {
for (String element : componentsName) {
IComponentFilter filter = new NameComponentFilter(element);
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(new IComponentConversion() {
@Override
public void transform(NodeType node) {
//$NON-NLS-1$
ElementParameterType ept = ComponentUtilities.getNodeProperty(node, "PIG_VERSION");
if (ept != null) {
if ("CLOUDERA_0.20_CDH3U1".equals(ept.getValue())) {
//$NON-NLS-1$
//$NON-NLS-1$//$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "PIG_VERSION", "Cloudera_0_20_CDH3U1");
} else if ("CLOUDERA_CDH4".equals(ept.getValue())) {
//$NON-NLS-1$
//$NON-NLS-1$//$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "PIG_VERSION", "Cloudera_CDH4");
} else if ("MAPR".equals(ept.getValue())) {
//$NON-NLS-1$
//$NON-NLS-1$//$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "PIG_VERSION", "MapR");
} else if ("MAPR2".equals(ept.getValue())) {
//$NON-NLS-1$
//$NON-NLS-1$//$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "PIG_VERSION", "MapR2");
}
}
}
}));
}
return ExecutionResult.SUCCESS_NO_ALERT;
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
use of org.talend.designer.core.model.utils.emf.talendfile.ProcessType in project tdi-studio-se by Talend.
the class ChangeJavaAPIAsDefault4SqoopMigrationTask method AddExecuteMode.
private void AddExecuteMode(Item item) throws Exception {
ProcessType processType = getProcessType(item);
java.util.List<IComponentFilter> filters = new java.util.ArrayList<IComponentFilter>();
//$NON-NLS-1$
filters.add(new NameComponentFilter("tSqoopImport"));
//$NON-NLS-1$
filters.add(new NameComponentFilter("tSqoopExport"));
//$NON-NLS-1$
filters.add(new NameComponentFilter("tSqoopImportAllTables"));
IComponentConversion addOption = new AddExecuteMode();
java.util.Iterator<IComponentFilter> iter = filters.iterator();
while (iter.hasNext()) {
IComponentFilter filter = (IComponentFilter) iter.next();
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(addOption));
}
}
use of org.talend.designer.core.model.utils.emf.talendfile.ProcessType in project tdi-studio-se by Talend.
the class ChangeLogLevel4tRedshiftInput method execute.
/*
* (non-Javadoc)
*
* @see org.talend.core.model.migration.AbstractItemMigrationTask#execute(org.talend.core.model.properties.Item)
*/
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
//$NON-NLS-1$
String[] componentsName = new String[] { "tRedshiftInput" };
try {
for (String element : componentsName) {
IComponentFilter filter = new NameComponentFilter(element);
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(new IComponentConversion() {
@Override
public void transform(NodeType node) {
//$NON-NLS-1$
ElementParameterType ept = ComponentUtilities.getNodeProperty(node, "LOG_LEVEL");
if (ept == null) {
return;
}
String value = ept.getValue();
if (value == null) {
return;
}
if (Integer.parseInt(value) > 2) {
//$NON-NLS-1$//$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "LOG_LEVEL", "2");
}
}
}));
}
return ExecutionResult.SUCCESS_NO_ALERT;
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
Aggregations