use of org.talend.designer.core.model.utils.emf.talendfile.NodeType in project tdi-studio-se by Talend.
the class ChangeDefaultValue4tMarketoOutput method execute.
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
IComponentFilter filter = new NameComponentFilter("tMarketoOutput");
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(new IComponentConversion() {
public void transform(NodeType node) {
ElementParameterType isVirtualComp = ComponentUtilities.getNodeProperty(node, "IS_VIRTUAL_COMPONENT");
if (isVirtualComp == null) {
ElementParameterType operation = ComponentUtilities.getNodeProperty(node, "OPERATION");
if (operation != null && "syncMultipleLeads".equals(operation.getValue())) {
ComponentUtilities.addNodeProperty(node, "IS_VIRTUAL_COMPONENT", "CHECK");
ComponentUtilities.getNodeProperty(node, "IS_VIRTUAL_COMPONENT").setValue("false");
}
}
}
}));
} catch (PersistenceException e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
use of org.talend.designer.core.model.utils.emf.talendfile.NodeType in project tdi-studio-se by Talend.
the class ChangeDefaultValueBug10232 method execute.
/*
* (non-Javadoc)
*
* @seeorg.talend.core.model.migration.AbstractJobMigrationTask#executeOnProcess(org.talend.core.model.properties.
* ProcessItem)
*/
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (getProject().getLanguage() != ECodeLanguage.JAVA || processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
String[] componentsName = new String[] { "tReplace" };
try {
for (int i = 0; i < componentsName.length; i++) {
IComponentFilter filter = new NameComponentFilter(componentsName[i]);
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(new IComponentConversion() {
public void transform(NodeType node) {
if (ComponentUtilities.getNodeProperty(node, "STRICT_MATCH") == null) {
ComponentUtilities.addNodeProperty(node, "STRICT_MATCH", "CHECK");
}
ComponentUtilities.getNodeProperty(node, "STRICT_MATCH").setValue("false");
}
}));
}
return ExecutionResult.SUCCESS_NO_ALERT;
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
use of org.talend.designer.core.model.utils.emf.talendfile.NodeType in project tdi-studio-se by Talend.
the class ChangeDefaultValueForCassandra3Version method execute.
/*
* (non-Javadoc)
*
* @see org.talend.core.model.migration.AbstractItemMigrationTask#execute(org.talend.core.model.properties.Item)
*/
@Override
public ExecutionResult execute(Item item) {
final ProcessType processType = getProcessType(item);
String[] compNames = { "tCassandraConnection", "tCassandraInput", "tCassandraOutput", "tCassandraRow", "tCassandraOutputBulk", "tCassandraOutputBulkExec", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$
"tCassandraBulkExec" };
IComponentConversion conversion = new IComponentConversion() {
@Override
public void transform(NodeType node) {
if (node == null) {
return;
}
//$NON-NLS-1$
ElementParameterType parameter = ComponentUtilities.getNodeProperty(node, "DB_VERSION");
if (parameter == null) {
//$NON-NLS-1$ //$NON-NLS-2$
ComponentUtilities.addNodeProperty(node, "DB_VERSION", "CLOSED_LIST");
//$NON-NLS-1$ //$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "DB_VERSION", "CASSANDRA_1_1_2");
}
}
};
for (String name : compNames) {
IComponentFilter filter = new NameComponentFilter(name);
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(conversion));
} catch (PersistenceException e) {
// TODO Auto-generated catch block
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
use of org.talend.designer.core.model.utils.emf.talendfile.NodeType in project tdi-studio-se by Talend.
the class ChangeDefaultValueTDIBug21708 method execute.
/*
* (non-Javadoc)
*
* @seeorg.talend.core.model.migration.AbstractJobMigrationTask#executeOnProcess(org.talend.core.model.properties.
* ProcessItem)
*/
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (getProject().getLanguage() != ECodeLanguage.JAVA || processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
try {
boolean modified = false;
for (Object o : processType.getNode()) {
NodeType node = (NodeType) o;
if (ComponentUtilities.getNodeProperty(node, "PARALLELIZE") != null) {
if (ComponentUtilities.getNodeProperty(node, "PARALLELIZE_KEEP_EMPTY") == null) {
ComponentUtilities.addNodeProperty(node, "PARALLELIZE_KEEP_EMPTY", "CHECK");
ComponentUtilities.getNodeProperty(node, "PARALLELIZE_KEEP_EMPTY").setValue("true");
modified = true;
}
}
}
if (modified) {
ProxyRepositoryFactory.getInstance().save(item, true);
return ExecutionResult.SUCCESS_NO_ALERT;
} else {
return ExecutionResult.NOTHING_TO_DO;
}
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
use of org.talend.designer.core.model.utils.emf.talendfile.NodeType in project tdi-studio-se by Talend.
the class ChangeELTHiveOutputPartitionValue method wrapQuot.
private boolean wrapQuot(Item item, ProcessType processType) throws PersistenceException {
ProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance();
boolean modified = false;
EList node = processType.getNode();
for (Object n : node) {
NodeType type = (NodeType) n;
if (type.getComponentName().equals("tELTHiveOutput")) {
//$NON-NLS-1$
EList elementParameterList = type.getElementParameter();
for (Object elem : elementParameterList) {
ElementParameterType elemType = (ElementParameterType) elem;
if (elemType.getName().equals("FIELD_PARTITION")) {
//$NON-NLS-1$
EList elemValue = elemType.getElementValue();
for (Object eVal : elemValue) {
ElementValueType elemVal = (ElementValueType) eVal;
String originV = elemVal.getValue();
//$NON-NLS-1$ //$NON-NLS-2$
elemVal.setValue("\"" + originV + "\"");
modified = true;
}
}
}
}
}
if (modified) {
factory.save(item, true);
}
return modified;
}
Aggregations