use of org.talend.core.model.components.filters.NameComponentFilter in project tdi-studio-se by Talend.
the class AddDoubleQuoteToAllDBSPNameMigrationTask 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 (getProject().getLanguage() != ECodeLanguage.JAVA || processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
try {
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
String[] componentsName = new String[] { "tOracleSP", "tMSSqlSP", "tDB2SP", "tSybaseSP", "tMysqlSP", "tJDBCSP" };
//$NON-NLS-1$
IComponentConversion addQuotesSPName = new AddQuotesInPropertyComponentConversion("SP_NAME");
for (String name : componentsName) {
//$NON-NLS-1$
IComponentFilter filter = new NameComponentFilter(name);
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(addQuotesSPName));
}
return ExecutionResult.SUCCESS_NO_ALERT;
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
use of org.talend.core.model.components.filters.NameComponentFilter in project tdi-studio-se by Talend.
the class AddDoubleQuoteTotMomMigrationTask method execute.
/*
* (non-Javadoc)
*
* @see org.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 {
//$NON-NLS-1$
IComponentFilter filter1 = new NameComponentFilter("tMomInput");
//$NON-NLS-1$
IComponentFilter filter2 = new NameComponentFilter("tMomOutput");
//$NON-NLS-1$
IComponentConversion addQuotesFrom = new AddQuotesInPropertyComponentConversion("FROM");
//$NON-NLS-1$
IComponentConversion addQuotesTo = new AddQuotesInPropertyComponentConversion("TO");
//$NON-NLS-1$
IComponentConversion addQuotes1 = new AddQuotesInPropertyComponentConversion("SERVERADDRESS");
//$NON-NLS-1$
IComponentConversion addQuotes2 = new AddQuotesInPropertyComponentConversion("SERVERPORT");
//$NON-NLS-1$
IComponentConversion addQuotes3 = new AddQuotesInPropertyComponentConversion("CHANNEL");
//$NON-NLS-1$
IComponentConversion addQuotes4 = new AddQuotesInPropertyComponentConversion("QM");
//$NON-NLS-1$
IComponentConversion addQuotes5 = new AddQuotesInPropertyComponentConversion("QUEUE");
ModifyComponentsAction.searchAndModify(item, processType, filter1, Arrays.<IComponentConversion>asList(addQuotes1, addQuotes2, addQuotes3, addQuotes4, addQuotes5, addQuotesFrom));
ModifyComponentsAction.searchAndModify(item, processType, filter2, Arrays.<IComponentConversion>asList(addQuotes1, addQuotes2, addQuotes3, addQuotes4, addQuotes5, addQuotesTo));
return ExecutionResult.SUCCESS_NO_ALERT;
} catch (Exception e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
use of org.talend.core.model.components.filters.NameComponentFilter in project tdi-studio-se by Talend.
the class AddHashKeyFromInputConnector4tHashOutput method execute.
@Override
public ExecutionResult execute(Item item) {
final ProcessType processType = getProcessType(item);
//$NON-NLS-1$
String[] compNames = { "tHashOutput" };
IComponentConversion action = new IComponentConversion() {
public void transform(NodeType node) {
if (node == null) {
return;
}
//$NON-NLS-1$
ElementParameterType property = ComponentUtilities.getNodeProperty(node, "HASH_KEY_FROM_INPUT_CONNECTOR");
if (property == null) {
//$NON-NLS-1$ //$NON-NLS-2$
ComponentUtilities.addNodeProperty(node, "HASH_KEY_FROM_INPUT_CONNECTOR", "CHECK");
//$NON-NLS-1$ //$NON-NLS-2$
ComponentUtilities.setNodeValue(node, "HASH_KEY_FROM_INPUT_CONNECTOR", "true");
}
}
};
for (String name : compNames) {
IComponentFilter filter = new NameComponentFilter(name);
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(action));
} catch (PersistenceException e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
use of org.talend.core.model.components.filters.NameComponentFilter in project tdi-studio-se by Talend.
the class AddDistributionClosedListForHadoopComponentsMigrationTask method addDistributionClosedList.
private void addDistributionClosedList(Item item) throws Exception {
ProcessType processType = getProcessType(item);
java.util.List<IComponentFilter> filters = new java.util.ArrayList<IComponentFilter>();
filters.add(new NameComponentFilter("tHDFSConnection"));
filters.add(new NameComponentFilter("tHDFSInput"));
filters.add(new NameComponentFilter("tHDFSOutput"));
filters.add(new NameComponentFilter("tHDFSPut"));
filters.add(new NameComponentFilter("tHDFSGet"));
filters.add(new NameComponentFilter("tHDFSDelete"));
filters.add(new NameComponentFilter("tPigLoad"));
filters.add(new NameComponentFilter("tHiveConnection"));
filters.add(new NameComponentFilter("tHiveInput"));
filters.add(new NameComponentFilter("tHiveRow"));
filters.add(new NameComponentFilter("tHBaseConnection"));
filters.add(new NameComponentFilter("tHBaseInput"));
filters.add(new NameComponentFilter("tHBaseOutput"));
filters.add(new NameComponentFilter("tHCatalogInput"));
filters.add(new NameComponentFilter("tHCatalogLoad"));
filters.add(new NameComponentFilter("tHCatalogOutput"));
filters.add(new NameComponentFilter("tHCatalogOperation"));
IComponentConversion addOption = new AddDistribution();
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.core.model.components.filters.NameComponentFilter in project tdi-studio-se by Talend.
the class RemoveUnuseQuoteOnTLoop method execute.
@Override
public ExecutionResult execute(Item item) {
ProcessType processType = getProcessType(item);
if (getProject().getLanguage() != ECodeLanguage.JAVA || processType == null) {
return ExecutionResult.NOTHING_TO_DO;
}
//$NON-NLS-1$
String[] componentsName = new String[] { "tLoop" };
IComponentConversion removeQuote = new IComponentConversion() {
private void removeQuote(ElementParameterType element) {
if (element != null && element.getValue() != null) {
String dValue = element.getValue();
if (dValue.startsWith("\"") && dValue.endsWith("\"")) {
//$NON-NLS-1$ //$NON-NLS-2$
dValue = dValue.substring(1, dValue.length() - 1);
element.setValue(dValue);
}
}
}
@Override
public void transform(NodeType node) {
//$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
List<String> parameters = Arrays.asList(new String[] { "DECLARATION", "CONDITION", "ITERATION" });
for (String parameter : parameters) {
removeQuote(ComponentUtilities.getNodeProperty(node, parameter));
}
}
};
for (String name : componentsName) {
IComponentFilter filter = new NameComponentFilter(name);
try {
ModifyComponentsAction.searchAndModify(item, processType, filter, Arrays.<IComponentConversion>asList(removeQuote));
} catch (PersistenceException e) {
ExceptionHandler.process(e);
return ExecutionResult.FAILURE;
}
}
return ExecutionResult.SUCCESS_NO_ALERT;
}
Aggregations