Compare commits
79 Commits
master
...
bugfix/pat
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6f64347adc | ||
|
|
30862f7074 | ||
|
|
d1b60e2e3f | ||
|
|
7329a7558e | ||
|
|
956891d18c | ||
|
|
50810ed439 | ||
|
|
9420056b37 | ||
|
|
5957b4993c | ||
|
|
5b664d9852 | ||
|
|
7cbef2f37f | ||
|
|
4cc93be67f | ||
|
|
f120c7c4dd | ||
|
|
564ed2618d | ||
|
|
5d4c8cc9d9 | ||
|
|
c6647a76a8 | ||
|
|
a1fd9f361b | ||
|
|
2ad1c00b63 | ||
|
|
98db49e280 | ||
|
|
6a6be36610 | ||
|
|
ddb69232e5 | ||
|
|
a4ffd73a24 | ||
|
|
6bb63c2a6d | ||
|
|
e7881d1ecd | ||
|
|
8b879dcbbd | ||
|
|
87b860b0b1 | ||
|
|
3f5a74d847 | ||
|
|
dd6501d8c6 | ||
|
|
9b736bf30a | ||
|
|
09b2ad8aa6 | ||
|
|
245f1c42c2 | ||
|
|
03085d1574 | ||
|
|
5fb4589799 | ||
|
|
7a69ed4c4d | ||
|
|
a38fec9792 | ||
|
|
4cef94aff4 | ||
|
|
09169a8664 | ||
|
|
391704ac42 | ||
|
|
9e693e6f89 | ||
|
|
eee97f1977 | ||
|
|
095c79cbf2 | ||
|
|
2884b847d5 | ||
|
|
96d4930a0a | ||
|
|
e8f2adce2d | ||
|
|
34396d7182 | ||
|
|
82d238deff | ||
|
|
4487a6d33e | ||
|
|
70469391d8 | ||
|
|
7ea110dc3c | ||
|
|
fcad4148f5 | ||
|
|
ebe98a4d67 | ||
|
|
cd23062e30 | ||
|
|
5990df09b0 | ||
|
|
4f5b39d2da | ||
|
|
c9c9d4df22 | ||
|
|
9f4d4fc832 | ||
|
|
cc93b9959b | ||
|
|
94e2442e11 | ||
|
|
079ce620ab | ||
|
|
535af6359e | ||
|
|
0544da1147 | ||
|
|
bdb27eaf55 | ||
|
|
c4b9def853 | ||
|
|
9b31f616f7 | ||
|
|
3c8552e58c | ||
|
|
81f603037b | ||
|
|
3c9ff7e553 | ||
|
|
6611515bd6 | ||
|
|
66dfb4f0bf | ||
|
|
75b74d2c17 | ||
|
|
92e5a0801d | ||
|
|
62ce41a0e9 | ||
|
|
aa9c2b08b9 | ||
|
|
37c58a98cd | ||
|
|
9c31c2869d | ||
|
|
e91f8c1b5d | ||
|
|
6d16ec2e3e | ||
|
|
d5dfa732da | ||
|
|
49d093c671 | ||
|
|
0f3b302525 |
@@ -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>
|
||||
|
||||
@@ -94,7 +94,7 @@ public class JavaRoutineSynchronizer extends AbstractRoutineSynchronizer {
|
||||
|
||||
private void syncRoutineItems(Collection<RoutineItem> routineObjects, boolean forceUpdate) throws SystemException {
|
||||
for (RoutineItem routineItem : routineObjects) {
|
||||
syncRoutine(routineItem, true, true, forceUpdate);
|
||||
syncRoutine(routineItem, true, forceUpdate);
|
||||
}
|
||||
syncSystemRoutine(ProjectManager.getInstance().getCurrentProject());
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -569,17 +569,18 @@
|
||||
loadJobBuilder_<%=cid%>.setDestinationTable(tableId_<%=cid%>);
|
||||
com.google.cloud.bigquery.CsvOptions.Builder csvOptions_<%=cid%> = com.google.cloud.bigquery.CsvOptions.newBuilder();
|
||||
csvOptions_<%=cid%>.setAllowQuotedNewLines(true);
|
||||
csvOptions_<%=cid%>.setSkipLeadingRows(<%=ElementParameterParser.getValue(node, "__GS_FILE_HEADER__")%>);
|
||||
|
||||
<%if("true".equals(ElementParameterParser.getValue(node, "__SET_FIELD_DELIMITER__"))) {
|
||||
%>
|
||||
loadJobBuilder_<%=cid%>.setFormatOptions(csvOptions_<%=cid%>.setFieldDelimiter(<%=fieldDelimiter%>).build());
|
||||
csvOptions_<%=cid%>.setFieldDelimiter(<%=fieldDelimiter%>);
|
||||
<%
|
||||
}
|
||||
%>
|
||||
|
||||
loadJobBuilder_<%=cid%>.setFormatOptions(csvOptions_<%=cid%>.build());
|
||||
loadJobBuilder_<%=cid%>.setNullMarker("\\N");
|
||||
com.google.cloud.bigquery.Job job_<%=cid%> = bigquery_<%=cid%>.create(com.google.cloud.bigquery.JobInfo.of(loadJobBuilder_<%=cid%>.build()));
|
||||
job_<%=cid%> = job_<%=cid%>.waitFor(com.google.cloud.RetryOption.initialRetryDelay(org.threeten.bp.Duration.ofSeconds(1)), com.google.cloud.RetryOption.totalTimeout(org.threeten.bp.Duration.ofSeconds(30)));
|
||||
job_<%=cid%> = job_<%=cid%>.waitFor(com.google.cloud.RetryOption.initialRetryDelay(org.threeten.bp.Duration.ofSeconds(1)));
|
||||
if (job_<%=cid%> != null && job_<%=cid%>.getStatus().getError() == null) {
|
||||
<%
|
||||
if(isLog4jEnabled){
|
||||
|
||||
@@ -221,10 +221,9 @@
|
||||
}
|
||||
|
||||
String query_<%=cid%> = <%=query%>;
|
||||
String dataset = query_<%=cid%>.substring(query_<%=cid%>.indexOf("from") + 4, query_<%=cid%>.indexOf(".")).trim();
|
||||
String temp_table = "temp_" + dataset + java.util.UUID.randomUUID().toString().replaceAll("-", "")
|
||||
+ "<%=cid%>".toLowerCase().replaceAll("[^a-z0-9]", "0").replaceAll("^[^a-z]", "a")
|
||||
+ Integer.toHexString(java.util.concurrent.ThreadLocalRandom.current().nextInt());
|
||||
<% if(isLog4jEnabled) { %>
|
||||
log.info("<%=cid%> - query " + <%=query%>);
|
||||
<% } %>
|
||||
|
||||
com.google.cloud.bigquery.BigQuery bigquery_<%=cid%> = com.google.cloud.bigquery.BigQueryOptions.newBuilder()
|
||||
.setCredentials(credentials_<%=cid%>)
|
||||
@@ -233,25 +232,55 @@
|
||||
.getService();
|
||||
|
||||
com.google.cloud.bigquery.QueryJobConfiguration.Builder queryConfiguration_<%=cid%> = com.google.cloud.bigquery.QueryJobConfiguration.newBuilder(<%=query%>).setUseLegacySql(<%=useLegacySql%>);
|
||||
|
||||
<%
|
||||
if (resultSizeType.equals("LARGE") || resultSizeType.equals("AUTO")) {
|
||||
%>
|
||||
queryConfiguration_<%=cid%>.setDestinationTable(com.google.cloud.bigquery.TableId.of(dataset, temp_table)).setAllowLargeResults(true);
|
||||
<%
|
||||
}
|
||||
%>
|
||||
|
||||
com.google.cloud.bigquery.JobId jobId_<%=cid%> = com.google.cloud.bigquery.JobId.of(java.util.UUID.randomUUID().toString());
|
||||
com.google.cloud.bigquery.Job job_<%=cid%> = bigquery_<%=cid%>.create(com.google.cloud.bigquery.JobInfo.newBuilder(queryConfiguration_<%=cid%>.build()).setJobId(jobId_<%=cid%>).build());
|
||||
|
||||
<%
|
||||
if(isLog4jEnabled){
|
||||
%>
|
||||
<%if (resultSizeType.equals("LARGE") || resultSizeType.equals("AUTO")) {%>
|
||||
|
||||
com.google.cloud.bigquery.QueryJobConfiguration jobConfDryRun_<%=cid%> = queryConfiguration_<%=cid%> .setDryRun(true).build();
|
||||
com.google.cloud.bigquery.Job jobDryRun_<%=cid%> = bigquery_<%=cid%>.create(com.google.cloud.bigquery.JobInfo.of(jobConfDryRun_<%=cid%>));
|
||||
|
||||
String queryLocation_<%=cid%> =jobDryRun_<%=cid%>.getJobId().getLocation();
|
||||
String location_<%=cid%> = queryLocation_<%=cid%> == null ? "US" : queryLocation_<%=cid%>;
|
||||
String tempDataset_<%=cid%> = java.util.UUID.randomUUID().toString().replaceAll("-", "")
|
||||
+ Integer.toHexString(java.util.concurrent.ThreadLocalRandom.current().nextInt())
|
||||
+ Integer.toHexString(java.util.concurrent.ThreadLocalRandom.current().nextInt());
|
||||
String tempTable_<%=cid%> = java.util.UUID.randomUUID().toString().replaceAll("-", "")
|
||||
+ Integer.toHexString(java.util.concurrent.ThreadLocalRandom.current().nextInt())
|
||||
+ Integer.toHexString(java.util.concurrent.ThreadLocalRandom.current().nextInt());
|
||||
<% if(isLog4jEnabled){ %>
|
||||
log.info("<%=cid%> - query location :" + queryLocation_<%=cid%>);
|
||||
log.info("<%=cid%> - temporary dataset location :" + location_<%=cid%>);
|
||||
log.info("<%=cid%> - temporary Dataset name : " + tempDataset_<%=cid%>);
|
||||
log.info("<%=cid%> - temporary table name : " + tempTable_<%=cid%>);
|
||||
<% } %>
|
||||
|
||||
com.google.cloud.bigquery.DatasetInfo datasetInfo_<%=cid%> = com.google.cloud.bigquery.DatasetInfo.newBuilder(tempDataset_<%=cid%>).setLocation(location_<%=cid%>).build();
|
||||
com.google.cloud.bigquery.Dataset dataset_<%=cid%> = bigquery_<%=cid%> .create(datasetInfo_<%=cid%>);
|
||||
|
||||
queryConfiguration_<%=cid%>
|
||||
.setDryRun(false)
|
||||
.setAllowLargeResults(true)
|
||||
.setDestinationTable(com.google.cloud.bigquery.TableId.of(tempDataset_<%=cid%>, tempTable_<%=cid%>));
|
||||
|
||||
com.google.cloud.bigquery.JobId jobId_<%=cid%> = com.google.cloud.bigquery.JobId
|
||||
.newBuilder().setProject(<%=projectId%>)
|
||||
.setJob(java.util.UUID.randomUUID().toString())
|
||||
.setLocation(location_<%=cid%>)
|
||||
.build();
|
||||
|
||||
<% if(isLog4jEnabled){ %>
|
||||
log.info("<%=cid%> - job location : " + jobId_<%=cid%>.getLocation());
|
||||
<% } %>
|
||||
<% } else { %>
|
||||
com.google.cloud.bigquery.JobId jobId_<%=cid%> = com.google.cloud.bigquery.JobId.of(<%=projectId%>,java.util.UUID.randomUUID().toString());
|
||||
|
||||
<% } %>
|
||||
com.google.cloud.bigquery.Job job_<%=cid%> = bigquery_<%=cid%>.create(com.google.cloud.bigquery.JobInfo.newBuilder(queryConfiguration_<%=cid%>.build()).setJobId(jobId_<%=cid%>).build());
|
||||
|
||||
|
||||
<% if(isLog4jEnabled) { %>
|
||||
log.info("<%=cid%> - Sending job " + jobId_<%=cid%> + " with query: " + <%=query%>);
|
||||
<%
|
||||
}
|
||||
%>
|
||||
<% } %>
|
||||
|
||||
job_<%=cid%> = job_<%=cid%>.waitFor();
|
||||
|
||||
if (job_<%=cid%> == null) {
|
||||
@@ -260,13 +289,9 @@
|
||||
throw new RuntimeException(job_<%=cid%>.getStatus().getError().toString());
|
||||
}
|
||||
|
||||
<%
|
||||
if(isLog4jEnabled){
|
||||
%>
|
||||
<% if(isLog4jEnabled) { %>
|
||||
log.info("<%=cid%> - Job " + jobId_<%=cid%> + " finished successfully.");
|
||||
<%
|
||||
}
|
||||
%>
|
||||
<% } %>
|
||||
com.google.cloud.bigquery.TableResult result_<%=cid%> = job_<%=cid%>.getQueryResults();
|
||||
long nb_line_<%=cid%> = 0;
|
||||
<%
|
||||
|
||||
@@ -10,7 +10,10 @@ imports="
|
||||
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
String cid = node.getUniqueName();
|
||||
String authMode = ElementParameterParser.getValue(node,"__AUTH_MODE__");
|
||||
String authMode = ElementParameterParser.getValue(node,"__AUTH_MODE__");
|
||||
String projectId = ElementParameterParser.getValue(node,"__PROJECT_ID__");
|
||||
String resultSizeType = ElementParameterParser.getValue(node,"__RESULT_SIZE__");
|
||||
|
||||
if (authMode.equals("OAUTH")) {
|
||||
%>
|
||||
}
|
||||
@@ -24,7 +27,10 @@ imports="
|
||||
} else if (authMode.equals("SERVICEACCOUNT")) {
|
||||
%>
|
||||
}
|
||||
bigquery_<%=cid%>.delete(com.google.cloud.bigquery.TableId.of(dataset, temp_table));
|
||||
<% if (resultSizeType.equals("LARGE") || resultSizeType.equals("AUTO")) { %>
|
||||
com.google.cloud.bigquery.DatasetId datasetId_<%=cid%> = com.google.cloud.bigquery.DatasetId.of(<%=projectId%>, tempDataset_<%=cid%>);
|
||||
bigquery_<%=cid%>.delete(datasetId_<%=cid%>, com.google.cloud.bigquery.BigQuery.DatasetDeleteOption.deleteContents());
|
||||
<% }%>
|
||||
<%
|
||||
} else {
|
||||
throw new IllegalArgumentException("authentication mode should be either \"SERVICEACCOUNT\" or \"OAUTH\", but it is " + authMode);
|
||||
|
||||
@@ -13,9 +13,22 @@
|
||||
INode node = (INode)codeGenArgument.getArgument();
|
||||
String cid = node.getUniqueName();
|
||||
String confLib = ElementParameterParser.getValue(node, "__CONF_LIB__");
|
||||
Boolean setHadoopConf = ElementParameterParser.getBooleanValue(node, "__SET_HADOOP_CONF__");
|
||||
String customHadoopConfPath = ElementParameterParser.getValue(node, "__HADOOP_CONF_SPECIFIC_JAR__");
|
||||
if (setHadoopConf == null) {
|
||||
setHadoopConf = Boolean.FALSE;
|
||||
}
|
||||
%>
|
||||
|
||||
<% if(confLib != null && confLib.length() > 0){%>
|
||||
<% if((confLib != null && confLib.length() > 0) || setHadoopConf){%>
|
||||
|
||||
String libPath_<%=cid %> = "";
|
||||
|
||||
<% if (setHadoopConf) { %>
|
||||
|
||||
libPath_<%=cid %> = <%=customHadoopConfPath %>;
|
||||
|
||||
<% } else { %>
|
||||
|
||||
class DealJobLibrary_<%=cid%> {
|
||||
|
||||
@@ -75,14 +88,9 @@ class DealJobLibrary_<%=cid%> {
|
||||
|
||||
}
|
||||
|
||||
java.net.URLClassLoader currentLoader<%=cid %> = (java.net.URLClassLoader) Thread.currentThread().getContextClassLoader();
|
||||
java.lang.reflect.Method method_<%=cid %> = java.net.URLClassLoader.class.getDeclaredMethod("addURL", new Class[] { java.net.URL.class });
|
||||
method_<%=cid %>.setAccessible(true);
|
||||
|
||||
DealJobLibrary_<%=cid%> dealJobLibrary = new DealJobLibrary_<%=cid%>();
|
||||
String confJarName = dealJobLibrary.getConfJarName(<%=confLib %>, this.contextStr);
|
||||
|
||||
String libPath_<%=cid %> = "";
|
||||
<%if (ProcessorUtilities.isExportConfig()) {%>
|
||||
libPath_<%=cid %> = "../lib/" + confJarName;
|
||||
<%} else {
|
||||
@@ -90,6 +98,11 @@ String libPath_<%=cid %> = "";
|
||||
libPath_<%=cid %> = new java.io.File("<%=libFolder %>/" + confJarName).getAbsolutePath();
|
||||
<%}%>
|
||||
libPath_<%=cid %> = dealJobLibrary.replaceJarPathsFromCrcMap(libPath_<%=cid %>);
|
||||
<%}%>
|
||||
|
||||
java.net.URLClassLoader currentLoader<%=cid %> = (java.net.URLClassLoader) Thread.currentThread().getContextClassLoader();
|
||||
java.lang.reflect.Method method_<%=cid %> = java.net.URLClassLoader.class.getDeclaredMethod("addURL", new Class[] { java.net.URL.class });
|
||||
method_<%=cid %>.setAccessible(true);
|
||||
method_<%=cid %>.invoke(currentLoader<%=cid %>, new Object[] { new java.io.File(libPath_<%=cid %>).toURL() });
|
||||
|
||||
<%}%>
|
||||
|
||||
@@ -42,6 +42,12 @@
|
||||
>
|
||||
<DEFAULT></DEFAULT>
|
||||
</PARAMETER>
|
||||
<PARAMETER NAME="SET_HADOOP_CONF" FIELD="CHECK" NUM_ROW="2" REPOSITORY_VALUE="SET_HADOOP_CONF" >
|
||||
<DEFAULT>false</DEFAULT>
|
||||
</PARAMETER>
|
||||
<PARAMETER NAME="HADOOP_CONF_SPECIFIC_JAR" FIELD="TEXT" NUM_ROW="2" REPOSITORY_VALUE="HADOOP_CONF_SPECIFIC_JAR" >
|
||||
<DEFAULT>"path/to/hadoop_conf.jar"</DEFAULT>
|
||||
</PARAMETER>
|
||||
</PARAMETERS>
|
||||
|
||||
<CODEGENERATION></CODEGENERATION>
|
||||
|
||||
@@ -208,6 +208,8 @@ boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(node.ge
|
||||
mc_<%=cid%>.addMailcap("multipart/*;; x-java-content-handler=com.sun.mail.handlers.multipart_mixed");
|
||||
mc_<%=cid%>.addMailcap("message/rfc822;; x-java-content-handler=com.sun.mail.handlers.message_rfc822");
|
||||
javax.activation.CommandMap.setDefaultCommandMap(mc_<%=cid%>);
|
||||
// add com.sun.mail.handlers to job imports / depenencies (TESB-27110)
|
||||
com.sun.mail.handlers.text_plain text_plain_h_<%=cid%> = null;
|
||||
// -- Send the message --
|
||||
javax.mail.Transport.send(msg_<%=cid %>);
|
||||
} catch(java.lang.Exception e){
|
||||
|
||||
@@ -35,6 +35,7 @@ imports="
|
||||
%>
|
||||
String driverClass_<%=cid%> = "<%=this.getDirverClassName(node)%>";
|
||||
java.lang.Class jdbcclazz_<%=cid%> = java.lang.Class.forName(driverClass_<%=cid%>);
|
||||
globalMap.put("driverClass_<%=cid%>", driverClass_<%=cid%>);
|
||||
<%
|
||||
newInstance(node);
|
||||
}
|
||||
|
||||
@@ -165,6 +165,12 @@ imports="
|
||||
close_begin();
|
||||
%>
|
||||
conn_<%=cid%>.close();
|
||||
<% /* TESB-24900 - graceful shutdown for MYSQL connection */ %>
|
||||
if("com.mysql.cj.jdbc.Driver".equals((String)globalMap.get("driverClass_<%=(connection!=null)?connection.replaceAll("'","").trim():""%>"))
|
||||
&& routines.system.BundleUtils.inOSGi()) {
|
||||
Class.forName("com.mysql.cj.jdbc.AbandonedConnectionCleanupThread").
|
||||
getMethod("checkedShutdown").invoke(null, (Object[]) null);
|
||||
}
|
||||
<%
|
||||
close_end();
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -16,6 +16,7 @@ import java.beans.PropertyChangeEvent;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.eclipse.core.runtime.NullProgressMonitor;
|
||||
import org.eclipse.gef.commands.Command;
|
||||
import org.eclipse.swt.SWT;
|
||||
@@ -126,7 +127,9 @@ public class ButtonController extends AbstractElementPropertySectionController {
|
||||
continue;
|
||||
}
|
||||
for(String path : listString){
|
||||
jars.add(GenericTableUtils.getDriverJarPath(path));
|
||||
if (!StringUtils.isBlank(path)) {
|
||||
jars.add(GenericTableUtils.getDriverJarPath(path));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -100,15 +100,20 @@ public class ComponentRefController extends AbstractElementPropertySectionContro
|
||||
for (int j = 0; j < param.getListItemsValue().length; j++) {
|
||||
if (((CCombo) ctrl).getText().equals(param.getListItemsDisplayName()[j])) {
|
||||
value = (String) param.getListItemsValue()[j];
|
||||
if (j == 0 && (boolean) ((ElementParameter) propertyParameter)
|
||||
.getTaggedValue(IGenericConstants.IS_PROPERTY_SHOW)) {
|
||||
if (j == 0) {
|
||||
// The first item in the combo is
|
||||
// this component
|
||||
props.referenceType
|
||||
.setValue(ComponentReferenceProperties.ReferenceType.THIS_COMPONENT);
|
||||
props.componentInstanceId.setValue(null);
|
||||
props.setReference(null);
|
||||
propertyParameter.setShow(true);
|
||||
boolean isPropertyShow = true;
|
||||
Object isPropertyShowObj = ((ElementParameter) propertyParameter)
|
||||
.getTaggedValue(IGenericConstants.IS_PROPERTY_SHOW);
|
||||
if (isPropertyShowObj != null) {
|
||||
isPropertyShow = Boolean.valueOf(isPropertyShowObj.toString());
|
||||
}
|
||||
propertyParameter.setShow(isPropertyShow);
|
||||
} else {
|
||||
props.referenceType
|
||||
.setValue(ComponentReferenceProperties.ReferenceType.COMPONENT_INSTANCE);
|
||||
|
||||
@@ -1473,7 +1473,12 @@ public class Component extends AbstractBasicComponent {
|
||||
//as sql type value may have newline and return characters, which make compiler issue in java code,
|
||||
//so have to convert the newline characters to visible "\r", "\n" for pass the compiler issue and can't only convert them to white space as TDI-41898
|
||||
//jdbc drivers, salesforce driver can work like that sql : select * \nfrom Account, so it is ok
|
||||
return NodeUtil.replaceCRLFInMEMO_SQL(value);
|
||||
String replacedString = NodeUtil.replaceCRLFInMEMO_SQL(value).trim();
|
||||
|
||||
// For the case when sql field ends with extra semicolon, it has to be removed to avoid compilation error.
|
||||
return replacedString.endsWith(";")
|
||||
? replacedString.substring(0, replacedString.length() -1)
|
||||
: replacedString;
|
||||
}
|
||||
if (GenericTypeUtils.isSchemaType(property)) {
|
||||
// Handles embedded escaped quotes which might occur
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -736,6 +736,7 @@ PerformancePreferencePage.generateCode=Generate code when opening the job
|
||||
PerformancePreferencePage.checkVersion=Check only the last version when updating jobs or joblets
|
||||
PerformancePreferencePage.addOrDeleteVariable=Propagate add/delete variable changes in repository contexts
|
||||
PerformancePreferencePage.ActivedTimeoutSetting=Activate the timeout for database connection.
|
||||
PerformancePreferencePage.propagateContext=Propagate add context groups in repository contexts
|
||||
PerformancePreferencePage.ConnectionTimeout=Connection timeout (seconds)
|
||||
PerformancePreferencePage.HBaseOrMaprDBScanLimit=HBase/MapR-DB scan limit (for retrieving schema)
|
||||
PerformancePreferencePage.HBaseOrMaprDBScanLimitTip=If set it by zero, will be same as deactiving the limit.
|
||||
|
||||
@@ -99,6 +99,7 @@ import org.talend.designer.core.ui.views.jobsettings.JobSettings;
|
||||
import org.talend.designer.core.ui.views.problems.Problems;
|
||||
import org.talend.designer.core.ui.views.properties.ComponentSettings;
|
||||
import org.talend.designer.core.ui.views.properties.ComponentSettingsView;
|
||||
import org.talend.designer.core.utils.BigDataJobUtil;
|
||||
import org.talend.designer.core.utils.JavaProcessUtil;
|
||||
import org.talend.designer.core.utils.UnifiedComponentUtil;
|
||||
import org.talend.designer.runprocess.ProcessorException;
|
||||
@@ -874,4 +875,9 @@ public class DesignerCoreService implements IDesignerCoreService {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNeedContextInJar(IProcess process) {
|
||||
return new BigDataJobUtil(process).needsToHaveContextInsideJar();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ import org.eclipse.core.runtime.Platform;
|
||||
import org.eclipse.gef.palette.PaletteEntry;
|
||||
import org.eclipse.jface.resource.ImageDescriptor;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.commons.exception.PersistenceException;
|
||||
import org.talend.core.model.components.IComponent;
|
||||
import org.talend.core.model.process.INode;
|
||||
import org.talend.core.model.process.IProcess;
|
||||
@@ -31,6 +32,7 @@ import org.talend.core.model.process.IReplaceNodeInProcess;
|
||||
import org.talend.core.model.properties.Item;
|
||||
import org.talend.core.model.properties.JobletProcessItem;
|
||||
import org.talend.core.model.repository.ERepositoryObjectType;
|
||||
import org.talend.core.model.repository.IRepositoryEditorInput;
|
||||
import org.talend.core.model.update.UpdateResult;
|
||||
import org.talend.designer.core.ui.editor.process.Process;
|
||||
|
||||
@@ -143,7 +145,7 @@ public abstract class AbstractProcessProvider implements IReplaceNodeInProcess {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* DOC qzhang Comment method "canDeleteNode".
|
||||
*
|
||||
@@ -257,5 +259,10 @@ public abstract class AbstractProcessProvider implements IReplaceNodeInProcess {
|
||||
public boolean canHandleNode(INode node) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public IRepositoryEditorInput createJobletEditorInput(JobletProcessItem processItem, boolean load, Boolean lastVersion, Boolean readonly,
|
||||
Boolean openedInJob) throws PersistenceException{
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.commons.collections.BidiMap;
|
||||
@@ -36,6 +37,7 @@ import org.talend.components.api.properties.VirtualComponentProperties;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.PluginChecker;
|
||||
import org.talend.core.database.EDatabaseTypeName;
|
||||
import org.talend.core.hadoop.HadoopConfJarBean;
|
||||
import org.talend.core.hadoop.IHadoopClusterService;
|
||||
import org.talend.core.hadoop.repository.HadoopRepositoryUtil;
|
||||
import org.talend.core.model.components.ComponentCategory;
|
||||
@@ -1948,7 +1950,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());
|
||||
@@ -3249,8 +3251,8 @@ public class DataProcess implements IGeneratingProcess {
|
||||
if (!hadoopClusterService.isUseDynamicConfJar(hadoopClusterItemId)) {
|
||||
return null;
|
||||
}
|
||||
String confsJarName = hadoopClusterService.getCustomConfsJarName(hadoopClusterItemId, false, false);
|
||||
if (confsJarName == null) {
|
||||
Optional<HadoopConfJarBean> confJarBean = hadoopClusterService.getCustomConfsJar(hadoopClusterItemId, false, false);
|
||||
if (!confJarBean.isPresent()) {
|
||||
return null;
|
||||
}
|
||||
IComponent component = ComponentsFactoryProvider.getInstance().get(componentName, componentCategory.getName());
|
||||
@@ -3266,7 +3268,21 @@ public class DataProcess implements IGeneratingProcess {
|
||||
clusterIdParam.setValue(hadoopClusterItemId);
|
||||
}
|
||||
IElementParameter confLibParam = confNode.getElementParameter("CONF_LIB"); //$NON-NLS-1$
|
||||
confLibParam.setValue(TalendTextUtils.addQuotes(confsJarName));
|
||||
confLibParam.setValue(TalendTextUtils.addQuotes(confJarBean.get().getCustomConfJarName()));
|
||||
IElementParameter setConfParam = confNode.getElementParameter("SET_HADOOP_CONF"); //$NON-NLS-1$
|
||||
if (setConfParam != null) {
|
||||
setConfParam.setValue(Boolean.valueOf(confJarBean.get().isOverrideCustomConf()));
|
||||
}
|
||||
IElementParameter confPathParam = confNode.getElementParameter("HADOOP_CONF_SPECIFIC_JAR"); //$NON-NLS-1$
|
||||
if (confPathParam != null) {
|
||||
String jarPath = null;
|
||||
if (confJarBean.get().isContextMode()) {
|
||||
jarPath = confJarBean.get().getOverrideCustomConfPath();
|
||||
} else {
|
||||
jarPath = TalendTextUtils.addQuotes(confJarBean.get().getOriginalOverrideCustomConfPath());
|
||||
}
|
||||
confPathParam.setValue(jarPath);
|
||||
}
|
||||
return confNode;
|
||||
}
|
||||
return null;
|
||||
|
||||
@@ -607,7 +607,7 @@ public final class TalendEditorPaletteFactory {
|
||||
while (iter.hasNext()) {
|
||||
IComponent xmlComponent = iter.next();
|
||||
|
||||
Matcher matcher = pattern.matcher(xmlComponent.getName().toLowerCase());
|
||||
Matcher matcher = pattern.matcher(xmlComponent.getDisplayName().toLowerCase());
|
||||
if (matcher.find()) {
|
||||
resultByName.add(new ComponentHit(xmlComponent, matcher.start()));
|
||||
continue;
|
||||
@@ -643,7 +643,7 @@ public final class TalendEditorPaletteFactory {
|
||||
private static void addDelegateComponents(IComponentsFactory compFac, Collection<IComponent> componentSet,
|
||||
String lowerCasedKeyword) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault().getService(
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(
|
||||
IUnifiedComponentService.class);
|
||||
service.filterUnifiedComponentForPalette(compFac, componentSet, lowerCasedKeyword);
|
||||
|
||||
@@ -730,13 +730,12 @@ public final class TalendEditorPaletteFactory {
|
||||
return null;
|
||||
}
|
||||
IComponent delegateComponent = UnifiedComponentUtil.getDelegateComponent(component);
|
||||
String name = component.getName();
|
||||
String filter = null;
|
||||
if (delegateComponent != component) {
|
||||
// emf component name
|
||||
filter = component.getName();
|
||||
name = UnifiedComponentUtil.getComponentDisplayNameForPalette(delegateComponent, filter);
|
||||
}
|
||||
String name = UnifiedComponentUtil.getComponentDisplayNameForPalette(delegateComponent, filter);
|
||||
ImageDescriptor imageSmall = delegateComponent.getIcon16();
|
||||
IPreferenceStore store = DesignerPlugin.getDefault().getPreferenceStore();
|
||||
ImageDescriptor imageLarge;
|
||||
|
||||
@@ -19,15 +19,21 @@ import org.eclipse.core.runtime.IStatus;
|
||||
import org.eclipse.jdt.internal.ui.JavaPlugin;
|
||||
import org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor;
|
||||
import org.eclipse.jdt.internal.ui.javaeditor.JavaSourceViewer;
|
||||
import org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy;
|
||||
import org.eclipse.jdt.internal.ui.text.JavaReconciler;
|
||||
import org.eclipse.jdt.ui.actions.IJavaEditorActionDefinitionIds;
|
||||
import org.eclipse.jdt.ui.text.IJavaPartitions;
|
||||
import org.eclipse.jdt.ui.text.JavaSourceViewerConfiguration;
|
||||
import org.eclipse.jdt.ui.text.JavaTextTools;
|
||||
import org.eclipse.jface.preference.IPreferenceStore;
|
||||
import org.eclipse.jface.text.BadLocationException;
|
||||
import org.eclipse.jface.text.FindReplaceDocumentAdapter;
|
||||
import org.eclipse.jface.text.IDocument;
|
||||
import org.eclipse.jface.text.Region;
|
||||
import org.eclipse.jface.text.source.IOverviewRuler;
|
||||
import org.eclipse.jface.text.source.ISourceViewer;
|
||||
import org.eclipse.jface.text.source.IVerticalRuler;
|
||||
import org.eclipse.jface.text.source.SourceViewerConfiguration;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.ui.part.FileEditorInput;
|
||||
import org.talend.commons.exception.SystemException;
|
||||
@@ -297,5 +303,41 @@ public class TalendJavaEditor extends CompilationUnitEditor implements ISyntaxCh
|
||||
super.initializeDragAndDrop(viewer);
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor#createJavaSourceViewer(org.eclipse.swt.widgets.
|
||||
* Composite, org.eclipse.jface.text.source.IVerticalRuler, org.eclipse.jface.text.source.IOverviewRuler, boolean,
|
||||
* int, org.eclipse.jface.preference.IPreferenceStore)
|
||||
*/
|
||||
@Override
|
||||
protected ISourceViewer createJavaSourceViewer(Composite parent, IVerticalRuler verticalRuler, IOverviewRuler overviewRuler,
|
||||
boolean isOverviewRulerVisible, int styles, IPreferenceStore store) {
|
||||
return new TalendAdaptedSourceViewer(parent, verticalRuler, overviewRuler, isOverviewRulerVisible, styles, store);
|
||||
}
|
||||
|
||||
@SuppressWarnings("restriction")
|
||||
protected class TalendAdaptedSourceViewer extends AdaptedSourceViewer {
|
||||
|
||||
public TalendAdaptedSourceViewer(Composite parent, IVerticalRuler verticalRuler, IOverviewRuler overviewRuler,
|
||||
boolean showAnnotationsOverview, int styles, IPreferenceStore store) {
|
||||
super(parent, verticalRuler, overviewRuler, showAnnotationsOverview, styles, store);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configure(SourceViewerConfiguration configuration) {
|
||||
super.configure(configuration);
|
||||
if (fReconciler == null) {
|
||||
JavaCompositeReconcilingStrategy strategy = new JavaCompositeReconcilingStrategy(this, TalendJavaEditor.this,
|
||||
configuration.getConfiguredDocumentPartitioning(this));
|
||||
JavaReconciler reconciler = new JavaReconciler(TalendJavaEditor.this, strategy, false);
|
||||
reconciler.setIsAllowedToModifyDocument(false);
|
||||
reconciler.setDelay(500);
|
||||
fReconciler = reconciler;
|
||||
fReconciler.install(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -624,8 +624,10 @@ public class ChangeMetadataCommand extends Command {
|
||||
setTableMAPPING();
|
||||
|
||||
if (!internal) {
|
||||
updateColumnList(oldOutputMetadata, newOutputMetadata);
|
||||
((Process) node.getProcess()).checkProcess();
|
||||
if (!oldOutputMetadata.sameMetadataAs(newOutputMetadata, IMetadataColumn.OPTIONS_NONE)) {
|
||||
updateColumnList(oldOutputMetadata, newOutputMetadata);
|
||||
((Process) node.getProcess()).checkProcess();
|
||||
}
|
||||
}
|
||||
refreshMetadataChanged();
|
||||
}
|
||||
|
||||
@@ -480,13 +480,6 @@ public class QueryGuessCommand extends Command {
|
||||
String newQuery = null;
|
||||
// Need update schema if table type as calculation view for SAP Hana Database
|
||||
updateSchema(dbType, newOutputMetadataTable);
|
||||
if (node != null && node instanceof INode) {
|
||||
process = ((INode) node).getProcess();
|
||||
boolean isContextMode = ContextParameterUtils.containContextVariables(schema);
|
||||
if (isContextMode) {
|
||||
schema = JavaProcessUtil.getContextOriginalValue(process, schema);
|
||||
}
|
||||
}
|
||||
realTableName = QueryUtil.getTableName(node, newOutputMetadataTable, schema, dbType, realTableName);
|
||||
|
||||
if (realTableName.startsWith(TalendTextUtils.QUOTATION_MARK) && realTableName.endsWith(TalendTextUtils.QUOTATION_MARK)
|
||||
|
||||
@@ -516,7 +516,7 @@ public class Node extends Element implements IGraphicalNode {
|
||||
|
||||
private void init(IComponent newComponent) {
|
||||
this.component = UnifiedComponentUtil.getEmfComponent(this, newComponent);
|
||||
this.label = component.getName();
|
||||
this.label = component.getDisplayName();
|
||||
updateComponentStatusIfNeeded(true);
|
||||
IPreferenceStore store = DesignerPlugin.getDefault().getPreferenceStore();
|
||||
|
||||
@@ -1179,6 +1179,12 @@ public class Node extends Element implements IGraphicalNode {
|
||||
if (useConn != null) {
|
||||
connParam = this.getElementParameter("CONNECTION"); //$NON-NLS-1$
|
||||
}
|
||||
|
||||
boolean isGeneric = this.getComponent().getComponentType() == EComponentType.GENERIC;
|
||||
if(isGeneric && labelToParse != null) {
|
||||
labelToParse = labelToParse.replaceAll("__TABLE__", "__tableSelection.tablename__"); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
}
|
||||
|
||||
if (useConn != null && connParam != null && Boolean.TRUE.equals(useConn.getValue())) {
|
||||
|
||||
String connName = (String) connParam.getValue();
|
||||
|
||||
@@ -29,6 +29,7 @@ import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang.ArrayUtils;
|
||||
@@ -123,7 +124,9 @@ import org.talend.core.model.update.IUpdateManager;
|
||||
import org.talend.core.model.utils.TalendTextUtils;
|
||||
import org.talend.core.repository.model.ProxyRepositoryFactory;
|
||||
import org.talend.core.repository.utils.ConvertJobsUtil;
|
||||
import org.talend.core.repository.utils.ProjectHelper;
|
||||
import org.talend.core.repository.utils.XmiResourceManager;
|
||||
import org.talend.core.runtime.process.TalendProcessArgumentConstant;
|
||||
import org.talend.core.runtime.repository.item.ItemProductKeys;
|
||||
import org.talend.core.runtime.util.ItemDateParser;
|
||||
import org.talend.core.service.IScdComponentService;
|
||||
@@ -184,7 +187,6 @@ import org.talend.designer.core.utils.DetectContextVarsUtils;
|
||||
import org.talend.designer.core.utils.JavaProcessUtil;
|
||||
import org.talend.designer.core.utils.JobSettingVersionUtil;
|
||||
import org.talend.designer.core.utils.UnifiedComponentUtil;
|
||||
import org.talend.designer.core.utils.UpdateParameterUtils;
|
||||
import org.talend.designer.core.utils.ValidationRulesUtil;
|
||||
import org.talend.designer.runprocess.IRunProcessService;
|
||||
import org.talend.designer.runprocess.ItemCacheManager;
|
||||
@@ -1079,7 +1081,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
ElementParameterType pType;
|
||||
boolean isJoblet = false;
|
||||
if (param.getElement() instanceof INode && PluginChecker.isJobLetPluginLoaded()) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null && service.isJobletComponent((INode) param.getElement())) {
|
||||
isJoblet = true;
|
||||
@@ -1399,11 +1401,6 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (IElementParameter param : elemParam.getElementParameters()) {
|
||||
UpdateParameterUtils.setDefaultValues(param, elemParam);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected boolean noNeedSetValue(IElementParameter param, String paraValue) {
|
||||
@@ -1819,23 +1816,36 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
routinesDependencies = new ArrayList<RoutinesParameterType>();
|
||||
}
|
||||
try {
|
||||
Project targetProject = new Project(ProjectManager.getInstance().getProject(getProperty()));
|
||||
IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance();
|
||||
Set<IRepositoryViewObject> routines = new HashSet<>();
|
||||
routines.addAll(factory.getAll(targetProject, ERepositoryObjectType.ROUTINES));
|
||||
List<Project> referenceProjects = ProjectManager.getInstance().getAllReferencedProjects(targetProject, false);
|
||||
referenceProjects.stream().forEach(p -> {
|
||||
try {
|
||||
routines.addAll(factory.getAll(p, ERepositoryObjectType.ROUTINES));
|
||||
} catch (PersistenceException e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
});
|
||||
Map<String, String> allRoutinesMap = routines.stream()
|
||||
.collect(Collectors.toMap(IRepositoryViewObject::getId, IRepositoryViewObject::getLabel));
|
||||
Iterator<RoutinesParameterType> iterator = routinesDependencies.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
RoutinesParameterType routine = iterator.next();
|
||||
if (!allRoutinesMap.containsKey(routine.getId())) {
|
||||
iterator.remove();
|
||||
}
|
||||
}
|
||||
List<String> possibleRoutines = new ArrayList<String>();
|
||||
List<String> routinesToAdd = new ArrayList<String>();
|
||||
String additionalString = LanguageManager.getCurrentLanguage() == ECodeLanguage.JAVA ? "." : "";
|
||||
|
||||
List<String> routinesAlreadySetup = new ArrayList<String>();
|
||||
|
||||
for (RoutinesParameterType routine : routinesDependencies) {
|
||||
routinesAlreadySetup.add(routine.getName());
|
||||
}
|
||||
|
||||
IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance();
|
||||
List<IRepositoryViewObject> routines = factory.getAll(ProjectManager.getInstance().getCurrentProject(),
|
||||
ERepositoryObjectType.ROUTINES);
|
||||
routines.addAll(factory.getAll(ProjectManager.getInstance().getCurrentProject(), ERepositoryObjectType.PIG_UDF));
|
||||
for (Project project : ProjectManager.getInstance().getAllReferencedProjects()) {
|
||||
for (Project project : referenceProjects) {
|
||||
List<IRepositoryViewObject> refRoutines = factory.getAll(project, ERepositoryObjectType.ROUTINES);
|
||||
refRoutines.addAll(factory.getAll(project, ERepositoryObjectType.PIG_UDF));
|
||||
for (IRepositoryViewObject object : refRoutines) {
|
||||
if (!((RoutineItem) object.getProperty().getItem()).isBuiltIn()) {
|
||||
if (!possibleRoutines.contains(object.getLabel()) && !routinesAlreadySetup.contains(object.getLabel())) {
|
||||
@@ -1860,9 +1870,8 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
possibleRoutines.add(object.getLabel());
|
||||
}
|
||||
}
|
||||
for (Project project : ProjectManager.getInstance().getAllReferencedProjects()) {
|
||||
for (Project project : referenceProjects) {
|
||||
List<IRepositoryViewObject> refRoutines = factory.getAll(project, ERepositoryObjectType.ROUTINES);
|
||||
refRoutines.addAll(factory.getAll(project, ERepositoryObjectType.PIG_UDF));
|
||||
for (IRepositoryViewObject object : refRoutines) {
|
||||
if (!((RoutineItem) object.getProperty().getItem()).isBuiltIn()) {
|
||||
if (!possibleRoutines.contains(object.getLabel()) && !routinesAlreadySetup.contains(object.getLabel())) {
|
||||
@@ -1920,12 +1929,25 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
}
|
||||
|
||||
for (IRepositoryViewObject object : routines) {
|
||||
if (routinesToAdd.contains(object.getLabel()) && !routinesAlreadySetup.contains(object.getLabel())) {
|
||||
RoutinesParameterType routinesParameterType = TalendFileFactory.eINSTANCE.createRoutinesParameterType();
|
||||
routinesParameterType.setId(object.getId());
|
||||
routinesParameterType.setName(object.getLabel());
|
||||
routinesDependencies.add(routinesParameterType);
|
||||
//
|
||||
boolean isLimited = false;
|
||||
org.talend.core.model.properties.Project currProject = getProject().getEmfProject();
|
||||
org.talend.core.model.properties.Project project = ProjectManager.getInstance().getProject(this.property);
|
||||
if (currProject != null && project != null && !currProject.equals(project)) {
|
||||
int currOrdinal = ProjectHelper.getProjectTypeOrdinal(currProject);
|
||||
int ordinal = ProjectHelper.getProjectTypeOrdinal(project);
|
||||
if (currOrdinal > ordinal) {
|
||||
isLimited = true;
|
||||
}
|
||||
}
|
||||
if (!isLimited) {
|
||||
for (IRepositoryViewObject object : routines) {
|
||||
if (routinesToAdd.contains(object.getLabel()) && !routinesAlreadySetup.contains(object.getLabel())) {
|
||||
RoutinesParameterType routinesParameterType = TalendFileFactory.eINSTANCE.createRoutinesParameterType();
|
||||
routinesParameterType.setId(object.getId());
|
||||
routinesParameterType.setName(object.getLabel());
|
||||
routinesDependencies.add(routinesParameterType);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (PersistenceException e) {
|
||||
@@ -2283,7 +2305,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
if (EParameterName.PROCESS_TYPE_VERSION.name().equals(pType.getName())) {
|
||||
String jobletVersion = pType.getValue();
|
||||
if (!RelationshipItemBuilder.LATEST_VERSION.equals(jobletVersion)) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault()
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault()
|
||||
.getService(IJobletProviderService.class);
|
||||
if (service != null) {
|
||||
Property jobletProperty = service.getJobletComponentItem(component);
|
||||
@@ -2453,7 +2475,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
updateAllMappingTypes();
|
||||
nc.setNeedLoadLib(false);
|
||||
if (nc.isJoblet()) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null) {
|
||||
// reload only for stuido ,because joblet can be changed in the job editor
|
||||
@@ -2467,7 +2489,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
NodeContainer nodeContainer = null;
|
||||
if (isJunitContainer) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerGEFService.class)) {
|
||||
ITestContainerGEFService testContainerService = (ITestContainerGEFService) GlobalServiceRegister.getDefault()
|
||||
ITestContainerGEFService testContainerService = GlobalServiceRegister.getDefault()
|
||||
.getService(ITestContainerGEFService.class);
|
||||
if (testContainerService != null) {
|
||||
nodeContainer = testContainerService.createJunitContainer(node);
|
||||
@@ -2669,7 +2691,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
}
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IScdComponentService.class)) {
|
||||
IScdComponentService service = (IScdComponentService) GlobalServiceRegister.getDefault().getService(
|
||||
IScdComponentService service = GlobalServiceRegister.getDefault().getService(
|
||||
IScdComponentService.class);
|
||||
service.updateOutputMetadata(nc, metadataTable);
|
||||
}
|
||||
@@ -2796,7 +2818,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
} else {
|
||||
if (PluginChecker.isJobLetPluginLoaded()) { // bug 12764
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null && service.isJobletComponent(source)) {
|
||||
continue;
|
||||
@@ -3323,6 +3345,9 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
component = ((Node) node).getDelegateComponent();
|
||||
}
|
||||
String baseName = component.getOriginalName();
|
||||
if (EComponentType.GENERIC.equals(component.getComponentType())) {
|
||||
baseName = component.getDisplayName();
|
||||
}
|
||||
return UniqueNodeNameGenerator.generateUniqueNodeName(baseName, uniqueNodeNameList);
|
||||
}
|
||||
|
||||
@@ -4432,6 +4457,18 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
private void loadAdditionalProperties() {
|
||||
if (additionalProperties == null) {
|
||||
additionalProperties = new HashMap<Object, Object>();
|
||||
try {
|
||||
if (property.getItem() != null && ERepositoryObjectType.getType(property) != null) {
|
||||
boolean isRouteProcess = ERepositoryObjectType.getType(property).equals(ERepositoryObjectType.PROCESS_ROUTE);
|
||||
if (!isRouteProcess && "ROUTE"
|
||||
.equals(this.property.getAdditionalProperties().get(TalendProcessArgumentConstant.ARG_BUILD_TYPE))) {
|
||||
this.property.getAdditionalProperties().remove(TalendProcessArgumentConstant.ARG_BUILD_TYPE);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
|
||||
for (Object key : this.property.getAdditionalProperties().keySet()) {
|
||||
additionalProperties.put(key, this.property.getAdditionalProperties().get(key));
|
||||
}
|
||||
@@ -4563,6 +4600,9 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
|
||||
private void saveJobletNode(AbstractJobletContainer jobletContainer) {
|
||||
if (CommonsPlugin.isHeadless()) {
|
||||
return;
|
||||
}
|
||||
INode jobletNode = jobletContainer.getNode();
|
||||
IProcess jobletProcess = jobletNode.getComponent().getProcess();
|
||||
if (jobletProcess == null) {
|
||||
@@ -4572,7 +4612,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
Item item = ((IProcess2) jobletProcess).getProperty().getItem();
|
||||
if (item instanceof JobletProcessItem) {
|
||||
JobletProcessItem jobletItem = ((JobletProcessItem) item);
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null) {
|
||||
service.saveJobletNode(jobletItem, jobletContainer);
|
||||
@@ -4621,7 +4661,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
|
||||
IJobletProviderService jobletService = null;
|
||||
if (PluginChecker.isJobLetPluginLoaded()) {
|
||||
jobletService = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(IJobletProviderService.class);
|
||||
jobletService = GlobalServiceRegister.getDefault().getService(IJobletProviderService.class);
|
||||
for (INode node : getGraphicalNodes()) {
|
||||
if (jobletService.isJobletComponent(node)) {
|
||||
listRoutines.addAll(getJobletRoutines(jobletService, node));
|
||||
|
||||
@@ -115,6 +115,7 @@ import org.talend.core.ui.ICDCProviderService;
|
||||
import org.talend.core.ui.IJobletProviderService;
|
||||
import org.talend.core.ui.component.ComponentsFactoryProvider;
|
||||
import org.talend.cwm.helper.SAPBWTableHelper;
|
||||
import org.talend.designer.core.DesignerPlugin;
|
||||
import org.talend.designer.core.i18n.Messages;
|
||||
import org.talend.designer.core.model.components.EParameterName;
|
||||
import org.talend.designer.core.model.components.ElementParameter;
|
||||
@@ -126,6 +127,7 @@ import org.talend.designer.core.model.utils.emf.talendfile.impl.ContextTypeImpl;
|
||||
import org.talend.designer.core.ui.editor.nodes.Node;
|
||||
import org.talend.designer.core.ui.editor.update.UpdateCheckResult;
|
||||
import org.talend.designer.core.ui.editor.update.UpdateManagerUtils;
|
||||
import org.talend.designer.core.ui.preferences.TalendDesignerPrefConstants;
|
||||
import org.talend.designer.core.utils.ConnectionUtil;
|
||||
import org.talend.designer.core.utils.SAPParametersUtils;
|
||||
import org.talend.metadata.managment.ui.utils.ConnectionContextHelper;
|
||||
@@ -308,6 +310,10 @@ public class ProcessUpdateManager extends AbstractUpdateManager {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
Boolean propagate = DesignerPlugin.getDefault().getPreferenceStore().getBoolean(TalendDesignerPrefConstants.PROPAGATE_CONTEXT);
|
||||
if(!propagate) {
|
||||
return contextResults;
|
||||
}
|
||||
// only handle added groups
|
||||
Set<String> contextSourceChecked = new HashSet<String>();
|
||||
Set<String> processContextGroups = new HashSet<String>();
|
||||
@@ -415,8 +421,6 @@ public class ProcessUpdateManager extends AbstractUpdateManager {
|
||||
|
||||
Map<ContextItem, Set<String>> existedParams = new HashMap<ContextItem, Set<String>>();
|
||||
|
||||
List<String> contextItemGroupNames = new ArrayList<String>();
|
||||
|
||||
for (IContext context : contextManager.getListContext()) {
|
||||
for (IContextParameter param : context.getContextParameterList()) {
|
||||
if (!param.isBuiltIn()) {
|
||||
@@ -440,14 +444,6 @@ public class ProcessUpdateManager extends AbstractUpdateManager {
|
||||
boolean builtin = true;
|
||||
if (contextItem != null) {
|
||||
if (contextItem instanceof ContextItem) {
|
||||
contextItemGroupNames.clear();
|
||||
EList<?> contextGroups = ((ContextItem) contextItem).getContext();
|
||||
for (Object contextGroup : contextGroups) {
|
||||
if (contextGroup instanceof ContextTypeImpl) {
|
||||
String name = ((ContextTypeImpl) contextGroup).getName();
|
||||
contextItemGroupNames.add(name);
|
||||
}
|
||||
}
|
||||
final ContextType contextType = ContextUtils.getContextTypeByName((ContextItem) contextItem,
|
||||
context.getName(), true);
|
||||
if (contextType != null) {
|
||||
@@ -459,10 +455,8 @@ public class ProcessUpdateManager extends AbstractUpdateManager {
|
||||
existedParams.put(repositoryContext, new HashSet<String>());
|
||||
}
|
||||
existedParams.get(repositoryContext).add(paramName);
|
||||
String jobContextGroupName = context.getName();
|
||||
boolean contains = contextItemGroupNames.contains(jobContextGroupName);
|
||||
if (contains && (onlySimpleShow || !ContextUtils.samePropertiesForContextParameter(param,
|
||||
contextParameterType))) {
|
||||
if (onlySimpleShow || !ContextUtils.samePropertiesForContextParameter(param,
|
||||
contextParameterType)) {
|
||||
unsameMap.add(contextItem, paramName);
|
||||
}
|
||||
builtin = false;
|
||||
@@ -596,10 +590,14 @@ public class ProcessUpdateManager extends AbstractUpdateManager {
|
||||
if (newParametersMap.get(contextItem) == null) {
|
||||
newParametersMap.put(contextItem, new HashSet<String>());
|
||||
}
|
||||
newParametersMap.get(contextItem).add(parameterType.getName());
|
||||
// To avoid the case: serval contexts contain more than one same name parameters, but we only can add
|
||||
// one of them
|
||||
IContext processContext = ((JobContextManager) contextManager).getDefaultContext();
|
||||
if (processContext.getContextParameter(parameterType.getName()) == null) {
|
||||
newParametersMap.get(contextItem).add(parameterType.getName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -247,7 +247,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
if (obj instanceof RepositoryNode) {
|
||||
RepositoryNode sourceNode = (RepositoryNode) obj;
|
||||
if (PluginChecker.isCDCPluginLoaded()) {
|
||||
ICDCProviderService service = (ICDCProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
ICDCProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
ICDCProviderService.class);
|
||||
|
||||
if (service != null && (service.isSubscriberTableNode(sourceNode) || service.isSystemSubscriberTable(sourceNode))) {
|
||||
@@ -260,7 +260,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
}
|
||||
IOozieService oozieService = null;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IOozieService.class)) {
|
||||
oozieService = (IOozieService) GlobalServiceRegister.getDefault().getService(IOozieService.class);
|
||||
oozieService = GlobalServiceRegister.getDefault().getService(IOozieService.class);
|
||||
}
|
||||
if (oozieService != null && oozieService.isOozieNode(sourceNode)) {
|
||||
return false;
|
||||
@@ -268,7 +268,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
|
||||
ISAPProviderService sapService = null;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(ISAPProviderService.class)) {
|
||||
sapService = (ISAPProviderService) GlobalServiceRegister.getDefault().getService(ISAPProviderService.class);
|
||||
sapService = GlobalServiceRegister.getDefault().getService(ISAPProviderService.class);
|
||||
}
|
||||
if (sapService != null && sapService.isSAPNode(sourceNode)) {
|
||||
return false;
|
||||
@@ -1051,7 +1051,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
Item item = sourceNode.getObject().getProperty().getItem();
|
||||
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
|
||||
ITestContainerProviderService testContainerService = (ITestContainerProviderService) GlobalServiceRegister
|
||||
ITestContainerProviderService testContainerService = GlobalServiceRegister
|
||||
.getDefault().getService(ITestContainerProviderService.class);
|
||||
if (testContainerService != null && testContainerService.isTestContainerItem(item)) {
|
||||
continue;
|
||||
@@ -1971,7 +1971,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
// special handle hbase to support tpigLoad
|
||||
String hbaseName = EDatabaseTypeName.HBASE.getDisplayName().toUpperCase();
|
||||
if (rcSetting != null && (hbaseName).equals(rcSetting.toString())) {
|
||||
IComponentsService service = (IComponentsService) GlobalServiceRegister.getDefault().getService(
|
||||
IComponentsService service = GlobalServiceRegister.getDefault().getService(
|
||||
IComponentsService.class);
|
||||
String componentProductname = null;
|
||||
Collection<IComponent> components = service.getComponentsFactory().readComponents();
|
||||
@@ -2125,7 +2125,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
|
||||
EConnectionType connectionType = EConnectionType.FLOW_MAIN;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(ICamelDesignerCoreService.class)) {
|
||||
ICamelDesignerCoreService camelService = (ICamelDesignerCoreService) GlobalServiceRegister.getDefault()
|
||||
ICamelDesignerCoreService camelService = GlobalServiceRegister.getDefault()
|
||||
.getService(ICamelDesignerCoreService.class);
|
||||
if (camelService.isRouteBuilderNode(node)) {
|
||||
connectionType = camelService.getTargetConnectionType(node);
|
||||
@@ -2143,7 +2143,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
// FIXME perhaps, this is not good fix, need check it later
|
||||
// bug 21411
|
||||
if (PluginChecker.isJobLetPluginLoaded()) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null && service.isJobletComponent(targetConnection.getTarget())) {
|
||||
if (targetConnection.getTarget() instanceof Node) {
|
||||
@@ -2277,7 +2277,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
private boolean isLock(JobletContainerPart part) {
|
||||
INode jobletNode = ((JobletContainer) part.getModel()).getNode();
|
||||
if (PluginChecker.isJobLetPluginLoaded()) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null) {
|
||||
return service.isLock(jobletNode);
|
||||
@@ -2292,7 +2292,7 @@ public class TalendEditorDropTargetListener extends TemplateTransferDropTargetLi
|
||||
Node jobletNode = ((JobletContainer) part.getModel()).getNode();
|
||||
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
|
||||
if (PluginChecker.isJobLetPluginLoaded()) {
|
||||
IJobletProviderService service = (IJobletProviderService) GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService service = GlobalServiceRegister.getDefault().getService(
|
||||
IJobletProviderService.class);
|
||||
if (service != null) {
|
||||
openEditor = (AbstractMultiPageTalendEditor) service.openJobletEditor(jobletNode, page);
|
||||
@@ -2332,7 +2332,7 @@ class ComponentChooseDialog extends ListDialog {
|
||||
if (UnifiedComponentUtil.isDelegateComponent(component) && typeName != null) {
|
||||
return component.getName() + "(" + typeName + ")";
|
||||
}
|
||||
return component.getName();
|
||||
return component.getDisplayName();
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -19,6 +19,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.eclipse.emf.common.util.EList;
|
||||
import org.eclipse.gef.commands.Command;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
@@ -36,6 +37,7 @@ import org.talend.core.model.process.IContextManager;
|
||||
import org.talend.core.model.process.IContextParameter;
|
||||
import org.talend.core.model.process.IProcess2;
|
||||
import org.talend.core.model.properties.ContextItem;
|
||||
import org.talend.core.model.properties.Item;
|
||||
import org.talend.core.model.update.EUpdateItemType;
|
||||
import org.talend.core.model.update.EUpdateResult;
|
||||
import org.talend.core.model.update.UpdateResult;
|
||||
@@ -86,15 +88,16 @@ public class UpdateContextParameterCommand extends Command {
|
||||
if (result == null) {
|
||||
return;
|
||||
}
|
||||
List<String> contextItemGroupNames = new ArrayList<String>();
|
||||
Map<String, ContextType> repoContextMap = new HashMap<String, ContextType>();
|
||||
String repoDefaultContextName = null;
|
||||
if (result.getParameter() != null) {
|
||||
if (result.getParameter() instanceof ContextItem) {
|
||||
contextItemGroupNames.clear();
|
||||
EList<?> contextGroups = ((ContextItem) result.getParameter()).getContext();
|
||||
for (Object contextGroup : contextGroups) {
|
||||
repoDefaultContextName = ((ContextItem) result.getParameter()).getDefaultContext();
|
||||
for (Object contextGroup : contextGroups) {
|
||||
if (contextGroup instanceof ContextTypeImpl) {
|
||||
String name = ((ContextTypeImpl) contextGroup).getName();
|
||||
contextItemGroupNames.add(name);
|
||||
repoContextMap.put(name, ((ContextTypeImpl) contextGroup));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -137,13 +140,19 @@ public class UpdateContextParameterCommand extends Command {
|
||||
}
|
||||
break;
|
||||
case UPDATE:
|
||||
if (contextItemGroupNames.contains(context.getName())) {
|
||||
String sourceContextName = null;
|
||||
if (repoContextMap.containsKey(context.getName())) {
|
||||
sourceContextName = context.getName();
|
||||
} else {
|
||||
sourceContextName = repoDefaultContextName;
|
||||
}
|
||||
if (sourceContextName != null) {
|
||||
item = (ContextItem) result.getParameter();
|
||||
|
||||
if (item != null && item.getProperty().getId().equals(param.getSource())
|
||||
&& result.isChecked()) {
|
||||
|
||||
ContextUtils.updateParameterFromRepository(item, param, context.getName());
|
||||
ContextUtils.updateParameterFromRepository(item, param, sourceContextName);
|
||||
} else {
|
||||
param.setSource(IContextParameter.BUILT_IN);
|
||||
}
|
||||
@@ -201,6 +210,30 @@ public class UpdateContextParameterCommand extends Command {
|
||||
continue;
|
||||
}
|
||||
param = (JobContextParameter) contextParam.clone();
|
||||
final Item contextItem = ContextUtils.getRepositoryContextItemById(param.getSource());
|
||||
if (contextItem != null) {
|
||||
if (contextItem instanceof ContextItem) {
|
||||
String defaultContextName = ((ContextItem) contextItem).getDefaultContext();
|
||||
ContextTypeImpl defaultContext = null;
|
||||
EList<?> contextGroups = ((ContextItem) contextItem).getContext();
|
||||
for (Object contextGroup : contextGroups) {
|
||||
if (contextGroup instanceof ContextTypeImpl) {
|
||||
String conName = ((ContextTypeImpl) contextGroup).getName();
|
||||
if (StringUtils.equals(defaultContextName, conName)) {
|
||||
defaultContext = ((ContextTypeImpl) contextGroup);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (defaultContext != null) {
|
||||
final ContextParameterType conParamType = ContextUtils
|
||||
.getContextParameterTypeByName(defaultContext, param.getName());
|
||||
if (conParamType != null) {
|
||||
ContextUtils.updateParameter(conParamType, param);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
param.setContext(newContext);
|
||||
newParamList.add(param);
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ public class DesignerPreferencePage extends FieldEditorPreferencePage implements
|
||||
Messages.getString("DesignerPreferencePage.duplicateTestCases"), getFieldEditorParent()); //$NON-NLS-1$
|
||||
addField(duplicateTestCases);
|
||||
}
|
||||
|
||||
|
||||
DirectoryFieldEditor compDefaultFileDir = new DirectoryFieldEditor(TalendDesignerPrefConstants.COMP_DEFAULT_FILE_DIR,
|
||||
Messages.getString("DesignerPreferencePage.defaultFilePathDirectory"), getFieldEditorParent()) {
|
||||
|
||||
|
||||
@@ -65,6 +65,9 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.CHECK_ONLY_LAST_VERSION,
|
||||
Messages.getString("PerformancePreferencePage.checkVersion"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.PROPAGATE_CONTEXT,
|
||||
Messages.getString("PerformancePreferencePage.propagateContext"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.PROPAGATE_CONTEXT_VARIABLE,
|
||||
Messages.getString("PerformancePreferencePage.addOrDeleteVariable"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
@@ -101,6 +104,9 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.CHECK_ONLY_LAST_VERSION,
|
||||
Messages.getString("PerformancePreferencePage.checkVersion"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.PROPAGATE_CONTEXT,
|
||||
Messages.getString("PerformancePreferencePage.propagateContext"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
addField(new BooleanFieldEditor(TalendDesignerPrefConstants.PROPAGATE_CONTEXT_VARIABLE,
|
||||
Messages.getString("PerformancePreferencePage.addOrDeleteVariable"), //$NON-NLS-1$
|
||||
getFieldEditorParent()));
|
||||
|
||||
@@ -67,6 +67,8 @@ public class TalendDesignerPrefConstants {
|
||||
public static final String EDITOR_LINESTYLE = "editorLineStyle "; //$NON-NLS-1$
|
||||
|
||||
public static final String DUPLICATE_TESTCASE = "duplicateTestCases "; //$NON-NLS-1$
|
||||
|
||||
public static final String PROPAGATE_CONTEXT = "propagateContext"; //$NON-NLS-1$
|
||||
|
||||
public static final String SCHEMA_OPTIONS = "schemaOptions"; //$NON-NLS-1$
|
||||
|
||||
|
||||
@@ -151,7 +151,12 @@ public class BigDataJobUtil {
|
||||
|
||||
for (IElementParameter pt : parameters) {
|
||||
if (pt.getName().equals("DISTRIBUTION")) { //$NON-NLS-1$
|
||||
return true;
|
||||
String value = String.valueOf(pt.getValue());
|
||||
if ("MICROSOFT_HD_INSIGHT".equals(value) //$NON-NLS-1$
|
||||
|| "GOOGLE_CLOUD_DATAPROC".equals(value) //$NON-NLS-1$
|
||||
|| "CLOUDERA_ALTUS".equals(value) || "DATABRICKS".equals(value) || "QUBOLE".equals(value)) { //$NON-NLS-1$
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (isSparkWithYarnClusterMode()) {
|
||||
|
||||
@@ -436,7 +436,9 @@ public class JavaProcessUtil {
|
||||
if (var.equals(contextPara.getName())) {
|
||||
String value =
|
||||
context.getContextParameter(contextPara.getName()).getValue();
|
||||
|
||||
if (StringUtils.isBlank(value)) {
|
||||
continue;
|
||||
}
|
||||
if (curParam.getName().equals(EParameterName.DRIVER_JAR.getName())
|
||||
&& value.contains(";")) { //$NON-NLS-1$
|
||||
String[] jars = value.split(";"); //$NON-NLS-1$
|
||||
|
||||
@@ -49,8 +49,7 @@ public class UnifiedComponentUtil {
|
||||
if (elementParameter != null && elementParameter.getValue() != null) {
|
||||
String emfCompName = String.valueOf(elementParameter.getValue());
|
||||
String paletteType = component.getPaletteType();
|
||||
IComponentsService compService = (IComponentsService) GlobalServiceRegister.getDefault()
|
||||
.getService(IComponentsService.class);
|
||||
IComponentsService compService = GlobalServiceRegister.getDefault().getService(IComponentsService.class);
|
||||
IComponent emfComponent = compService.getComponentsFactory().get(emfCompName, paletteType);
|
||||
if (emfComponent != null) {
|
||||
return emfComponent;
|
||||
@@ -64,8 +63,7 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static boolean isDelegateComponent(IComponent component) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
if (service.isDelegateComponent(component)) {
|
||||
return true;
|
||||
}
|
||||
@@ -75,8 +73,7 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static IComponent getDelegateComponent(IComponent component) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
return service.getDelegateComponent(component);
|
||||
}
|
||||
return component;
|
||||
@@ -84,8 +81,7 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static IComponent getDelegateComponent(String componentName, String paletteType) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
return service.getDelegateComponent(componentName, paletteType);
|
||||
}
|
||||
return null;
|
||||
@@ -94,8 +90,7 @@ public class UnifiedComponentUtil {
|
||||
public static void createParameters(INode node, List<IElementParameter> listParams, IComponent delegateComp,
|
||||
IComponent emfComp) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
service.createParameters(node, listParams, delegateComp, emfComp);
|
||||
}
|
||||
}
|
||||
@@ -104,8 +99,7 @@ public class UnifiedComponentUtil {
|
||||
List<? extends IElementParameter> oldParms, List<IMetadataTable> oldMetadataTables,
|
||||
List<INodeConnector> oldConnectors) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
service.switchComponent(node, delegateComponent, oldEmfComponent, oldParms, oldMetadataTables, oldConnectors);
|
||||
}
|
||||
|
||||
@@ -114,8 +108,7 @@ public class UnifiedComponentUtil {
|
||||
public static List<IComponent> filterUnifiedComponent(RepositoryComponentSetting setting, List<IComponent> componentList) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
List<IComponent> filtedList = new ArrayList<IComponent>();
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
IComponentsHandler componentsHandler = ComponentsFactoryProvider.getInstance().getComponentsHandler();
|
||||
filtedList.addAll(componentList);
|
||||
for (IComponent component : componentList) {
|
||||
@@ -149,12 +142,10 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static IComponent getEmfComponent(IComponentName setting, IComponent selectedComponent) {
|
||||
if (isDelegateComponent(selectedComponent)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
String paletteType = selectedComponent.getPaletteType();
|
||||
String emfCompName = service.getUnifiedComponetName4DndFromRepository(setting, selectedComponent);
|
||||
IComponentsService compService = (IComponentsService) GlobalServiceRegister.getDefault()
|
||||
.getService(IComponentsService.class);
|
||||
IComponentsService compService = GlobalServiceRegister.getDefault().getService(IComponentsService.class);
|
||||
IComponent emfComponent = compService.getComponentsFactory().get(emfCompName, paletteType);
|
||||
if (emfComponent != null) {
|
||||
return emfComponent;
|
||||
@@ -167,8 +158,7 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static String getUnifiedComponentDisplayName(IComponent delegateComponent, String emfComponent) {
|
||||
if (isDelegateComponent(delegateComponent)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
return service.getUnifiedCompDisplayName(delegateComponent, emfComponent);
|
||||
}
|
||||
return delegateComponent.getName();
|
||||
@@ -194,17 +184,15 @@ public class UnifiedComponentUtil {
|
||||
|
||||
public static String getComponentDisplayNameForPalette(IComponent delegateComponent, String keyWord) {
|
||||
if (isDelegateComponent(delegateComponent)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
return service.getComponentDisplayNameForPalette(delegateComponent, keyWord);
|
||||
}
|
||||
return delegateComponent.getName();
|
||||
return delegateComponent.getDisplayName();
|
||||
}
|
||||
|
||||
public static IComponent getUnifiedComponentByFilter(IComponent delegateComponent, String filter) {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IUnifiedComponentService.class)) {
|
||||
IUnifiedComponentService service = (IUnifiedComponentService) GlobalServiceRegister.getDefault()
|
||||
.getService(IUnifiedComponentService.class);
|
||||
IUnifiedComponentService service = GlobalServiceRegister.getDefault().getService(IUnifiedComponentService.class);
|
||||
return service.getUnifiedComponentByFilter(delegateComponent, filter);
|
||||
}
|
||||
return null;
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -465,7 +465,9 @@ public class DbMapComponent extends AbstractMapComponent {
|
||||
}
|
||||
if (externalData != null) {
|
||||
// rename metadata column name
|
||||
List<ExternalDbMapTable> tables = new ArrayList<ExternalDbMapTable>(externalData.getInputTables());
|
||||
List<ExternalDbMapTable> tables = new ArrayList<ExternalDbMapTable>();
|
||||
List<ExternalDbMapTable> inputTables = new ArrayList<ExternalDbMapTable>(externalData.getInputTables());
|
||||
tables.addAll(inputTables);
|
||||
tables.addAll(externalData.getOutputTables());
|
||||
ExternalDbMapTable tableFound = null;
|
||||
for (ExternalDbMapTable table : tables) {
|
||||
@@ -482,11 +484,23 @@ public class DbMapComponent extends AbstractMapComponent {
|
||||
}
|
||||
}
|
||||
|
||||
List<String> alias = new ArrayList<String>();
|
||||
alias.add(conectionName);
|
||||
for(ExternalDbMapTable table : inputTables) {
|
||||
if (table.getTableName().equals(conectionName)) {
|
||||
if(table.getAlias() != null) {
|
||||
alias.add(table.getAlias());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// it is necessary to update expressions only if renamed column come from input table
|
||||
if (tableFound != null && externalData.getInputTables().indexOf(tableFound) != -1) {
|
||||
TableEntryLocation oldLocation = new TableEntryLocation(conectionName, oldColumnName);
|
||||
TableEntryLocation newLocation = new TableEntryLocation(conectionName, newColumnName);
|
||||
replaceLocationsInAllExpressions(oldLocation, newLocation, false);
|
||||
for(String connName : alias) {
|
||||
if (tableFound != null && externalData.getInputTables().indexOf(tableFound) != -1) {
|
||||
TableEntryLocation oldLocation = new TableEntryLocation(connName, oldColumnName);
|
||||
TableEntryLocation newLocation = new TableEntryLocation(connName, newColumnName);
|
||||
replaceLocationsInAllExpressions(oldLocation, newLocation, false);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -885,29 +885,27 @@ public abstract class DbGenerationManager {
|
||||
if (expression == null) {
|
||||
return null;
|
||||
}
|
||||
if (DEFAULT_TAB_SPACE_STRING.equals(tabSpaceString)) {
|
||||
List<String> contextList = getContextList(component);
|
||||
boolean haveReplace = false;
|
||||
for (String context : contextList) {
|
||||
List<String> contextList = getContextList(component);
|
||||
boolean haveReplace = false;
|
||||
for (String context : contextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\" +" + context + "+ \""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
haveReplace = true;
|
||||
}
|
||||
}
|
||||
if (!haveReplace) {
|
||||
List<String> connContextList = getConnectionContextList(component);
|
||||
for (String context : connContextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\" +" + context + "+ \""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
haveReplace = true;
|
||||
}
|
||||
}
|
||||
if (!haveReplace) {
|
||||
List<String> connContextList = getConnectionContextList(component);
|
||||
for (String context : connContextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\" +" + context + "+ \""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
}
|
||||
}
|
||||
}
|
||||
Set<String> globalMapList = getGlobalMapList(component, expression);
|
||||
for (String globalMapStr : globalMapList) {
|
||||
String regex = parser.getGlobalMapExpressionRegex(globalMapStr);
|
||||
String replacement = parser.getGlobalMapReplacement(globalMapStr);
|
||||
expression = expression.replaceAll(regex, "\" +" + replacement + "+ \""); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
}
|
||||
}
|
||||
Set<String> globalMapList = getGlobalMapList(component, expression);
|
||||
for (String globalMapStr : globalMapList) {
|
||||
String regex = parser.getGlobalMapExpressionRegex(globalMapStr);
|
||||
String replacement = parser.getGlobalMapReplacement(globalMapStr);
|
||||
expression = expression.replaceAll(regex, "\" +" + replacement + "+ \""); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
@@ -1325,6 +1323,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 +1348,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 +1414,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 +1433,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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -290,32 +290,30 @@ public class PostgresGenerationManager extends DbGenerationManager {
|
||||
if (expression == null) {
|
||||
return null;
|
||||
}
|
||||
if (DEFAULT_TAB_SPACE_STRING.equals(tabSpaceString)) {
|
||||
List<String> contextList = getContextList(component);
|
||||
boolean haveReplace = false;
|
||||
for (String context : contextList) {
|
||||
List<String> contextList = getContextList(component);
|
||||
boolean haveReplace = false;
|
||||
for (String context : contextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\\\\\"\"+" + context + "+\"\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
haveReplace = true;
|
||||
}
|
||||
}
|
||||
if (!haveReplace) {
|
||||
List<String> connContextList = getConnectionContextList(component);
|
||||
for (String context : connContextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\\\\\"\"+" + context + "+\"\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
haveReplace = true;
|
||||
}
|
||||
}
|
||||
if (!haveReplace) {
|
||||
List<String> connContextList = getConnectionContextList(component);
|
||||
for (String context : connContextList) {
|
||||
if (expression.contains(context)) {
|
||||
expression = expression.replaceAll("\\b" + context + "\\b", "\\\\\"\"+" + context + "+\"\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
|
||||
}
|
||||
}
|
||||
}
|
||||
Set<String> globalMapList = getGlobalMapList(component, expression);
|
||||
for (String globalMapStr : globalMapList) {
|
||||
String replacement = globalMapStr;
|
||||
if (globalMapStr.contains("\\\\")) {
|
||||
replacement = globalMapStr.replaceAll("\\\\", "\\\\\\\\");
|
||||
}
|
||||
String regex = parser.getGlobalMapExpressionRegex(globalMapStr);
|
||||
expression = expression.replaceAll(regex, "\\\\\"\"+" + replacement + "+\"\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
}
|
||||
Set<String> globalMapList = getGlobalMapList(component, expression);
|
||||
for (String globalMapStr : globalMapList) {
|
||||
String replacement = globalMapStr;
|
||||
if (globalMapStr.contains("\\\\")) {
|
||||
replacement = globalMapStr.replaceAll("\\\\", "\\\\\\\\");
|
||||
}
|
||||
String regex = parser.getGlobalMapExpressionRegex(globalMapStr);
|
||||
expression = expression.replaceAll(regex, "\\\\\"\"+" + replacement + "+\"\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
// ============================================================================
|
||||
package org.talend.designer.dbmap.model.table;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -101,7 +100,6 @@ public class InputTable extends AbstractInOutTable {
|
||||
}
|
||||
}
|
||||
|
||||
ArrayList<IMetadataColumn> columnsToRemove = new ArrayList<IMetadataColumn>();
|
||||
for (IMetadataColumn column : columns) {
|
||||
InputColumnTableEntry inputEntry = (InputColumnTableEntry) getNewTableEntry(column);
|
||||
ExternalDbMapEntry externalMapperTableEntry = nameToPerTabEntry.get(inputEntry.getMetadataColumn().getLabel());
|
||||
@@ -110,13 +108,8 @@ public class InputTable extends AbstractInOutTable {
|
||||
fillInputEntry(inputEntry, externalMapperTableEntry);
|
||||
nameToPerTabEntry.remove(externalMapperTableEntry.getName());
|
||||
}
|
||||
if (externalMapperTableEntry != null || !isAliasTable) {
|
||||
dataMapTableEntries.add(inputEntry);
|
||||
} else {
|
||||
columnsToRemove.add(column);
|
||||
}
|
||||
dataMapTableEntries.add(inputEntry);
|
||||
}
|
||||
columns.removeAll(columnsToRemove);
|
||||
|
||||
// create unmatching entries
|
||||
for (ExternalDbMapEntry perTableEntry : nameToPerTabEntry.values()) {
|
||||
|
||||
@@ -300,6 +300,10 @@ public class MapperUI {
|
||||
if (outputsTablesView.size() > 0) {
|
||||
uiManager.selectDataMapTableView(outputsTablesView.get(0), true, false);
|
||||
}
|
||||
|
||||
for (DataMapTableView view : outputsTablesView) {
|
||||
view.getTableViewerCreatorForColumns().getTableViewer().refresh();
|
||||
}
|
||||
}
|
||||
|
||||
private void resizeNotMinimizedTablesAtExpandedSize(final Display display) {
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
// ============================================================================
|
||||
package org.talend.designer.dbmap.ui.tabs;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.eclipse.gef.commands.CommandStack;
|
||||
import org.eclipse.jface.preference.IPreferenceStore;
|
||||
import org.eclipse.swt.SWT;
|
||||
@@ -23,12 +25,19 @@ import org.eclipse.swt.layout.RowLayout;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Event;
|
||||
import org.eclipse.swt.widgets.Listener;
|
||||
import org.talend.commons.ui.swt.advanced.dataeditor.control.ExtendedPushButton;
|
||||
import org.talend.commons.ui.swt.colorstyledtext.UnnotifiableColorStyledText;
|
||||
import org.talend.commons.ui.swt.extended.table.ExtendedButtonEvent;
|
||||
import org.talend.commons.ui.swt.extended.table.IExtendedButtonListener;
|
||||
import org.talend.core.CorePlugin;
|
||||
import org.talend.core.ui.metadata.editor.MetadataTableEditorView;
|
||||
import org.talend.core.ui.metadata.editor.MetadataToolbarEditorView;
|
||||
import org.talend.designer.dbmap.MapperMain;
|
||||
import org.talend.designer.dbmap.i18n.Messages;
|
||||
import org.talend.designer.dbmap.managers.MapperManager;
|
||||
import org.talend.designer.dbmap.model.table.InputTable;
|
||||
import org.talend.designer.dbmap.model.table.OutputTable;
|
||||
import org.talend.designer.dbmap.ui.visualmap.table.DataMapTableView;
|
||||
|
||||
/**
|
||||
* DOC amaumont class global comment. Detailled comment <br/>
|
||||
@@ -58,6 +67,10 @@ public class TabFolderEditors extends CTabFolder {
|
||||
|
||||
private String dbmsId;
|
||||
|
||||
private List<ExtendedPushButton> inputToolBarButtons;
|
||||
|
||||
private List<ExtendedPushButton> outputToolBarButtons;
|
||||
|
||||
public TabFolderEditors(Composite parent, int style, MapperManager mapperManager, String dbmsId) {
|
||||
super(parent, style);
|
||||
tabFolderEditors = this;
|
||||
@@ -144,6 +157,8 @@ public class TabFolderEditors extends CTabFolder {
|
||||
inputMetaEditor.initGraphicComponents();
|
||||
inputMetaEditor.getExtendedTableViewer().setCommandStack(commandStack);
|
||||
|
||||
addListenersToInputButtons();
|
||||
|
||||
outputMetaEditor = new MetadataTableEditorView(inOutMetaEditorContainer, SWT.BORDER);
|
||||
outputMetaEditor.setCurrentDbms(dbmsId);
|
||||
outputMetaEditor.setShowDbTypeColumn(true, false, true);
|
||||
@@ -152,6 +167,46 @@ public class TabFolderEditors extends CTabFolder {
|
||||
outputMetaEditor.setShowPatternColumn(false);
|
||||
outputMetaEditor.initGraphicComponents();
|
||||
outputMetaEditor.getExtendedTableViewer().setCommandStack(commandStack);
|
||||
|
||||
addListenersToOutputButtons();
|
||||
}
|
||||
|
||||
private void addListenersToInputButtons() {
|
||||
MetadataToolbarEditorView toolBar = inputMetaEditor.getToolBar();
|
||||
inputToolBarButtons = toolBar.getButtons();
|
||||
IExtendedButtonListener afterCommandListener = new IExtendedButtonListener() {
|
||||
|
||||
public void handleEvent(ExtendedButtonEvent event) {
|
||||
List<InputTable> inputTablesList = mapperManager.getInputTables();
|
||||
for (InputTable inputTable : inputTablesList) {
|
||||
DataMapTableView view = mapperManager.retrieveIDataMapTableView(inputTable);
|
||||
view.getTableViewerCreatorForColumns().getTableViewer().refresh();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
for (ExtendedPushButton extendedPushButton : inputToolBarButtons) {
|
||||
extendedPushButton.addListener(afterCommandListener, false);
|
||||
}
|
||||
}
|
||||
|
||||
private void addListenersToOutputButtons() {
|
||||
MetadataToolbarEditorView toolBar = outputMetaEditor.getToolBar();
|
||||
outputToolBarButtons = toolBar.getButtons();
|
||||
IExtendedButtonListener afterCommandListener = new IExtendedButtonListener() {
|
||||
|
||||
public void handleEvent(ExtendedButtonEvent event) {
|
||||
List<OutputTable> outputTablesList = mapperManager.getOutputTables();
|
||||
for (OutputTable outputTable : outputTablesList) {
|
||||
DataMapTableView view = mapperManager.retrieveIDataMapTableView(outputTable);
|
||||
view.getTableViewerCreatorForColumns().getTableViewer().refresh();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
for (ExtendedPushButton extendedPushButton : outputToolBarButtons) {
|
||||
extendedPushButton.addListener(afterCommandListener, false);
|
||||
}
|
||||
}
|
||||
|
||||
private StyledText createStyledText(CTabItem item) {
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -51,6 +51,14 @@
|
||||
<include>${talend.job.path}/**</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<fileSet><!-- add context resources -->
|
||||
<directory>${resources.path}</directory>
|
||||
<outputDirectory>${file.separator}</outputDirectory>
|
||||
<includes>
|
||||
<include>${talend.job.path}/**</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<fileSet> <!-- add provided-lib -->
|
||||
<directory>${current.bundle.resources.dir}/provided-lib</directory>
|
||||
|
||||
@@ -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>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user