/** * DOC qzhang Comment method "changeTableNameParameter". * * @param newdbTableName * @param olddbTableName * @param uniqueName * @param dbTableElementField */ private void changeTableNameParameter( String newdbTableName, String olddbTableName, String uniqueName, IElementParameter dbTableElementField) { if (dbTableElementField != null) { if (isNotSim) { newdbTableName = newdbTableName == null ? "" : newdbTableName; // $NON-NLS-1$ dbTableElementField.setValue(TalendTextUtils.addQuotes(newdbTableName)); return; } Object value = dbTableElementField.getValue(); String removeQuotes = TalendTextUtils.removeQuotes((String) value); boolean b = value == null || removeQuotes.equals(""); // $NON-NLS-1$ // add the code for table name equals uniqueName b = b || uniqueName.equals(olddbTableName); b = b || value != null && removeQuotes.toString().equals(olddbTableName); if (b) { newdbTableName = newdbTableName == null ? "" : newdbTableName; // $NON-NLS-1$ dbTableElementField.setValue(TalendTextUtils.addQuotes(newdbTableName)); } } }
@Override public void refresh(IElementParameter param, boolean check) { CCombo combo = (CCombo) hashCurControls.get(param.getName()); if (combo == null || combo.isDisposed()) { return; } updateData(); String[] curNameList = param.getListItemsDisplayName(); Object value = param.getValue(); combo.setItems(curNameList); if (value instanceof String) { combo.setText(TalendTextUtils.removeQuotes((String) value)); } if (param.isContextMode()) { Button buttonEdit = (Button) hashCurControls.get(param.getName() + BUTTON_EDIT); combo.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_RED)); combo.setEnabled(false); buttonEdit.setEnabled(false); } }
/** Constructs a new FileInputNode. */ public FileInputDelimitedNode( String filename, String rowSep, String fieldSep, int limitRows, int headerRows, int footerRows, String escapeChar, String textEnclosure, boolean removeEmptyRow, boolean spitRecord, String encoding, EShadowProcessType fileType) { super("tFileInputDelimited"); // $NON-NLS-1$ boolean csvoption = false; String languageName = LanguageManager.getCurrentLanguage().getName(); switch (fileType) { case FILE_DELIMITED: csvoption = false; if (languageName.equals("perl")) { // $NON-NLS-1$ int max = getColumnCount( filename, rowSep, fieldSep, limitRows, headerRows, escapeChar, textEnclosure, EShadowProcessType.FILE_DELIMITED); this.setColumnNumber(max); } else { int max = 0; try { max = FileInputDelimited.getMaxColumnCount( trimParameter(filename), trimParameter(encoding), trimParameter(StringUtils.loadConvert(fieldSep, languageName)), trimParameter(StringUtils.loadConvert(rowSep, languageName)), true, spitRecord, headerRows, limitRows); } catch (IOException e) { // e.printStackTrace(); ExceptionHandler.process(e); } if (max > 0) { this.setColumnNumber(max); } } break; case FILE_CSV: csvoption = true; if (languageName.equals("perl")) { // $NON-NLS-1$ int max = getColumnCount( filename, rowSep, fieldSep, limitRows, headerRows, escapeChar, textEnclosure, EShadowProcessType.FILE_CSV); this.setColumnNumber(max); } else { CSVFileColumnConnter cr = null; try { cr = new CSVFileColumnConnter(); cr.setSeperator( trimParameter(StringUtils.loadConvert(fieldSep, languageName)).charAt(0)); int columnCount = 0; columnCount = cr.countMaxColumnNumber( new File(TalendTextUtils.removeQuotes(filename)), limitRows); if (columnCount > 0) { this.setColumnNumber(columnCount); } } catch (UnsupportedEncodingException e) { ExceptionHandler.process(e); } catch (FileNotFoundException e) { ExceptionHandler.process(e); } catch (IOException e) { ExceptionHandler.process(e); } } break; default: break; } String[] paramNames = null; if (!csvoption) { paramNames = new String[] { "FILENAME", "ROWSEPARATOR", "FIELDSEPARATOR", "LIMIT", "HEADER", "FOOTER", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ // //$NON-NLS-6$ "ESCAPE_CHAR", "TEXT_ENCLOSURE", "REMOVE_EMPTY_ROW", "ENCODING", "CSV_OPTION", "SPLITRECORD" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ } else { paramNames = new String[] { "FILENAME", "CSVROWSEPARATOR", "FIELDSEPARATOR", "LIMIT", "HEADER", "FOOTER", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ // //$NON-NLS-6$ "ESCAPE_CHAR", "TEXT_ENCLOSURE", "REMOVE_EMPTY_ROW", "ENCODING", "CSV_OPTION", "SPLITRECORD" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ } String[] paramValues = new String[] { filename, rowSep, fieldSep, Integer.toString(limitRows), Integer.toString(headerRows), Integer.toString(footerRows), escapeChar, textEnclosure, Boolean.toString(removeEmptyRow), encoding, Boolean.toString(csvoption), Boolean.toString(spitRecord) }; IComponent component = ComponentsFactoryProvider.getInstance() .get( "tFileInputDelimited", //$NON-NLS-1$ ComponentCategory.CATEGORY_4_DI.getName()); this.setElementParameters(component.createElementParameters(this)); for (int i = 0; i < paramNames.length; i++) { if (paramValues[i] != null) { IElementParameter param = this.getElementParameter(paramNames[i]); if (param != null) { param.setValue(paramValues[i]); } } } }
public String generate(Object argument) { final StringBuffer stringBuffer = new StringBuffer(); CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument; INode node = (INode) codeGenArgument.getArgument(); String cid = node.getUniqueName(); String endpoint = ElementParameterParser.getValue(node, "__ENDPOINT__"); String username = ElementParameterParser.getValue(node, "__USER__"); String password = ElementParameterParser.getValue(node, "__PASS__"); String timeout = ElementParameterParser.getValue(node, "__TIMEOUT__"); boolean needCompression = ("true").equals(ElementParameterParser.getValue(node, "__NEED_COMPRESSION__")); boolean httpTraceMessage = ("true").equals(ElementParameterParser.getValue(node, "__HTTP_TRACEMESSAGE__")); boolean useProxy = ("true").equals(ElementParameterParser.getValue(node, "__USE_PROXY__")); String proxyHost = ElementParameterParser.getValue(node, "__PROXY_HOST__"); String proxyPort = ElementParameterParser.getValue(node, "__PROXY_PORT__"); String proxyUsername = ElementParameterParser.getValue(node, "__PROXY_USERNAME__"); String proxyPassword = ElementParameterParser.getValue(node, "__PROXY_PASSWORD__"); boolean bulkConnection = ("true").equals(ElementParameterParser.getValue(node, "__BULK_CONNECTION__")); String apiVersion = ElementParameterParser.getValue(node, "__API_VERSION__"); String clientID = ElementParameterParser.getValue(node, "__CLIENT_ID__"); if (bulkConnection) { stringBuffer.append(TEXT_1); stringBuffer.append(cid); stringBuffer.append(TEXT_2); if (useProxy) { stringBuffer.append(TEXT_3); stringBuffer.append(cid); stringBuffer.append(TEXT_4); stringBuffer.append(proxyHost); stringBuffer.append(TEXT_5); stringBuffer.append(TalendTextUtils.removeQuotes(proxyPort)); stringBuffer.append(TEXT_6); stringBuffer.append(proxyUsername); stringBuffer.append(TEXT_7); stringBuffer.append(proxyPassword); stringBuffer.append(TEXT_8); } stringBuffer.append(TEXT_9); stringBuffer.append(cid); stringBuffer.append(TEXT_10); stringBuffer.append(needCompression); stringBuffer.append(TEXT_11); stringBuffer.append(cid); stringBuffer.append(TEXT_12); stringBuffer.append(httpTraceMessage); stringBuffer.append(TEXT_13); stringBuffer.append(cid); stringBuffer.append(TEXT_14); stringBuffer.append(endpoint); stringBuffer.append(TEXT_15); stringBuffer.append(username); stringBuffer.append(TEXT_16); stringBuffer.append(password); stringBuffer.append(TEXT_17); stringBuffer.append(apiVersion); stringBuffer.append(TEXT_18); stringBuffer.append(cid); stringBuffer.append(TEXT_19); stringBuffer.append(cid); stringBuffer.append(TEXT_20); } else { if (useProxy) { stringBuffer.append(TEXT_21); stringBuffer.append(cid); stringBuffer.append(TEXT_22); stringBuffer.append(cid); stringBuffer.append(TEXT_23); stringBuffer.append(proxyHost); stringBuffer.append(TEXT_24); stringBuffer.append(cid); stringBuffer.append(TEXT_25); stringBuffer.append(proxyPort); stringBuffer.append(TEXT_26); stringBuffer.append(cid); stringBuffer.append(TEXT_27); stringBuffer.append(proxyUsername); stringBuffer.append(TEXT_28); stringBuffer.append(cid); stringBuffer.append(TEXT_29); stringBuffer.append(proxyPassword); stringBuffer.append(TEXT_30); } stringBuffer.append(TEXT_31); stringBuffer.append(cid); stringBuffer.append(TEXT_32); if (clientID != null && !"".equals(clientID) && !"\"\"".equals(clientID)) { stringBuffer.append(TEXT_33); stringBuffer.append(cid); stringBuffer.append(TEXT_34); stringBuffer.append(clientID); stringBuffer.append(TEXT_35); stringBuffer.append(cid); stringBuffer.append(TEXT_36); stringBuffer.append(cid); stringBuffer.append(TEXT_37); } stringBuffer.append(TEXT_38); stringBuffer.append(cid); stringBuffer.append(TEXT_39); stringBuffer.append(cid); stringBuffer.append(TEXT_40); stringBuffer.append(endpoint); stringBuffer.append(TEXT_41); stringBuffer.append(username); stringBuffer.append(TEXT_42); stringBuffer.append(password); stringBuffer.append(TEXT_43); stringBuffer.append(timeout); stringBuffer.append(TEXT_44); stringBuffer.append(needCompression); stringBuffer.append(TEXT_45); stringBuffer.append(cid); stringBuffer.append(TEXT_46); stringBuffer.append(cid); stringBuffer.append(TEXT_47); stringBuffer.append(cid); stringBuffer.append(TEXT_48); stringBuffer.append(cid); stringBuffer.append(TEXT_49); stringBuffer.append(cid); stringBuffer.append(TEXT_50); } stringBuffer.append(TEXT_51); stringBuffer.append(TEXT_52); return stringBuffer.toString(); }