Compare commits
9 Commits
master
...
patch/TPS-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a8a764e273 | ||
|
|
d803bd655a | ||
|
|
64b033c51b | ||
|
|
9c31c2869d | ||
|
|
e91f8c1b5d | ||
|
|
6d16ec2e3e | ||
|
|
d5dfa732da | ||
|
|
49d093c671 | ||
|
|
0f3b302525 |
109
PATCH_RELEASE_NOTE.md
Normal file
109
PATCH_RELEASE_NOTE.md
Normal file
@@ -0,0 +1,109 @@
|
||||
---
|
||||
version: 7.2.1
|
||||
module: https://talend.poolparty.biz/coretaxonomy/42
|
||||
product:
|
||||
- https://talend.poolparty.biz/coretaxonomy/23
|
||||
---
|
||||
|
||||
# TPS-3315
|
||||
|
||||
| Info | Value |
|
||||
| ---------------- | ---------------- |
|
||||
| Patch Name | Patch\_20190808_TPS-3315\_v1-7.2.1 |
|
||||
| Release Date | 2019-08-08 |
|
||||
| Target Version | Talend-Studio-20190620\_1446-V7.2.1 |
|
||||
| Product affected | Talend Studio |
|
||||
|
||||
## Introduction
|
||||
|
||||
This is a self-contained patch.
|
||||
|
||||
**NOTE**: For information on how to obtain this patch, reach out to your Support contact at Talend.
|
||||
|
||||
## Fixed issues
|
||||
|
||||
This patch contains the following fixes:
|
||||
|
||||
- TPS-3315 [7.2.1] Additional JDBC Parameter exposes the password when using a context variable of password type (TDI-42721)
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Consider the following requirements for your system:
|
||||
|
||||
- Talend Studio 7.2.1 must be installed.
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
### Installing the patch using Software update
|
||||
|
||||
1) Logon TAC and switch to Configuration->Software Update, then enter the correct values and save referring to the documentation: https://help.talend.com/reader/f7Em9WV_cPm2RRywucSN0Q/j9x5iXV~vyxMlUafnDejaQ
|
||||
|
||||
2) Switch to Software update page, where the new patch will be listed. The patch can be downloaded from here into the nexus repository.
|
||||
|
||||
3) On Studio Side: Logon Studio with remote mode, on the logon page the Update button is displayed: click this button to install the patch.
|
||||
|
||||
### Installing the patch using Talend Studio
|
||||
|
||||
1) Create a folder named "patches" under your studio installer directory and copy the patch .zip file to this folder.
|
||||
|
||||
2) Restart your studio: a window pops up, then click OK to install the patch, or restart the commandline and the patch will be installed automatically.
|
||||
|
||||
### Installing the patch using Commandline
|
||||
|
||||
Execute the following commands:
|
||||
|
||||
1. Talend-Studio-win-x86_64.exe -nosplash -application org.talend.commandline.CommandLine -consoleLog -data commandline-workspace startServer -p 8002 --talendDebug
|
||||
2. initRemote {tac_url} -ul {TAC login username} -up {TAC login password}
|
||||
3. checkAndUpdate -tu {TAC login username} -tup {TAC login password}
|
||||
|
||||
## Uninstallation
|
||||
Backup the Affected files list below. Uninstall the patch by restore the backup files.
|
||||
|
||||
## Affected files for this patch
|
||||
|
||||
The following files are installed by this patch:
|
||||
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tELTMSSqlMap/tELTMSSqlMap\_main.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tELTMysqlMap/tELTMysqlMap\_main.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tELTOracleMap/tELTOracleMap\_main.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/templates/DB/CheckContextPassword.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlBulkExec/tMSSqlBulkExec\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlConnection/tMSSqlConnection\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlInput/tMSSqlInput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlOutput/tMSSqlOutput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlRow/tMSSqlRow\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlSCD/tMSSqlSCD\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMSSqlSP/tMSSqlSP\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlBulkExec/tMysqlBulkExec\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlConnection/tMysqlConnection\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlInput/tMysqlInput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlOutput/tMysqlOutput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlRow/tMysqlRow\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlSCD/tMysqlSCD\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlSCDELT/tMysqlSCDELT\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tMysqlSP/tMysqlSP\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleBulkExec/tOracleBulkExec\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleConnection/tOracleConnection\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleInput/tOracleInput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleOutput/tOracleOutput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleRow/tOracleRow\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleSCD/tOracleSCD\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleSCDELT/tOracleSCDELT\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tOracleSP/tOracleSP\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftBulkExec/tRedshiftBulkExec\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftConnection/tRedshiftConnection\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftInput/tRedshiftInput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftOutput/tRedshiftOutput\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftRow/tRedshiftRow\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tRedshiftUnload/tRedshiftUnload\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tMSSqlInvalidRows/tMSSqlInvalidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tMSSqlValidRows/tMSSqlValidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tMySQLInvalidRows/tMySQLInvalidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tMySQLValidRows/tMySQLValidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tOracleInvalidRows/tOracleInvalidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tdqprovider\_7.2.1.20190614\_0245/components/tOracleValidRows/tOracleValidRows\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tisprovider\_7.2.1.20190614\_0242/components/tMSSqlCDC/tMSSqlCDC\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tisprovider\_7.2.1.20190614\_0242/components/tMysqlCDC/tMysqlCDC\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tisprovider\_7.2.1.20190614\_0242/components/tOracleCDC/tOracleCDC\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.tisprovider\_7.2.1.20190614\_0242/components/tOracleCDCOutput/tOracleCDCOutput\_begin.javajet
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.abstractmap.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.alfrescooutput.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.business.diagram.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.codegen.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.exchange.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.core.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.dbmap.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.documentation.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.fileoutputxml.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.gefabstractmap.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.mapper.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.maven.job.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.rowgenerator.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.runprocess.nl</artifactId>
|
||||
|
||||
@@ -52,7 +52,7 @@ ProcessDebugDialog.errortext=Impossible de d\u00E9bugger le job.\\nV\u00E9rifiez
|
||||
ShadowProcess.notGeneratedOutputException=Sortie non g\u00E9n\u00E9r\u00E9e.
|
||||
ProcessComposite.contextGroup=Contexte
|
||||
prefs.clientConfiguration=Configuration du client Talend
|
||||
ProcessComposite.endPattern=Le Job {0} s\'est termin\u00E9 \u00E0 {1,date,HH:mm dd/MM/yyyy}. [code de sortie={2,number}]
|
||||
ProcessComposite.endPattern=Le Job {0} s'est termin\u00E9 \u00E0 {1,date,HH:mm dd/MM/yyyy}. [code de sortie={2,number}]
|
||||
ProcessView.title=Ex\u00E9cuter({0})
|
||||
Processor.configurePerl=L'interpr\u00E9teur Perl n'est pas configur\u00E9.
|
||||
JavaProcessor.notFoundedFolderException=Dossier introuvable dans le projet .Java
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.scd.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.webservice.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.xmlmap.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.expressionbuilder.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.presentation.onboarding.resource.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.presentation.onboarding.resource.tos.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.ftp.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.json.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.view.di.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.sbi.engines.client.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.spagic.engines.client.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.sqlbuilder.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.business.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.fragment.jars.di.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp.branding.tos.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp.branding.tos.test.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.sbi.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.spagic.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.components.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.core.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.libraries.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.abstractmap</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.alfrescooutput</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.business.diagram</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.codegen</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.exchange</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.libs</artifactId>
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
java.util.HashSet
|
||||
"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
java.util.HashSet
|
||||
"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
|
||||
|
||||
@@ -18,8 +18,56 @@
|
||||
"
|
||||
%>
|
||||
<%
|
||||
|
||||
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
DbMapComponent node = (DbMapComponent) codeGenArgument.getArgument();
|
||||
boolean stats = codeGenArgument.isStatistics();
|
||||
|
||||
@@ -15,6 +15,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -6,6 +6,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/HelpClass/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
class ConnectionUtil extends DefaultConnectionUtil{
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Input/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBInputBeginUtil extends DefaultDBInputUtil{
|
||||
|
||||
@@ -17,6 +17,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -6,6 +6,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Row/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBRowBeginUtil extends DefaultDBRowUtil{
|
||||
|
||||
@@ -18,6 +18,7 @@ imports="
|
||||
skeleton="../templates/slowly_change_dimension.skeleton"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
|
||||
@@ -9,6 +9,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
|
||||
@@ -14,6 +14,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="../templates/Log4j/Log4jDBConnUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -6,6 +6,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/HelpClass/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
class ConnectionUtil extends DefaultConnectionUtil{
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Input/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBInputBeginUtil extends DefaultDBInputUtil{
|
||||
|
||||
@@ -17,6 +17,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -6,6 +6,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Row/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBRowBeginUtil extends DefaultDBRowUtil{
|
||||
|
||||
@@ -16,7 +16,7 @@ imports="
|
||||
"
|
||||
skeleton="../templates/slowly_change_dimension.skeleton"
|
||||
%>
|
||||
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
|
||||
@@ -14,7 +14,7 @@ imports="
|
||||
"
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -8,6 +8,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
|
||||
@@ -18,6 +18,7 @@ skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
|
||||
<%@ include file="../templates/Log4j/Log4jDBConnUtil.javajet"%>
|
||||
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
@@ -96,6 +97,57 @@ String url_<%=cid%> = null;
|
||||
int deletedCount_<%=cid%>=0;
|
||||
<%
|
||||
boolean useExistingConnection = "true".equalsIgnoreCase(ElementParameterParser.getValue(node,"__USE_EXISTING_CONNECTION__"));
|
||||
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
if(useExistingConnection) {
|
||||
String connection = ElementParameterParser.getValue(node,"__CONNECTION__");
|
||||
String conn = "conn_" + connection;
|
||||
|
||||
@@ -7,6 +7,56 @@ imports="
|
||||
%>
|
||||
<%@ include file="../templates/DB/HelpClass/HelpClass.javajet"%>
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
class ConnectionUtil extends DefaultConnectionUtil{
|
||||
|
||||
public void beforeComponentProcess(INode node){
|
||||
|
||||
@@ -14,6 +14,56 @@ imports="
|
||||
%>
|
||||
<%@ include file="../templates/DB/Input/HelpClass.javajet"%>
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
class DBInputBeginUtil extends DefaultDBInputUtil{
|
||||
|
||||
private INode node = null;
|
||||
|
||||
@@ -51,6 +51,56 @@ skeleton="../templates/db_output_bulk.skeleton"
|
||||
boolean createGeometryColumns = ("true").equals(ElementParameterParser.getValue(node,"__GEOMETRY_COLUMNS__"));
|
||||
boolean useExistingConnection = "true".equals(ElementParameterParser.getValue(node,"__USE_EXISTING_CONNECTION__"));
|
||||
String connection = ElementParameterParser.getValue(node,"__CONNECTION__");
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
|
||||
String rejectConnName = null;
|
||||
List<? extends IConnection> rejectConns = node.getOutgoingConnections("REJECT");
|
||||
|
||||
@@ -6,8 +6,58 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Row/HelpClass.javajet"%>
|
||||
<%
|
||||
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
class DBRowBeginUtil extends DefaultDBRowUtil{
|
||||
|
||||
public void beforeComponentProcess(INode node){
|
||||
|
||||
@@ -18,6 +18,56 @@ skeleton="../templates/slowly_change_dimension.skeleton"
|
||||
%>
|
||||
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
String cid = node.getUniqueName();
|
||||
|
||||
@@ -14,8 +14,57 @@ imports="
|
||||
"
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
String cid = node.getUniqueName();
|
||||
|
||||
@@ -7,8 +7,57 @@ imports="
|
||||
java.util.Map
|
||||
"
|
||||
%>
|
||||
|
||||
<%
|
||||
//TPS-3315
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String user_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
String localServiceName_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__LOCAL_SERVICE_NAME__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(localServiceName_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
//
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode) codeGenArgument.getArgument();
|
||||
String cid = node.getUniqueName();
|
||||
|
||||
@@ -14,6 +14,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="../templates/Log4j/Log4jDBConnUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -6,6 +6,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/HelpClass/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
class ConnectionUtil extends DefaultConnectionUtil{
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Input/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBInputBeginUtil extends DefaultDBInputUtil{
|
||||
|
||||
@@ -16,6 +16,7 @@ imports="
|
||||
skeleton="../templates/db_output_bulk.skeleton"
|
||||
%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/Log4j/DBLogUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -8,6 +8,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/DB/Row/HelpClass.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
|
||||
class DBRowBeginUtil extends DefaultDBRowUtil{
|
||||
|
||||
@@ -14,6 +14,7 @@ imports="
|
||||
"
|
||||
%>
|
||||
<%@ include file="../templates/Log4j/Log4jDBConnUtil.javajet"%>
|
||||
<%@ include file="@{org.talend.designer.components.localprovider}/components/templates/DB/CheckContextPassword.javajet"%>
|
||||
<%
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<%@jet%>
|
||||
<%
|
||||
org.talend.designer.codegen.config.CodeGeneratorArgument codeGenArgument_pwdCheck = (org.talend.designer.codegen.config.CodeGeneratorArgument)argument;
|
||||
org.talend.core.model.process.INode node_pwdCheck = (org.talend.core.model.process.INode)codeGenArgument_pwdCheck.getArgument();
|
||||
boolean useExistingConnection_pwdCheck = "true".equalsIgnoreCase(ElementParameterParser.getValue(node_pwdCheck,"__USE_EXISTING_CONNECTION__"));
|
||||
if(!useExistingConnection_pwdCheck) {
|
||||
String dbhost_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__HOST__");
|
||||
String dbuser_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__USER__");
|
||||
String dbport_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PORT__");
|
||||
String dbname_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__DBNAME__");
|
||||
String dbproperties_pwdCheck = ElementParameterParser.getValue(node_pwdCheck, "__PROPERTIES__");
|
||||
final class ValueChecker {
|
||||
|
||||
public boolean checkValueForPassword(String inputValue, org.talend.core.model.process.IContext context) {
|
||||
if(null == inputValue) {
|
||||
return false;
|
||||
}
|
||||
java.util.List<String> parsed = new java.util.ArrayList<String>();
|
||||
String value = inputValue.trim();
|
||||
while(org.talend.core.model.utils.ContextParameterUtils.containContextVariables(value)) {
|
||||
String nonQuoteStr = org.talend.core.utils.TalendQuoteUtils.filterQuote(value);
|
||||
String contextVar = org.talend.core.model.utils.ContextParameterUtils.getVariableFromCode(nonQuoteStr);
|
||||
parsed.add(contextVar);
|
||||
String curValue = org.talend.core.model.utils.ContextParameterUtils.JAVA_NEW_CONTEXT_PREFIX + contextVar;
|
||||
int index = value.indexOf(curValue);
|
||||
if(index != -1) {
|
||||
value = value.substring(index + curValue.length(), value.length());
|
||||
}
|
||||
}
|
||||
for(String parsedParam : parsed) {
|
||||
org.talend.core.model.process.IContextParameter param = context.getContextParameter(parsedParam);
|
||||
if(org.talend.core.model.utils.ContextParameterUtils.isPasswordType(param)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
ValueChecker checker = new ValueChecker();
|
||||
org.talend.core.model.process.IContext context_pwdCheck = node_pwdCheck.getProcess().getContextManager().getDefaultContext();
|
||||
if(checker.checkValueForPassword(dbhost_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbport_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbname_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbproperties_pwdCheck, context_pwdCheck) || checker.checkValueForPassword(dbuser_pwdCheck, context_pwdCheck)) {
|
||||
%>
|
||||
if(true) {
|
||||
throw new RuntimeException("Password context variable is used in plain text field!");
|
||||
}
|
||||
<%
|
||||
}
|
||||
}
|
||||
%>
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.localprovider</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.core.generic</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.core</artifactId>
|
||||
|
||||
@@ -1948,7 +1948,7 @@ public class DataProcess implements IGeneratingProcess {
|
||||
}
|
||||
}
|
||||
|
||||
if (duplicatedProcess.getComponentsType().equals(ComponentCategory.CATEGORY_4_DI.getName()) && PluginChecker.isTIS()) {
|
||||
if (duplicatedProcess.getComponentsType().equals(ComponentCategory.CATEGORY_4_DI.getName()) && PluginChecker.isTIS() && !Boolean.getBoolean("deactivate_extended_component_log")) {
|
||||
final String talendJobLogComponent = "tJobStructureCatcher";
|
||||
final String uid4TalendJobLogComponent = "talendJobLog";
|
||||
IComponent jobStructComponent = ComponentsFactoryProvider.getInstance().get(talendJobLogComponent, ComponentCategory.CATEGORY_4_DI.getName());
|
||||
|
||||
@@ -266,6 +266,9 @@ public class TextController extends AbstractElementPropertySectionController {
|
||||
* @param value
|
||||
*/
|
||||
private void checkTextError(IElementParameter param, Text labelText, Object value) {
|
||||
if (elem instanceof Node) {
|
||||
labelText.setToolTipText(VARIABLE_TOOLTIP + param.getVariableName());
|
||||
}
|
||||
// Only for job settings View.
|
||||
// job settings extra (feature 2710)
|
||||
if (param.getCategory() == EComponentCategory.STATSANDLOGS || param.getCategory() == EComponentCategory.EXTRA) {
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.dbmap</artifactId>
|
||||
|
||||
@@ -1325,6 +1325,7 @@ public abstract class DbGenerationManager {
|
||||
|
||||
protected String initExpression(DbMapComponent component, ExternalDbMapEntry dbMapEntry) {
|
||||
String quote = getQuote(component);
|
||||
String quto_mark = TalendQuoteUtils.QUOTATION_MARK;
|
||||
String expression = dbMapEntry.getExpression();
|
||||
if (expression != null) {
|
||||
List<Map<String, String>> itemNameList = null;
|
||||
@@ -1349,7 +1350,7 @@ public abstract class DbGenerationManager {
|
||||
itemNameList = mapParser2.parseInTableEntryLocations(expression);
|
||||
}
|
||||
|
||||
String quoParser = "[\\\\]?\\" + quote; //$NON-NLS-1$
|
||||
String quto_markParser = "[\\\\]?\\" + quto_mark; //$NON-NLS-1$
|
||||
for (Map<String, String> itemNamemap : itemNameList) {
|
||||
Set<Entry<String, String>> set = itemNamemap.entrySet();
|
||||
Iterator<Entry<String, String>> ite = set.iterator();
|
||||
@@ -1415,16 +1416,12 @@ public abstract class DbGenerationManager {
|
||||
}
|
||||
if (expression.trim().equals(tableValue + "." + oriName)) {
|
||||
expression = tableValue + "." + getColumnName(iconn, oriName, quote);
|
||||
if(TalendQuoteUtils.QUOTATION_MARK.equals(quote)){
|
||||
expression = expression.replaceAll(quoParser,"\\\\" +quote); //$NON-NLS-1$
|
||||
}
|
||||
expression = expression.replaceAll(quto_markParser,"\\\\" +quto_mark); //$NON-NLS-1$
|
||||
continue;
|
||||
}
|
||||
if (expression.trim().equals(originaltableName + "." + oriName)) {
|
||||
expression = originaltableName + "." + getColumnName(iconn, oriName, quote);
|
||||
if(TalendQuoteUtils.QUOTATION_MARK.equals(quote)){
|
||||
expression = expression.replaceAll(quoParser,"\\\\" +quote); //$NON-NLS-1$
|
||||
}
|
||||
expression = expression.replaceAll(quto_markParser,"\\\\" +quto_mark); //$NON-NLS-1$
|
||||
continue;
|
||||
}
|
||||
// if it is temp delived table, use label to generate sql
|
||||
@@ -1438,9 +1435,7 @@ public abstract class DbGenerationManager {
|
||||
}
|
||||
expression = expression.replaceFirst(tableValue + "\\." + co.getLabel(), //$NON-NLS-1$
|
||||
tableValue + "\\." + oriName); //$NON-NLS-1$
|
||||
if(TalendQuoteUtils.QUOTATION_MARK.equals(quote)){
|
||||
expression = replaceAuotes(expression, quoParser, quote);
|
||||
}
|
||||
expression = replaceAuotes(expression, quto_markParser, quto_mark);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.documentation</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.filemultischemas</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.fileoutputxml</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.gefabstractmap</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.mapper.advanced</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.mapper</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.maven.job</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.publish.core</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.rowgenerator</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.runprocess</artifactId>
|
||||
|
||||
@@ -1461,19 +1461,20 @@ public class JavaProcessor extends AbstractJavaProcessor implements IJavaBreakpo
|
||||
break;
|
||||
}
|
||||
}
|
||||
useRelativeClasspath = hasCXFComponent;
|
||||
IFolder execPath = talendJavaProject.getTargetFolder();
|
||||
for (ModuleNeeded neededModule : neededModules) {
|
||||
MavenArtifact artifact = MavenUrlHelper.parseMvnUrl(neededModule.getMavenUri());
|
||||
String relativeJarPath = JavaProcessorUtilities.getJavaProjectLibFolder2()
|
||||
.getFile(MavenUrlHelper.generateModuleNameByMavenURI(neededModule.getMavenUri())).getLocation()
|
||||
.makeRelativeTo(execPath.getLocation())
|
||||
.toPortableString();
|
||||
IPath jarPath = JavaProcessorUtilities.getJavaProjectLibFolder2()
|
||||
.getFile(MavenUrlHelper.generateModuleNameByMavenURI(neededModule.getMavenUri())).getLocation();
|
||||
String artifactId = artifact.getArtifactId();
|
||||
boolean hasSapjco3 = "sapjco3".equals(artifactId) && compareSapjco3Version(relativeJarPath) > 0; //$NON-NLS-1$
|
||||
boolean hasSapjco3 = "sapjco3".equals(artifactId) //$NON-NLS-1$
|
||||
&& compareSapjco3Version(jarPath.toPortableString()) > 0;
|
||||
boolean hasSapidoc3 = "sapidoc3".equals(artifactId); //$NON-NLS-1$
|
||||
useRelativeClasspath = hasCXFComponent || hasSapjco3 || hasSapidoc3;
|
||||
if (useRelativeClasspath) {
|
||||
libPath.append(relativeJarPath).append(classPathSeparator);
|
||||
if (hasCXFComponent) {
|
||||
libPath.append(jarPath.makeRelativeTo(execPath.getLocation()).toPortableString()).append(classPathSeparator);
|
||||
} else if (hasSapjco3 || hasSapidoc3) {
|
||||
libPath.append(jarPath.toPortableString()).append(classPathSeparator);
|
||||
} else {
|
||||
libPath.append(PomUtil.getAbsArtifactPathAsCP(artifact)).append(classPathSeparator);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>7.2.1-SNAPSHOT</version>
|
||||
<version>7.2.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.runtime.visualization.tools</artifactId>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user