Compare commits
60 Commits
codegen_ba
...
patch/6.3.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
30b49bf9cc | ||
|
|
a9fac457b2 | ||
|
|
be4b6f8883 | ||
|
|
e612ab83de | ||
|
|
c54b63aa4f | ||
|
|
71aac01583 | ||
|
|
6def743f0b | ||
|
|
1d6c17de39 | ||
|
|
3ed6a8f9c3 | ||
|
|
75e6c14f1b | ||
|
|
b0d93eb010 | ||
|
|
54551850d7 | ||
|
|
87ad1be8cc | ||
|
|
4fd4cc00fc | ||
|
|
368fb9766e | ||
|
|
b25a9dec5c | ||
|
|
6b65e0c041 | ||
|
|
f41c0331bf | ||
|
|
88b16605f4 | ||
|
|
76a5c7e3f3 | ||
|
|
8205741178 | ||
|
|
4ee4d14d60 | ||
|
|
5680735ab9 | ||
|
|
d84cef3f76 | ||
|
|
83d892d71b | ||
|
|
8533bd5f6d | ||
|
|
c36bdef220 | ||
|
|
a31207d0a6 | ||
|
|
d500eda261 | ||
|
|
c5dacdf731 | ||
|
|
61294e6df8 | ||
|
|
5264deeb27 | ||
|
|
c50e6c531e | ||
|
|
50bf46b627 | ||
|
|
b4c319fc1a | ||
|
|
694b61884b | ||
|
|
b970acaff8 | ||
|
|
c9db9f05b3 | ||
|
|
7352e86d4e | ||
|
|
42fe37ba62 | ||
|
|
edb7d1939f | ||
|
|
8cfb8a6160 | ||
|
|
1ce2c6f609 | ||
|
|
5b4cfd7590 | ||
|
|
d61f305cc9 | ||
|
|
34fc84da95 | ||
|
|
141bbee806 | ||
|
|
cde4fcb03f | ||
|
|
9963060e8f | ||
|
|
cc2f257a02 | ||
|
|
43ff058114 | ||
|
|
e00bdf3df1 | ||
|
|
2d84ef06e4 | ||
|
|
956882cddf | ||
|
|
c40653dd6c | ||
|
|
ff62f42cc5 | ||
|
|
48b4dd6e25 | ||
|
|
9595f27eca | ||
|
|
6c642e7389 | ||
|
|
de0d82ca0f |
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.componentdesigner.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.componentdesigner.rcp.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.hl7.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.runprocess.nl</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.componentdesigner.feature</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.componentdesigner.rcp</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.componentdesigner</artifactId>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.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>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.business.diagram</artifactId>
|
||||
|
||||
@@ -711,6 +711,7 @@ this.globalResumeTicket = false;//to run others jobs
|
||||
|
||||
//5. all others sub-job (MultiThread mode)
|
||||
if(isRunInMultiThread){
|
||||
%>final Thread launchingThread = Thread.currentThread();<%
|
||||
for (INode rootNode : rootNodes) {
|
||||
String componentName = rootNode.getComponent().getName();
|
||||
String uniqueName = rootNode.getUniqueName();
|
||||
@@ -748,6 +749,10 @@ this.globalResumeTicket = false;//to run others jobs
|
||||
status = localStatus;
|
||||
}
|
||||
|
||||
if ("true".equals(((java.util.Map) threadLocal.get()).get("JobInterrupted"))) {
|
||||
launchingThread.interrupt();
|
||||
}
|
||||
|
||||
runningThreadCount.add(-1);
|
||||
}
|
||||
}
|
||||
@@ -757,13 +762,22 @@ this.globalResumeTicket = false;//to run others jobs
|
||||
}
|
||||
}
|
||||
%>
|
||||
boolean interrupted = false;
|
||||
while (runningThreadCount.getCount() > 0) {
|
||||
try {
|
||||
Thread.sleep(10);
|
||||
} catch (java.lang.InterruptedException e) {
|
||||
interrupted = true;
|
||||
} catch (java.lang.Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
if (interrupted) {
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
|
||||
|
||||
<%
|
||||
} else { // isRunInMultiThread //5. all others sub-job (SingleThread mode)
|
||||
for (INode rootNode : rootNodes) {
|
||||
@@ -1110,13 +1124,16 @@ if (execStat) {
|
||||
<% if(exist_tMDM) { %>
|
||||
private void closeMDMConnections() {
|
||||
try {
|
||||
<% for (INode mdmComponent : mdmComponentsList) { %>
|
||||
org.talend.mdm.webservice.TMDMService service_<%=mdmComponent.getUniqueName() %> = (org.talend.mdm.webservice.TMDMService)globalMap.get("TMDMService_<%=mdmComponent.getUniqueName() %>");
|
||||
if(service_<%=mdmComponent.getUniqueName() %> != null)
|
||||
{
|
||||
service_<%=mdmComponent.getUniqueName() %>.logout(new org.talend.mdm.webservice.WSLogout());
|
||||
}
|
||||
<% } %>
|
||||
java.util.Iterator keySets = globalMap.keySet().iterator();
|
||||
while (keySets.hasNext()) {
|
||||
String key = keySets.next().toString();
|
||||
if (key.startsWith("TMDMService_tMDMConnection_")) {
|
||||
org.talend.mdm.webservice.TMDMService service = (org.talend.mdm.webservice.TMDMService)globalMap.get(key);
|
||||
if (service != null) {
|
||||
service.logout(new org.talend.mdm.webservice.WSLogout());
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (java.lang.Exception e) {
|
||||
}
|
||||
}
|
||||
@@ -1228,12 +1245,14 @@ if (execStat) {
|
||||
connections.put("connBaseDN_<%=ldapNode.getUniqueName() %>", globalMap.get("connBaseDN_<%=ldapNode.getUniqueName() %>"));
|
||||
<% } %>
|
||||
|
||||
<% for (INode mdmNode : mdmComponentsList) {%>
|
||||
connections.put("TMDMService_<%=mdmNode.getUniqueName() %>", globalMap.get("TMDMService_<%=mdmNode.getUniqueName() %>"));
|
||||
<% if( "false".equals(ElementParameterParser.getValue(mdmNode, "__AUTO_COMMIT__"))) {%>
|
||||
connections.put("mdmTransaction_<%=mdmNode.getUniqueName() %>", globalMap.get("mdmTransaction_<%=mdmNode.getUniqueName() %>"));
|
||||
<% }
|
||||
} %>
|
||||
<% for (INode mdmNode : mdmComponentsList) {%>
|
||||
connections.put("mdmUrl_<%=mdmNode.getUniqueName() %>", globalMap.get("mdmUrl_<%=mdmNode.getUniqueName() %>"));
|
||||
connections.put("username_<%=mdmNode.getUniqueName() %>", globalMap.get("username_<%=mdmNode.getUniqueName() %>"));
|
||||
connections.put("password_<%=mdmNode.getUniqueName() %>", globalMap.get("password_<%=mdmNode.getUniqueName() %>"));
|
||||
connections.put("useTransaction_<%=mdmNode.getUniqueName() %>", globalMap.get("useTransaction_<%=mdmNode.getUniqueName() %>"));
|
||||
connections.put("useClientTranId_<%=mdmNode.getUniqueName() %>", globalMap.get("useClientTranId_<%=mdmNode.getUniqueName() %>"));
|
||||
<% } %>
|
||||
|
||||
<% for (INode paloNode : paloComponentsList) { %>
|
||||
connections.put("p_<%=paloNode.getUniqueName() %>", globalMap.get("p_<%=paloNode.getUniqueName() %>"));
|
||||
connections.put("pConn_<%=paloNode.getUniqueName() %>", globalMap.get("pConn_<%=paloNode.getUniqueName() %>"));
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.codegen</artifactId>
|
||||
|
||||
@@ -63,6 +63,7 @@ import org.talend.core.model.components.ComponentCategory;
|
||||
import org.talend.core.model.components.ComponentManager;
|
||||
import org.talend.core.model.components.ComponentProviderInfo;
|
||||
import org.talend.core.model.components.ComponentUtilities;
|
||||
import org.talend.core.model.components.EComponentType;
|
||||
import org.talend.core.model.components.IComponent;
|
||||
import org.talend.core.model.components.IComponentsFactory;
|
||||
import org.talend.core.model.components.IComponentsHandler;
|
||||
@@ -82,6 +83,7 @@ import org.talend.designer.core.model.components.ComponentFilesNaming;
|
||||
import org.talend.designer.core.model.components.EmfComponent;
|
||||
import org.talend.designer.core.model.process.AbstractProcessProvider;
|
||||
import org.talend.designer.core.model.process.GenericProcessProvider;
|
||||
import org.talend.designer.core.ui.editor.jobletcontainer.JobletUtil;
|
||||
|
||||
/**
|
||||
* Component factory that look for each component and load their information. <br/>
|
||||
@@ -770,6 +772,32 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IComponent getJobletComponent(String name, String paletteType) {
|
||||
if (componentList == null) {
|
||||
init(false);
|
||||
}
|
||||
|
||||
for (IComponent comp : componentList) {
|
||||
if(comp.getComponentType() != EComponentType.JOBLET){
|
||||
continue;
|
||||
}
|
||||
String comName = comp.getName();
|
||||
if(comp != null && paletteType.equals(comp.getPaletteType())){
|
||||
if (comName.equals(name)) {
|
||||
return comp;
|
||||
}else if(new JobletUtil().matchExpression(comName)){
|
||||
String[] names = comName.split(":"); //$NON-NLS-1$
|
||||
comName = names[1];
|
||||
if (comName.equals(name)) {
|
||||
return comp;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initializeComponents(IProgressMonitor monitor) {
|
||||
this.monitor = monitor;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.exchange</artifactId>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.talend.mdm.transaction.client;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.httpclient.HttpClient;
|
||||
import org.apache.commons.httpclient.HttpException;
|
||||
@@ -10,98 +11,96 @@ import org.apache.commons.httpclient.auth.AuthScope;
|
||||
import org.apache.commons.httpclient.methods.DeleteMethod;
|
||||
import org.apache.commons.httpclient.methods.PostMethod;
|
||||
|
||||
@SuppressWarnings("nls")
|
||||
public class MDMTransaction {
|
||||
|
||||
public static final String JVM_STICKY_SESSION = "sticky_session"; //$NON-NLS-1$
|
||||
public static final String DEFAULT_STICKY_SESSION = "JSESSIONID"; //$NON-NLS-1$
|
||||
private String url;
|
||||
|
||||
private String url;
|
||||
private String id;
|
||||
private String username;
|
||||
private String password;
|
||||
private String sessionId;
|
||||
private String id;
|
||||
|
||||
public void commit() throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY,
|
||||
new UsernamePasswordCredentials(username, password));
|
||||
private String username;
|
||||
|
||||
HttpMethod method = new PostMethod(url + "/" + id);
|
||||
method.setDoAuthentication(true);
|
||||
try {
|
||||
method.setRequestHeader("Cookie", getStickySession() + "=" + sessionId); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
client.executeMethod(method);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
method.releaseConnection();
|
||||
}
|
||||
private String password;
|
||||
|
||||
int statuscode = method.getStatusCode();
|
||||
if (statuscode >= 400) {
|
||||
throw new MDMTransactionException("Commit failed. The commit operation has returned the code " + statuscode + ".");
|
||||
}
|
||||
}
|
||||
private List<String> cookies;
|
||||
|
||||
public void rollback() throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY,
|
||||
new UsernamePasswordCredentials(username, password));
|
||||
public void commit() throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
|
||||
|
||||
HttpMethod method = new DeleteMethod(url + "/" + id);
|
||||
method.setDoAuthentication(true);
|
||||
try {
|
||||
method.setRequestHeader("Cookie", getStickySession() + "=" + sessionId); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
client.executeMethod(method);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
method.releaseConnection();
|
||||
}
|
||||
|
||||
int statuscode = method.getStatusCode();
|
||||
if (statuscode >= 400) {
|
||||
throw new MDMTransactionException("Rollback failed. The rollback operation has returned the code " + statuscode + ".");
|
||||
}
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public String getSessionId() {
|
||||
return sessionId;
|
||||
}
|
||||
|
||||
public void setSessionId(String sessionId) {
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
||||
public static String getStickySession() {
|
||||
String stickySession = System.getProperty(JVM_STICKY_SESSION);
|
||||
if(stickySession == null) {
|
||||
stickySession = DEFAULT_STICKY_SESSION;
|
||||
HttpMethod method = new PostMethod(url + "/" + id);
|
||||
method.setDoAuthentication(true);
|
||||
try {
|
||||
for (String cookie : cookies) {
|
||||
method.addRequestHeader("Cookie", cookie);
|
||||
}
|
||||
client.executeMethod(method);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
method.releaseConnection();
|
||||
}
|
||||
|
||||
int statuscode = method.getStatusCode();
|
||||
if (statuscode >= 400) {
|
||||
throw new MDMTransactionException("Commit failed. The commit operation has returned the code " + statuscode + ".");
|
||||
}
|
||||
return stickySession;
|
||||
}
|
||||
|
||||
public void rollback() throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
|
||||
|
||||
HttpMethod method = new DeleteMethod(url + "/" + id);
|
||||
method.setDoAuthentication(true);
|
||||
try {
|
||||
for (String cookie : cookies) {
|
||||
method.addRequestHeader("Cookie", cookie);
|
||||
}
|
||||
client.executeMethod(method);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
method.releaseConnection();
|
||||
}
|
||||
|
||||
int statuscode = method.getStatusCode();
|
||||
if (statuscode >= 400) {
|
||||
throw new MDMTransactionException(
|
||||
"Rollback failed. The rollback operation has returned the code " + statuscode + ".");
|
||||
}
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public List<String> getCookies() {
|
||||
return cookies;
|
||||
}
|
||||
|
||||
public void setCookies(List<String> cookies) {
|
||||
this.cookies = cookies;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.talend.mdm.transaction.client;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.httpclient.Header;
|
||||
import org.apache.commons.httpclient.HttpClient;
|
||||
@@ -10,13 +12,10 @@ import org.apache.commons.httpclient.UsernamePasswordCredentials;
|
||||
import org.apache.commons.httpclient.auth.AuthScope;
|
||||
import org.apache.commons.httpclient.methods.GetMethod;
|
||||
import org.apache.commons.httpclient.methods.PutMethod;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
@SuppressWarnings("nls")
|
||||
public class MDMTransactionClient {
|
||||
|
||||
private static final Log LOG = LogFactory.getLog(MDMTransactionClient.class);
|
||||
|
||||
public static MDMTransaction newTransaction(String url, String username, String password) throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
|
||||
@@ -25,11 +24,11 @@ public class MDMTransactionClient {
|
||||
PutMethod put = new PutMethod(url);
|
||||
put.setDoAuthentication(true);
|
||||
String tid;
|
||||
String sessionID;
|
||||
List<String> cookies;
|
||||
try {
|
||||
client.executeMethod(put);
|
||||
tid = put.getResponseBodyAsString();
|
||||
sessionID = parseSessionID(put);
|
||||
cookies = parseCookies(put);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
@@ -43,30 +42,30 @@ public class MDMTransactionClient {
|
||||
result.setId(tid);
|
||||
result.setUsername(username);
|
||||
result.setPassword(password);
|
||||
result.setSessionId(sessionID);
|
||||
result.setCookies(cookies);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static String getMDMTransactionURL(String url, boolean isNewServer) {
|
||||
if(url == null || "".equals(url)) {
|
||||
if (url == null || "".equals(url)) {
|
||||
return "";
|
||||
}
|
||||
|
||||
int count = 3;
|
||||
int i=0;
|
||||
for(;i<url.length();i++) {
|
||||
int i = 0;
|
||||
for (; i < url.length(); i++) {
|
||||
char c = url.charAt(i);
|
||||
if('/' == c) {
|
||||
if ('/' == c) {
|
||||
count--;
|
||||
}
|
||||
if(count == 0) {
|
||||
if (count == 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
String result = url.substring(0, i);
|
||||
if(isNewServer){
|
||||
if (isNewServer) {
|
||||
result += "/talendmdm/services/rest/transactions";
|
||||
} else {
|
||||
result += "/datamanager/services/transactions";
|
||||
@@ -75,17 +74,17 @@ public class MDMTransactionClient {
|
||||
return result;
|
||||
}
|
||||
|
||||
public static String getSessionID(String url, String username, String password) throws IOException {
|
||||
public static List<String> getCookies(String url, String username, String password) throws IOException {
|
||||
HttpClient client = new HttpClient();
|
||||
client.getState().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
|
||||
client.getParams().setAuthenticationPreemptive(true);
|
||||
|
||||
GetMethod get = new GetMethod(url);
|
||||
get.setDoAuthentication(true);
|
||||
String sessionID;
|
||||
List<String> cookies;
|
||||
try {
|
||||
client.executeMethod(get);
|
||||
sessionID = parseSessionID(get);
|
||||
cookies = parseCookies(get);
|
||||
} catch (HttpException e) {
|
||||
throw e;
|
||||
} catch (IOException e) {
|
||||
@@ -93,44 +92,16 @@ public class MDMTransactionClient {
|
||||
} finally {
|
||||
get.releaseConnection();
|
||||
}
|
||||
return sessionID;
|
||||
return cookies;
|
||||
}
|
||||
|
||||
private static String parseSessionID(HttpMethod method) {
|
||||
String sessionID = null;
|
||||
String stickySession = MDMTransaction.getStickySession();
|
||||
Header[] setCookie = method.getResponseHeaders("Set-Cookie"); //$NON-NLS-1$
|
||||
for(Header header : setCookie) {
|
||||
String headerValue = header.getValue();
|
||||
if(headerValue.startsWith(stickySession + "=")) { //$NON-NLS-1$
|
||||
int beginIndex = (stickySession + "=").length(); //$NON-NLS-1$
|
||||
int endIndex = headerValue.indexOf(";", beginIndex); //$NON-NLS-1$
|
||||
sessionID = headerValue.substring(beginIndex, endIndex);
|
||||
break;
|
||||
}
|
||||
private static List<String> parseCookies(HttpMethod method) {
|
||||
List<String> cookies = new ArrayList<String>();
|
||||
Header[] setCookie = method.getResponseHeaders("Set-Cookie");
|
||||
for (Header header : setCookie) {
|
||||
cookies.add(header.getValue());
|
||||
}
|
||||
if(sessionID == null) {
|
||||
if(LOG.isDebugEnabled()) {
|
||||
LOG.warn("Cookie for sticky session not found!"); //$NON-NLS-1$
|
||||
}
|
||||
sessionID = ""; //$NON-NLS-1$
|
||||
}
|
||||
return sessionID;
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws IOException {
|
||||
String sessionID = MDMTransactionClient.getSessionID("http://localhost:8621/talendmdm/services/rest/transactions", "administrator", "administrator");
|
||||
System.out.println(sessionID);
|
||||
|
||||
MDMTransaction mt = MDMTransactionClient.newTransaction("http://localhost:8180/talendmdm/services/rest/transactions", "administrator", "administrator");
|
||||
mt.commit();
|
||||
|
||||
MDMTransaction mt1 = MDMTransactionClient.newTransaction("http://localhost:8180/talendmdm/services/rest/transactions", "administrator", "administrator");
|
||||
mt1.rollback();
|
||||
|
||||
String url = "http://localhost:8180/talend/TalendPort";
|
||||
String mdmurl = MDMTransactionClient.getMDMTransactionURL(url, true);
|
||||
System.out.println(mdmurl);
|
||||
return cookies;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -11,7 +11,7 @@
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<cxf.version>3.1.1</cxf.version>
|
||||
<talend.nexus.url>http://newbuild.talend.com:8081</talend.nexus.url>
|
||||
<talend.nexus.url>https://artifacts-zl.talend.com</talend.nexus.url>
|
||||
</properties>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>http://newbuild.talend.com:8081</talend.nexus.url>
|
||||
<talend.nexus.url>https://artifacts-zl.talend.com</talend.nexus.url>
|
||||
</properties>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<cxf.version>3.1.1</cxf.version>
|
||||
<talend.nexus.url>http://newbuild.talend.com:8081</talend.nexus.url>
|
||||
<talend.nexus.url>https://artifacts-zl.talend.com</talend.nexus.url>
|
||||
</properties>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<cxf.version>3.1.1</cxf.version>
|
||||
<talend.nexus.url>http://newbuild.talend.com:8081</talend.nexus.url>
|
||||
<talend.nexus.url>https://artifacts-zl.talend.com</talend.nexus.url>
|
||||
</properties>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<cxf.version>3.1.1</cxf.version>
|
||||
<talend.nexus.url>http://newbuild.talend.com:8081</talend.nexus.url>
|
||||
<talend.nexus.url>https://artifacts-zl.talend.com</talend.nexus.url>
|
||||
</properties>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.libs</artifactId>
|
||||
|
||||
@@ -36,33 +36,35 @@ String trans = "mdmTrans_" + connection;
|
||||
org.talend.mdm.bulkload.client.BulkloadClient bulkloadClient_<%=cid %> = new org.talend.mdm.bulkload.client.BulkloadClient(<%=mdmUrl %>, <%=username %>, decryptedPassword_<%=cid %>, null, <%=dataCluster %> + "<%=isStaging?"#STAGING":""%>", <%=dataEntity %>, <%=dataModule %>);
|
||||
|
||||
<%if(useTransaction) {%>
|
||||
String transKey_<%=cid %> = "<%=trans%>_" + Thread.currentThread().getThreadGroup().getName();
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null) {
|
||||
String murl_<%=cid %> = (String)globalMap.get("mdmUrl_<%=connection %>");
|
||||
if(murl_<%=cid %>.endsWith("?wsdl")) {
|
||||
murl_<%=cid %> = murl_<%=cid %>.substring(0, murl_<%=cid %>.length() - 5);
|
||||
if(globalMap.get("useTransaction_<%=connection %>") != null && (Boolean)globalMap.get("useTransaction_<%=connection %>")) {
|
||||
String transKey_<%=cid %> = "<%=trans%>_" + Thread.currentThread().getThreadGroup().getName();
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null) {
|
||||
String murl_<%=cid %> = (String)globalMap.get("mdmUrl_<%=connection %>");
|
||||
if(murl_<%=cid %>.endsWith("?wsdl")) {
|
||||
murl_<%=cid %> = murl_<%=cid %>.substring(0, murl_<%=cid %>.length() - 5);
|
||||
}
|
||||
String turl_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.getMDMTransactionURL(murl_<%=cid %>, true);
|
||||
String username_<%=cid %> = (String)globalMap.get("username_<%=connection %>");
|
||||
String password_<%=cid %> = (String)globalMap.get("password_<%=connection %>");
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")) {
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
} else {
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
}
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
<% logUtil.debug("\"Got transaction successfully with key=\" + transKey_" + cid);%>
|
||||
}
|
||||
String turl_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.getMDMTransactionURL(murl_<%=cid %>, true);
|
||||
String username_<%=cid %> = (String)globalMap.get("username_<%=connection %>");
|
||||
String password_<%=cid %> = (String)globalMap.get("password_<%=connection %>");
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")) {
|
||||
String sessionID_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid %>);
|
||||
} else {
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
}
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
<% logUtil.debug("\"Got transaction successfully with key=\" + transKey_" + cid);%>
|
||||
bulkloadClient_<%=cid %>.setTransactionId(mdmTransaction_<%=cid %>.getId());
|
||||
bulkloadClient_<%=cid %>.setCookies(mdmTransaction_<%=cid%>.getCookies());
|
||||
}
|
||||
bulkloadClient_<%=cid %>.setTransactionId(mdmTransaction_<%=cid %>.getId());
|
||||
bulkloadClient_<%=cid %>.setSessionId(mdmTransaction_<%=cid%>.getSessionId());
|
||||
<%}%>
|
||||
|
||||
bulkloadClient_<%=cid %>.startThreadCount();
|
||||
|
||||
Binary file not shown.
@@ -71,13 +71,13 @@ int nb_line_<%=cid %> = 0;
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -89,8 +89,7 @@ int nb_line_<%=cid %> = 0;
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -139,13 +139,13 @@ int nb_line_rejected_<%=cid %> = 0;
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -157,8 +157,7 @@ int nb_line_rejected_<%=cid %> = 0;
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -114,13 +114,13 @@ if ((metadatas != null) && (metadatas.size() > 0)) {//1
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -132,8 +132,7 @@ if ((metadatas != null) && (metadatas.size() > 0)) {//1
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -76,13 +76,13 @@ int nb_line_<%=cid %> = 0;
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -94,8 +94,7 @@ int nb_line_<%=cid %> = 0;
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -69,13 +69,13 @@ int nb_line_<%=cid %> = 0;
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -87,8 +87,7 @@ int nb_line_<%=cid %> = 0;
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -112,13 +112,13 @@ if ((metadatas != null) && (metadatas.size() > 0)) {
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -130,8 +130,7 @@ if ((metadatas != null) && (metadatas.size() > 0)) {
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -143,13 +143,13 @@ int nb_line_rejected_<%=cid %> = 0;
|
||||
com.talend.mdm.transaction.client.MDMTransaction mdmTransaction_<%=cid %> = (com.talend.mdm.transaction.client.MDMTransaction)globalMap.get(transKey_<%=cid %>);
|
||||
if(mdmTransaction_<%=cid %> == null){
|
||||
if((Boolean)globalMap.get("useClientTranId_<%=connection %>")){
|
||||
String sessionID_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getSessionID(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
List<String> cookies_<%=cid%> = com.talend.mdm.transaction.client.MDMTransactionClient.getCookies(turl_<%=cid%>,username_<%=cid%>,password_<%=cid%>);
|
||||
mdmTransaction_<%=cid %> = new com.talend.mdm.transaction.client.MDMTransaction();
|
||||
mdmTransaction_<%=cid %>.setUrl(turl_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setId("<%=cid %>_" + java.util.UUID.randomUUID());
|
||||
mdmTransaction_<%=cid %>.setUsername(username_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setPassword(password_<%=cid %>);
|
||||
mdmTransaction_<%=cid %>.setSessionId(sessionID_<%=cid%>);
|
||||
mdmTransaction_<%=cid %>.setCookies(cookies_<%=cid%>);
|
||||
}else{
|
||||
<% logUtil.debug("\"Attempt to get a remote transaction from url: \" + murl_" + cid);%>
|
||||
mdmTransaction_<%=cid %> = com.talend.mdm.transaction.client.MDMTransactionClient.newTransaction(turl_<%=cid %>,username_<%=cid %>,password_<%=cid %>);
|
||||
@@ -161,8 +161,7 @@ int nb_line_rejected_<%=cid %> = 0;
|
||||
context_<%=cid %>.put(org.apache.cxf.headers.Header.HEADER_LIST, soapHeaders_<%=cid %>);
|
||||
|
||||
java.util.Map<String, java.util.List<String>> httpHeaders_<%=cid %> = new java.util.HashMap<String, java.util.List<String>>();
|
||||
String cookie_<%=cid %> = com.talend.mdm.transaction.client.MDMTransaction.getStickySession() + "=" + mdmTransaction_<%=cid%>.getSessionId();
|
||||
httpHeaders_<%=cid %>.put("Cookie", java.util.Arrays.asList(cookie_<%=cid %>));
|
||||
httpHeaders_<%=cid %>.put("Cookie", mdmTransaction_<%=cid %>.getCookies());
|
||||
context_<%=cid %>.put(org.apache.cxf.message.Message.PROTOCOL_HEADERS, httpHeaders_<%=cid %>);
|
||||
|
||||
globalMap.put(transKey_<%=cid %>, mdmTransaction_<%=cid %>);
|
||||
|
||||
@@ -203,12 +203,12 @@ for(int i = 0; i < result.length; i++){
|
||||
<IMPORTS>
|
||||
<IMPORT NAME="WebServiceInput" MODULE="WebServiceInput.jar" MVN="mvn:org.talend.libraries/WebServiceInput/6.0.0"
|
||||
REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-axis" MODULE="axis.jar" MVN="mvn:org.talend.libraries/axis/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.apache.axis2/lib/axis.jar" REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-axis" MODULE="axis-p1.jar" MVN="mvn:org.talend.libraries/axis-p1/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.apache.axis2/lib/axis-p1.jar" REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-jaxrpc" MODULE="jaxrpc.jar" MVN="mvn:org.talend.libraries/jaxrpc/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.jax/lib/jaxrpc.jar"
|
||||
REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-saaj" MODULE="saaj.jar" MVN="mvn:org.talend.libraries/saaj/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.saaj/lib/saaj.jar" REQUIRED="true" />
|
||||
<IMPORT NAME="WSDL4J-1_6_3" MODULE="wsdl4j-1.6.3.jar" MVN="mvn:org.talend.libraries/wsdl4j-1.6.3/6.0.0"
|
||||
BundleID="org.apache.servicemix.bundles.wsdl4j" REQUIRED="true" />
|
||||
REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-discovery"
|
||||
MODULE="commons-discovery-0.2.jar" MVN="mvn:org.talend.libraries/commons-discovery-0.2/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-discovery-0.2.jar" REQUIRED="true" />
|
||||
<IMPORT NAME="SOAP-logging" MODULE="commons-logging-1.1.jar" MVN="mvn:org.talend.libraries/commons-logging-1.1/6.0.0" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-logging-1.1.jar"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.localprovider</artifactId>
|
||||
|
||||
@@ -133,6 +133,11 @@
|
||||
name="widget.type.jsonTable"
|
||||
widgetType="widget.type.jsonTable">
|
||||
</Mapping>
|
||||
<Mapping
|
||||
mapFieldType="DIRECTORY"
|
||||
name="widget.type.directory"
|
||||
widgetType="widget.type.directory">
|
||||
</Mapping>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.talend.designer.core.generators">
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.core.generic</artifactId>
|
||||
|
||||
@@ -378,7 +378,7 @@ public class GenericElementParameter extends ElementParameter {
|
||||
return;
|
||||
}
|
||||
for (IElementParameter parameter : schemaParameters) {
|
||||
if (currentContext.equals(parameter.getContext())) {
|
||||
if (parameter != this && currentContext.equals(parameter.getContext())) {
|
||||
parameter.setValue(newSchema);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@ tSalesforceConnection.bulkConnection=BULK_CONNECTION
|
||||
tSalesforceConnection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceConnection.httpTraceMessage=HTTP_TRACEMESSAGE
|
||||
tSalesforceConnection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceConnection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceConnection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceConnection.clientId=CLIENT_ID
|
||||
tSalesforceConnection.timeout=TIMEOUT
|
||||
tSalesforceConnection.proxy.useProxy=USE_PROXY
|
||||
@@ -51,6 +53,8 @@ tSalesforceInput.connection.bulkConnection=CONNECTION
|
||||
tSalesforceInput.connection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceInput.connection.httpTraceMessage=HTTP_TRACEMESSAGE
|
||||
tSalesforceInput.connection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceInput.connection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceInput.connection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceInput.connection.clientId=CLIENT_ID
|
||||
tSalesforceInput.connection.timeout=TIMEOUT
|
||||
tSalesforceInput.connection.proxy.useProxy=USE_PROXY
|
||||
@@ -87,6 +91,8 @@ tSalesforceOutput.connection.bulkConnection=CONNECTION
|
||||
tSalesforceOutput.connection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceOutput.connection.httpTraceMessage=HTTP_TRACEMESSAGE
|
||||
tSalesforceOutput.connection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceOutput.connection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceOutput.connection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceOutput.connection.clientId=CLIENT_ID
|
||||
tSalesforceOutput.connection.timeout=TIMEOUT
|
||||
tSalesforceOutput.connection.proxy.useProxy=USE_PROXY
|
||||
@@ -174,6 +180,8 @@ tSalesforceGetDeleted.connection.bulkConnection=CONNECTION
|
||||
tSalesforceGetDeleted.connection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceGetDeleted.connection.httpTraceMessage=HTTP_TRACEMESSAGE
|
||||
tSalesforceGetDeleted.connection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceGetDeleted.connection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceGetDeleted.connection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceGetDeleted.connection.clientId=CLIENT_ID
|
||||
tSalesforceGetDeleted.connection.timeout=TIMEOUT
|
||||
tSalesforceGetDeleted.connection.proxy.useProxy=USE_PROXY
|
||||
@@ -205,6 +213,8 @@ tSalesforceGetUpdated.connection.bulkConnection=CONNECTION
|
||||
tSalesforceGetUpdated.connection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceGetUpdated.connection.httpTraceMessage=HTTP_TRACEMESSAGE
|
||||
tSalesforceGetUpdated.connection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceGetUpdated.connection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceGetUpdated.connection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceGetUpdated.connection.clientId=CLIENT_ID
|
||||
tSalesforceGetUpdated.connection.timeout=TIMEOUT
|
||||
tSalesforceGetUpdated.connection.proxy.useProxy=USE_PROXY
|
||||
@@ -277,6 +287,8 @@ tSalesforceGetServerTimestamp.module.main.schema=SCHEMA
|
||||
tSalesforceGetServerTimestamp.module.main.schema.connector=FLOW->MAIN
|
||||
tSalesforceGetServerTimestamp.connection.needCompression=NEED_COMPRESSION
|
||||
tSalesforceGetServerTimestamp.connection.httpChunked=USE_HTTP_CHUNKED
|
||||
tSalesforceGetServerTimestamp.connection.reuseSession=USE_SAVE_SESSION
|
||||
tSalesforceGetServerTimestamp.connection.sessionDirectory=SESSION_DIRECTORY
|
||||
tSalesforceGetServerTimestamp.connection.clientId=CLIENT_ID
|
||||
tSalesforceGetServerTimestamp.connection.timeout=TIMEOUT
|
||||
tSalesforceGetServerTimestamp.connection.proxy.useProxy=USE_PROXY
|
||||
|
||||
@@ -848,5 +848,12 @@
|
||||
activate="true"
|
||||
class="org.talend.designer.core.ui.viewer.proposal.TalendCompletionProposalComputer">
|
||||
</javaCompletionProposalComputer>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.talend.core.repository.login.task">
|
||||
<loginTask
|
||||
class="org.talend.designer.core.ui.preferences.PreferencePreInitailizeTask"
|
||||
priority="normal">
|
||||
</loginTask>
|
||||
</extension>
|
||||
</plugin>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>6.3.1-SNAPSHOT</version>
|
||||
<version>6.3.1</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.core</artifactId>
|
||||
|
||||
@@ -730,6 +730,8 @@ PerformancePreferencePage.checkVersion=Check only the last version when updating
|
||||
PerformancePreferencePage.addOrDeleteVariable=Propagate add/delete variable changes in repository contexts
|
||||
PerformancePreferencePage.ActivedTimeoutSetting=Activate the timeout for database connection.
|
||||
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.
|
||||
PerformancePreferencePage.CodeFormatTimeout=Code Format timeout (seconds)
|
||||
PerformancePreferencePage.ConnectionTimeoutTip=If set it by zero, will be same as deactiving the timeout.
|
||||
PerformancePreferencePage.autoUpdateDoc=Automatic update of corresponding documentation of job/joblet
|
||||
@@ -952,3 +954,16 @@ MainComposite.NameFormatError=Name contains incorrect characters.
|
||||
MainComposite.SameAsProjectname=Name is same as project name.
|
||||
|
||||
ProcessController.UseDynamicJobSelectionDialog.message=Context param will be retreive from job : {0} !
|
||||
|
||||
InstallModuleDialog.text=Module
|
||||
InstallModuleDialog.message=Select a module !
|
||||
InstallModuleDialog.platfromBtn=Platform
|
||||
InstallModuleDialog.repositoryBtn=Artifact Repository(local m2/nexus)
|
||||
InstallModuleDialog.repository.name=File Name
|
||||
InstallModuleDialog.repository.mvnURI=Maven URI
|
||||
InstallModuleDialog.repository.name.error=Please input a valid module name !
|
||||
InstallModuleDialog.repository.message=Please input the jar name and click the detect button !
|
||||
InstallModuleDialog.repository.error=This jar is not installed in the artifact repository, please install it !
|
||||
InstallModuleDialog.detectButton.text=Detect artifact install status
|
||||
InstallModuleDialog.browseFileBtn=Browse a Module File
|
||||
InstallModuleDialog.browseFile.error=Please select a file to install !
|
||||
|
||||
@@ -733,6 +733,16 @@ public class DesignerCoreService implements IDesignerCoreService {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getHBaseOrMaprDBScanLimit() {
|
||||
final IPreferenceStore preferenceStore = DesignerPlugin.getDefault().getPreferenceStore();
|
||||
if (preferenceStore != null) {
|
||||
return preferenceStore.getInt(ITalendCorePrefConstants.HBASE_OR_MAPRDB_SCAN_LIMIT);
|
||||
}
|
||||
// disable
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
|
||||
@@ -12,12 +12,14 @@
|
||||
// ============================================================================
|
||||
package org.talend.designer.core;
|
||||
|
||||
import org.eclipse.jface.action.IAction;
|
||||
import org.talend.commons.exception.PersistenceException;
|
||||
import org.talend.core.IService;
|
||||
import org.talend.core.model.properties.ProcessItem;
|
||||
import org.talend.core.model.properties.Property;
|
||||
import org.talend.designer.core.ui.editor.ProcessEditorInput;
|
||||
import org.talend.designer.core.ui.editor.process.Process;
|
||||
import org.talend.repository.model.RepositoryNode;
|
||||
|
||||
/**
|
||||
* DOC talend class global comment. Detailled comment
|
||||
@@ -28,6 +30,8 @@ public interface ICreateMRProcessService extends IService {
|
||||
|
||||
public ProcessEditorInput getMRProcessEditorInput(ProcessItem processItem, boolean load) throws PersistenceException;
|
||||
|
||||
public ProcessEditorInput getMRProcessEditorInput(ProcessItem processItem, boolean load, boolean lastVersion, boolean readOnly)
|
||||
throws PersistenceException;
|
||||
public ProcessEditorInput getMRProcessEditorInput(ProcessItem processItem, boolean load, boolean lastVersion,
|
||||
boolean readOnly) throws PersistenceException;
|
||||
|
||||
public IAction getEditProcessAction(RepositoryNode result);
|
||||
}
|
||||
|
||||
@@ -12,12 +12,14 @@
|
||||
// ============================================================================
|
||||
package org.talend.designer.core;
|
||||
|
||||
import org.eclipse.jface.action.IAction;
|
||||
import org.talend.commons.exception.PersistenceException;
|
||||
import org.talend.core.IService;
|
||||
import org.talend.core.model.properties.ProcessItem;
|
||||
import org.talend.core.model.properties.Property;
|
||||
import org.talend.designer.core.ui.editor.ProcessEditorInput;
|
||||
import org.talend.designer.core.ui.editor.process.Process;
|
||||
import org.talend.repository.model.RepositoryNode;
|
||||
|
||||
/**
|
||||
* DOC zwzhao class global comment. Detailled comment
|
||||
@@ -34,4 +36,6 @@ public interface ICreateStormProcessService extends IService {
|
||||
|
||||
public ProcessEditorInput getStromProcessEditorInput(ProcessItem processItem, boolean load, boolean lastVersion,
|
||||
boolean readOnly) throws PersistenceException;
|
||||
|
||||
public IAction getEditProcessAction(RepositoryNode result);
|
||||
}
|
||||
|
||||
@@ -161,4 +161,9 @@ public abstract class AbstractComponent implements IComponent {
|
||||
public boolean isAllowedPropagated() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOriginalName(){
|
||||
return getName();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -434,17 +434,19 @@ public class ConnectionManager {
|
||||
String connectorName, String connectionName) {
|
||||
|
||||
newlineStyle = lineStyle;
|
||||
boolean isMainConn = lineStyle==EConnectionType.FLOW_MAIN ;
|
||||
if (source.equals(newTarget)) {
|
||||
return false;
|
||||
}
|
||||
if ((source.getDesignSubjobStartNode().getOutgoingConnections(EConnectionType.ON_SUBJOB_OK).size() != 0 || source
|
||||
.getDesignSubjobStartNode().getOutgoingConnections(EConnectionType.ON_SUBJOB_ERROR).size() != 0)
|
||||
&& !newTarget.checkIfCanBeStart() && !((Node) newTarget).isJoblet()) {
|
||||
final INode designSubjobStartNode = source.getDesignSubjobStartNode();
|
||||
if ((designSubjobStartNode.getOutgoingConnections(EConnectionType.ON_SUBJOB_OK).size() != 0 ||
|
||||
designSubjobStartNode.getOutgoingConnections(EConnectionType.ON_SUBJOB_ERROR).size() != 0)
|
||||
&& !newTarget.checkIfCanBeStart() && isMainConn && !((Node) newTarget).isJoblet()) {
|
||||
return false;
|
||||
}
|
||||
if ((source.getDesignSubjobStartNode().getIncomingConnections(EConnectionType.ON_SUBJOB_OK).size() != 0 || source
|
||||
.getDesignSubjobStartNode().getIncomingConnections(EConnectionType.ON_SUBJOB_ERROR).size() != 0)
|
||||
&& !newTarget.checkIfCanBeStart() && !((Node) newTarget).isJoblet()) {
|
||||
if ((designSubjobStartNode.getIncomingConnections(EConnectionType.ON_SUBJOB_OK).size() != 0 ||
|
||||
designSubjobStartNode.getIncomingConnections(EConnectionType.ON_SUBJOB_ERROR).size() != 0)
|
||||
&& !newTarget.checkIfCanBeStart() && isMainConn && !((Node) newTarget).isJoblet()) {
|
||||
return false;
|
||||
}
|
||||
if (newTarget.getJobletNode() != null) {
|
||||
|
||||
@@ -216,6 +216,11 @@ public class JobContextLoadComponent implements IComponent {
|
||||
return this.getClass().getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOriginalName(){
|
||||
return getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOriginalFamilyName() {
|
||||
return "Virtual"; //$NON-NLS-1$
|
||||
|
||||
@@ -132,6 +132,11 @@ public abstract class AbstractStatsLogsComponent implements IComponent {
|
||||
return this.getClass().getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOriginalName(){
|
||||
return getName();
|
||||
}
|
||||
|
||||
// no use for virtual component
|
||||
@Override
|
||||
public String getPathSource() {
|
||||
|
||||
@@ -20,7 +20,9 @@ import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.eclipse.jface.preference.IPreferenceStore;
|
||||
import org.talend.core.database.EDatabaseTypeName;
|
||||
import org.talend.core.database.conn.DatabaseConnStrUtil;
|
||||
import org.talend.core.language.ECodeLanguage;
|
||||
import org.talend.core.language.LanguageManager;
|
||||
@@ -551,6 +553,15 @@ public class StatsAndLogsManager {
|
||||
|
||||
private static void setConnectionParameter(DataNode connectionNode, IProcess process, String connectionUID,
|
||||
DataNode dataNode, List<DataNode> nodeList) {
|
||||
// db type
|
||||
String dbType = null;
|
||||
IElementParameter dbTypeParameter = connectionNode.getElementParameter("TYPE");//$NON-NLS-1$
|
||||
if (dbTypeParameter != null) {
|
||||
Object dbTypeObj = dbTypeParameter.getValue();
|
||||
if (dbTypeObj != null) {
|
||||
dbType = dbTypeObj.toString();
|
||||
}
|
||||
}
|
||||
if (connectionNode.getElementParameter(EParameterName.HOST.getName()) != null) {
|
||||
connectionNode.getElementParameter(EParameterName.HOST.getName()).setValue(
|
||||
process.getElementParameter(EParameterName.HOST.getName()).getValue());
|
||||
@@ -619,6 +630,12 @@ public class StatsAndLogsManager {
|
||||
connectionNode.getElementParameter(EParameterName.DB_VERSION.getName()).setValue(
|
||||
process.getElementParameter(EParameterName.DB_VERSION.getName()).getValue());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(dbType) && EDatabaseTypeName.MSSQL.getXmlName().equalsIgnoreCase(dbType)) {
|
||||
if (connectionNode.getElementParameter("DRIVER") != null) {//$NON-NLS-1$
|
||||
connectionNode.getElementParameter("DRIVER") //$NON-NLS-1$
|
||||
.setValue(process.getElementParameter(EParameterName.DB_VERSION.getName()).getValue());
|
||||
}
|
||||
}
|
||||
if (connectionNode.getElementParameter(EParameterName.PROPERTIES.getName()) != null) {
|
||||
connectionNode.getElementParameter(EParameterName.PROPERTIES.getName()).setValue(
|
||||
process.getElementParameter(EParameterName.PROPERTIES.getName()).getValue());
|
||||
|
||||
@@ -18,7 +18,6 @@ import java.util.List;
|
||||
import org.eclipse.jface.action.Action;
|
||||
import org.eclipse.jface.action.IAction;
|
||||
import org.eclipse.jface.viewers.ISelection;
|
||||
import org.eclipse.jface.viewers.StructuredSelection;
|
||||
import org.eclipse.swt.widgets.Event;
|
||||
import org.eclipse.ui.IActionDelegate2;
|
||||
import org.eclipse.ui.IWorkbenchWindow;
|
||||
@@ -26,6 +25,7 @@ import org.eclipse.ui.IWorkbenchWindowActionDelegate;
|
||||
import org.talend.core.PluginChecker;
|
||||
import org.talend.core.model.repository.ERepositoryObjectType;
|
||||
import org.talend.designer.core.i18n.Messages;
|
||||
import org.talend.designer.core.utils.DesignerUtilities;
|
||||
import org.talend.repository.ui.dialog.OpenJobSelectionDialog;
|
||||
import org.talend.repository.ui.dialog.RepositoryReviewDialog;
|
||||
|
||||
@@ -52,20 +52,10 @@ public class OpenJobAction extends Action implements IWorkbenchWindowActionDeleg
|
||||
final OpenJobSelectionDialog dialog = new OpenJobSelectionDialog(window.getShell(), repObjectTypes);
|
||||
|
||||
if (dialog.open() == RepositoryReviewDialog.OK) {
|
||||
EditProcess editProcess = new EditProcess() {
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see org.talend.repository.ui.actions.AContextualAction#getSelection()
|
||||
*/
|
||||
@Override
|
||||
public ISelection getSelection() {
|
||||
return new StructuredSelection(dialog.getResult());
|
||||
}
|
||||
|
||||
};
|
||||
editProcess.run();
|
||||
IAction action = DesignerUtilities.getEditProcessAction(dialog.getResult());
|
||||
if (action != null) {
|
||||
action.run();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.talend.designer.core.i18n.Messages;
|
||||
import org.talend.designer.core.model.components.EParameterName;
|
||||
import org.talend.designer.core.ui.editor.process.Process;
|
||||
import org.talend.designer.core.ui.editor.properties.controllers.ConnectionListController;
|
||||
import org.talend.designer.core.utils.UpgradeElementHelper;
|
||||
|
||||
/**
|
||||
* Command that change the label of a connection. <br/>
|
||||
@@ -86,6 +87,9 @@ public class ChangeConnTextCommand extends Command {
|
||||
if (externalNode != null) {
|
||||
externalNode.renameOutputConnection(oldName, newName);
|
||||
}
|
||||
|
||||
UpgradeElementHelper.renameData(connection.getTarget(), oldName, newName);
|
||||
|
||||
((Process) connection.getSource().getProcess()).checkProcess();
|
||||
}
|
||||
|
||||
@@ -120,6 +124,8 @@ public class ChangeConnTextCommand extends Command {
|
||||
if (externalNode != null) {
|
||||
externalNode.renameOutputConnection(newName, oldName);
|
||||
}
|
||||
UpgradeElementHelper.renameData(connection.getTarget(), newName, oldName);
|
||||
|
||||
((Process) connection.getSource().getProcess()).checkProcess();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
package org.talend.designer.core.ui.editor.cmd;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
import org.eclipse.gef.commands.Command;
|
||||
@@ -61,17 +63,31 @@ public class ChangeOutputConnectionOrderCommand extends Command {
|
||||
*/
|
||||
@Override
|
||||
public void execute() {
|
||||
List<IMetadataTable> metadataList = new ArrayList<IMetadataTable>();
|
||||
List<IMetadataTable> connectionMetadatas = new ArrayList<IMetadataTable>();
|
||||
for (IConnection connection : connectionInNewOrder) {
|
||||
if (connection.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)) {
|
||||
if (!metadataList.contains(connection.getMetadataTable())) {
|
||||
metadataList.add(connection.getMetadataTable());
|
||||
if (!connectionMetadatas.contains(connection.getMetadataTable())) {
|
||||
connectionMetadatas.add(connection.getMetadataTable());
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!metadataList.isEmpty()) {
|
||||
multipleOutputNode.setMetadataList(metadataList);
|
||||
}
|
||||
List<IMetadataTable> metadataList = multipleOutputNode.getMetadataList();
|
||||
Collections.sort(metadataList, new Comparator<IMetadataTable>() {
|
||||
|
||||
@Override
|
||||
public int compare(IMetadataTable o1, IMetadataTable o2) {
|
||||
int index1 = connectionMetadatas.indexOf(o1);
|
||||
if (index1 == -1) {
|
||||
index1 = 0;
|
||||
}
|
||||
int index2 = connectionMetadatas.indexOf(o2);
|
||||
if (index2 == -1) {
|
||||
index2 = 0;
|
||||
}
|
||||
return index1 - index2;
|
||||
}
|
||||
});
|
||||
|
||||
multipleOutputNode.setOutgoingConnections(connectionInNewOrder);
|
||||
connectionInNewOrder.get(0).updateAllId();
|
||||
((Process) multipleOutputNode.getProcess()).checkStartNodes();
|
||||
@@ -85,18 +101,31 @@ public class ChangeOutputConnectionOrderCommand extends Command {
|
||||
*/
|
||||
@Override
|
||||
public void undo() {
|
||||
List<IMetadataTable> metadataList = new ArrayList<IMetadataTable>();
|
||||
// if (hasBuiltInConnector) {
|
||||
List<IMetadataTable> connectionMetadatas = new ArrayList<IMetadataTable>();
|
||||
for (IConnection connection : connectionInOldOrder) {
|
||||
if (connection.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)) {
|
||||
if (!metadataList.contains(connection.getMetadataTable())) {
|
||||
metadataList.add(connection.getMetadataTable());
|
||||
if (!connectionMetadatas.contains(connection.getMetadataTable())) {
|
||||
connectionMetadatas.add(connection.getMetadataTable());
|
||||
}
|
||||
}
|
||||
}
|
||||
// }
|
||||
|
||||
multipleOutputNode.setMetadataList(metadataList);
|
||||
List<IMetadataTable> metadataList = multipleOutputNode.getMetadataList();
|
||||
Collections.sort(metadataList, new Comparator<IMetadataTable>() {
|
||||
|
||||
@Override
|
||||
public int compare(IMetadataTable o1, IMetadataTable o2) {
|
||||
int index1 = connectionMetadatas.indexOf(o1);
|
||||
if (index1 == -1) {
|
||||
index1 = 0;
|
||||
}
|
||||
int index2 = connectionMetadatas.indexOf(o2);
|
||||
if (index2 == -1) {
|
||||
index2 = 0;
|
||||
}
|
||||
return index1 - index2;
|
||||
}
|
||||
});
|
||||
|
||||
multipleOutputNode.setOutgoingConnections(connectionInOldOrder);
|
||||
connectionInOldOrder.get(0).updateAllId();
|
||||
|
||||
@@ -273,13 +273,18 @@ public class PropertyChangeCommand extends Command {
|
||||
}
|
||||
List<? extends IConnection> connections = ((Node) elem).getOutgoingConnections();
|
||||
for (IConnection connection : connections) {
|
||||
if (!connection.getName().equals(oldELTValue)) {
|
||||
// do nothing when custom connection name.
|
||||
continue;
|
||||
}
|
||||
INode targetNode = connection.getTarget();
|
||||
String componentName = targetNode.getComponent().getName();
|
||||
if (componentName.matches("tELT.+Map")) { //$NON-NLS-1$
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IDbMapDesignerService.class)) {
|
||||
IDbMapDesignerService service = (IDbMapDesignerService) GlobalServiceRegister.getDefault()
|
||||
.getService(IDbMapDesignerService.class);
|
||||
updateELTMapComponentCommand = service.getUpdateELTMapComponentCommand(targetNode, connection, oldELTValue, newELTValue);
|
||||
IDbMapDesignerService service = (IDbMapDesignerService) GlobalServiceRegister.getDefault().getService(
|
||||
IDbMapDesignerService.class);
|
||||
updateELTMapComponentCommand = service.getUpdateELTMapComponentCommand(targetNode, connection,
|
||||
oldELTValue, newELTValue);
|
||||
updateELTMapComponentCommand.execute();
|
||||
}
|
||||
}
|
||||
@@ -449,7 +454,10 @@ public class PropertyChangeCommand extends Command {
|
||||
if (currentParam.getName().equals(EParameterName.PROCESS_TYPE_PROCESS.getName())) {
|
||||
toUpdate = true;
|
||||
}
|
||||
|
||||
// TUP-18405, need update module list
|
||||
if (currentParam.getFieldType() == EParameterFieldType.MODULE_LIST) {
|
||||
toUpdate = true;
|
||||
}
|
||||
if (toUpdate) {
|
||||
elem.setPropertyValue(updataComponentParamName, Boolean.TRUE);
|
||||
}
|
||||
|
||||
@@ -86,6 +86,17 @@ public class JobletUtil {
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isJoblet(NodeType node){
|
||||
EList listParamType = node.getElementParameter();
|
||||
for(Object o : listParamType){
|
||||
ElementParameterType ele = ((ElementParameterType)o);
|
||||
if(ele.getName()!=null && ele.getName().equals(EParameterName.FAMILY.getName()) && ele.getValue()!=null){
|
||||
return ele.getValue().equals(IComponent.JOBLET_FAMILY);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public List<INodeConnector> createConnectors(INode node, IProcess2 process) {
|
||||
List<INodeConnector> listConnector = new ArrayList<INodeConnector>();
|
||||
if (process == null) {
|
||||
@@ -846,17 +857,7 @@ public class JobletUtil {
|
||||
if(expression == null){
|
||||
return false;
|
||||
}
|
||||
Perl5Matcher matcher = new Perl5Matcher();
|
||||
Perl5Compiler compiler = new Perl5Compiler();
|
||||
|
||||
Pattern pattern = null;
|
||||
try {
|
||||
pattern = compiler.compile("[0-9a-zA-Z_]{1,}:[0-9a-zA-Z_]{1,}"); //$NON-NLS-1$
|
||||
} catch (MalformedPatternException e) {
|
||||
CommonExceptionHandler.process(e);
|
||||
}
|
||||
|
||||
if (matcher.matches(expression, pattern)) {
|
||||
if(expression.contains(":")){//$NON-NLS-1$
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
||||
@@ -3622,7 +3622,7 @@ public class Node extends Element implements IGraphicalNode {
|
||||
if (currentNode.getIncomingConnections().size() > 1) {
|
||||
List<INode> nodeList = new ArrayList<INode>();
|
||||
Set<INode> nodeSet = new HashSet<INode>();
|
||||
getAllSourceNode(currentNode, nodeList);
|
||||
getAllMainConnSourceNode(currentNode, nodeList);
|
||||
for (INode node : nodeList) {
|
||||
nodeSet.add(node);
|
||||
}
|
||||
@@ -3631,12 +3631,15 @@ public class Node extends Element implements IGraphicalNode {
|
||||
return false;
|
||||
}
|
||||
|
||||
private static void getAllSourceNode(INode source, List<INode> list) {
|
||||
private static void getAllMainConnSourceNode(INode source, List<INode> list) {
|
||||
List<? extends IConnection> connections = source.getIncomingConnections();
|
||||
for (IConnection connection : connections) {
|
||||
if(connection.getLineStyle() != EConnectionType.FLOW_MAIN){
|
||||
continue;
|
||||
}
|
||||
INode node = connection.getSource();
|
||||
list.add(node);
|
||||
getAllSourceNode(node, list);
|
||||
getAllMainConnSourceNode(node, list);
|
||||
}
|
||||
}
|
||||
public boolean isSchemaSynchronized() {
|
||||
|
||||
@@ -2212,16 +2212,20 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
|
||||
if(!unloadedNode.isEmpty()){
|
||||
List<NodeType> tempNodes = new ArrayList<NodeType>(unloadedNode);
|
||||
JobletUtil jobletUtil = new JobletUtil();
|
||||
for(NodeType unNode:tempNodes){
|
||||
listParamType = unNode.getElementParameter();
|
||||
String componentName = unNode.getComponentName();
|
||||
if(!isCurrentProject && !componentName.contains(":")){
|
||||
componentName = ProjectManager.getInstance().getProject(this.getProperty()).getLabel() +":"+componentName; //$NON-NLS-1$
|
||||
}else if(new JobletUtil().matchExpression(componentName)){
|
||||
}else if(jobletUtil.matchExpression(componentName)){
|
||||
String[] names = componentName.split(":"); //$NON-NLS-1$
|
||||
componentName = names[1];
|
||||
}
|
||||
IComponent component = ComponentsFactoryProvider.getInstance().get(componentName, componentsType);
|
||||
if(component == null && jobletUtil.isJoblet(unNode)){
|
||||
component = ComponentsFactoryProvider.getInstance().getJobletComponent(componentName, componentsType);
|
||||
}
|
||||
if(component!=null){
|
||||
unloadedNode.remove(unNode);
|
||||
nc = loadNode(unNode, component, nodesHashtable, listParamType);
|
||||
@@ -3163,7 +3167,7 @@ public class Process extends Element implements IProcess2, IGEFProcess, ILastVer
|
||||
}
|
||||
|
||||
public String generateUniqueNodeName(INode node) {
|
||||
String baseName = node.getComponent().getName();
|
||||
String baseName = node.getComponent().getOriginalName();
|
||||
return UniqueNodeNameGenerator.generateUniqueNodeName(baseName, uniqueNodeNameList);
|
||||
}
|
||||
|
||||
|
||||
@@ -1478,12 +1478,16 @@ public abstract class AbstractElementPropertySectionController implements Proper
|
||||
|
||||
String driverClass = getValueFromRepositoryName(element, EConnectionParameterName.DRIVER_CLASS.getName(),
|
||||
basePropertyParameter);
|
||||
String dbVersion = getValueFromRepositoryName(element, "DB_VERSION", basePropertyParameter);
|
||||
if (EDatabaseVersion4Drivers.VERTICA_5_1.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_6.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_6_1_X.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_7.getVersionValue().equals(dbVersion)) {
|
||||
connParameters.setDbVersion(dbVersion);
|
||||
String driverName = getValueFromRepositoryName(element, "DB_VERSION", basePropertyParameter); //$NON-NLS-1$
|
||||
if (StringUtils.isBlank(driverName) && EDatabaseTypeName.MSSQL.getDisplayName().equals(connParameters.getDbType())) {
|
||||
driverName = getValueFromRepositoryName(element, "DRIVER", basePropertyParameter); //$NON-NLS-1$
|
||||
}
|
||||
String dbVersionName = EDatabaseVersion4Drivers.getDbVersionName(type, driverName);
|
||||
connParameters.setDbVersion(dbVersionName);
|
||||
if (EDatabaseVersion4Drivers.VERTICA_5_1.getVersionValue().equals(dbVersionName)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_6.getVersionValue().equals(dbVersionName)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_6_1_X.getVersionValue().equals(dbVersionName)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_7.getVersionValue().equals(dbVersionName)) {
|
||||
driverClass = EDatabase4DriverClassName.VERTICA2.getDriverClass();
|
||||
}
|
||||
|
||||
|
||||
@@ -203,8 +203,11 @@ public class ComponentListController extends AbstractElementPropertySectionContr
|
||||
for (Node curNode : nodesToUpdate) {
|
||||
for (IElementParameter curParam : curNode.getElementParameters()) {
|
||||
if (curParam.getFieldType().equals(EParameterFieldType.COMPONENT_LIST)) {
|
||||
String value = (String)curParam.getValue();
|
||||
if (oldConnectionName.equals(curParam.getValue())) {
|
||||
curParam.setValue(newConnectionName);
|
||||
} else if (value != null && value.startsWith(oldConnectionName + "_")) {
|
||||
curParam.setValue(value.replaceFirst(oldConnectionName + "_", newConnectionName + "_"));
|
||||
}
|
||||
} else if (curParam.getFieldType().equals(EParameterFieldType.TABLE)) {
|
||||
final Object[] itemsValue = curParam.getListItemsValue();
|
||||
@@ -220,6 +223,8 @@ public class ComponentListController extends AbstractElementPropertySectionContr
|
||||
if (connectionName.equals(oldConnectionName)) {
|
||||
// note: change from "Integer" value stored to "String" value
|
||||
curLine.put(param.getName(), newConnectionName);
|
||||
}else if (connectionName != null && connectionName.startsWith(oldConnectionName + "_")) {
|
||||
curParam.setValue(connectionName.replaceFirst(oldConnectionName + "_", newConnectionName + "_"));
|
||||
}
|
||||
} else if (value instanceof String) {
|
||||
curLine.put(param.getName(), newConnectionName);
|
||||
|
||||
@@ -244,15 +244,18 @@ public class DbInfo {
|
||||
} else {
|
||||
driverClassName = EDatabase4DriverClassName.HIVE.getDriverClass();
|
||||
}
|
||||
}
|
||||
driverClassName = ExtractMetaDataUtils.getInstance().getDriverClassByDbType(dbType);
|
||||
if (dbType.equals(EDatabaseTypeName.VERTICA.getXmlName())) {
|
||||
} else if (dbType.equals(EDatabaseTypeName.VERTICA.getXmlName())) {
|
||||
if (EDatabaseVersion4Drivers.VERTICA_6.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_5_1.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_6_1_X.getVersionValue().equals(dbVersion)
|
||||
|| EDatabaseVersion4Drivers.VERTICA_7.getVersionValue().equals(dbVersion)) {
|
||||
driverClassName = EDatabase4DriverClassName.VERTICA2.getDriverClass();
|
||||
}
|
||||
} else if (EDatabaseTypeName.MSSQL.getDisplayName().equals(dbType)
|
||||
&& EDatabaseVersion4Drivers.MSSQL_PROP.getVersionValue().equals(dbVersion)) {
|
||||
driverClassName = EDatabase4DriverClassName.MSSQL2.getDriverClass();
|
||||
} else {
|
||||
driverClassName = ExtractMetaDataUtils.getInstance().getDriverClassByDbType(dbType);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ package org.talend.designer.core.ui.editor.properties.controllers;
|
||||
|
||||
import java.beans.PropertyChangeEvent;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.eclipse.core.runtime.Path;
|
||||
import org.eclipse.gef.commands.Command;
|
||||
import org.eclipse.jface.fieldassist.DecoratedField;
|
||||
@@ -84,18 +85,15 @@ public class DirectoryController extends AbstractElementPropertySectionControlle
|
||||
String propertyName = (String) btn.getData(PARAMETER_NAME);
|
||||
Text dirPathText = (Text) hashCurControls.get(propertyName);
|
||||
String directory = dial.open();
|
||||
if (directory != null) {
|
||||
if (!directory.equals("")) { //$NON-NLS-1$
|
||||
if (!elem.getPropertyValue(propertyName).equals(directory)) {
|
||||
String portableValue = Path.fromOSString(directory).toPortableString();
|
||||
dirPathText.setText(TalendTextUtils.addQuotes(portableValue));
|
||||
return new PropertyChangeCommand(elem, propertyName, TalendTextUtils.addQuotes(portableValue));
|
||||
|
||||
}
|
||||
if (StringUtils.isNotBlank(directory) && !directory.equals(elem.getPropertyValue(propertyName))) {
|
||||
String portableValue = Path.fromOSString(directory).toPortableString();
|
||||
if (!isInWizard()) {
|
||||
portableValue = TalendTextUtils.addQuotes(portableValue);
|
||||
}
|
||||
dirPathText.setText(portableValue);
|
||||
return new PropertyChangeCommand(elem, propertyName, portableValue);
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -203,9 +201,8 @@ public class DirectoryController extends AbstractElementPropertySectionControlle
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController#estimateRowSize
|
||||
* (org.eclipse.swt.widgets.Composite, org.talend.core.model.process.IElementParameter)
|
||||
* @see org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController#
|
||||
* estimateRowSize (org.eclipse.swt.widgets.Composite, org.talend.core.model.process.IElementParameter)
|
||||
*/
|
||||
@Override
|
||||
public int estimateRowSize(Composite subComposite, IElementParameter param) {
|
||||
|
||||
@@ -26,9 +26,9 @@ import org.eclipse.gef.commands.Command;
|
||||
import org.eclipse.jface.fieldassist.DecoratedField;
|
||||
import org.eclipse.jface.fieldassist.FieldDecoration;
|
||||
import org.eclipse.jface.fieldassist.FieldDecorationRegistry;
|
||||
import org.eclipse.jface.fieldassist.IControlCreator;
|
||||
import org.eclipse.jface.fieldassist.TextControlCreator;
|
||||
import org.eclipse.jface.window.Window;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.custom.CCombo;
|
||||
import org.eclipse.swt.custom.CLabel;
|
||||
import org.eclipse.swt.events.SelectionAdapter;
|
||||
import org.eclipse.swt.events.SelectionEvent;
|
||||
@@ -41,11 +41,10 @@ import org.eclipse.swt.widgets.Button;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Control;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
import org.eclipse.swt.widgets.FileDialog;
|
||||
import org.eclipse.swt.widgets.Text;
|
||||
import org.eclipse.ui.views.properties.tabbed.ITabbedPropertyConstants;
|
||||
import org.talend.commons.ui.runtime.exception.ExceptionHandler;
|
||||
import org.talend.commons.ui.runtime.image.ImageProvider;
|
||||
import org.talend.commons.utils.io.FilesUtils;
|
||||
import org.talend.core.CorePlugin;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.ILibraryManagerService;
|
||||
@@ -61,6 +60,8 @@ import org.talend.designer.core.ui.dialog.BrmsDialog;
|
||||
import org.talend.designer.core.ui.dialog.IBrmsExtension;
|
||||
import org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand;
|
||||
import org.talend.designer.core.ui.editor.nodes.Node;
|
||||
import org.talend.designer.core.ui.editor.properties.controllers.creator.SelectAllTextControlCreator;
|
||||
import org.talend.designer.core.ui.editor.properties.controllers.uidialog.InstallModuleDialog;
|
||||
|
||||
/**
|
||||
* DOC yzhang class global comment. Detailled comment <br/>
|
||||
@@ -105,10 +106,10 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
|
||||
// update the combo current value
|
||||
CCombo combo = (CCombo) hashCurControls.get(propertyName);
|
||||
if (combo != null && !combo.isDisposed()) {
|
||||
combo.setText(Path.fromOSString(file).lastSegment());
|
||||
// update the text current value
|
||||
Text text = (Text) hashCurControls.get(propertyName);
|
||||
if (text != null && !text.isDisposed()) {
|
||||
text.setText(Path.fromOSString(file).lastSegment());
|
||||
}
|
||||
return new PropertyChangeCommand(elem, propertyName, lastSegment);
|
||||
}
|
||||
@@ -119,27 +120,25 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
|
||||
}
|
||||
} else {
|
||||
FileDialog dial = new FileDialog(composite.getShell(), SWT.NONE);
|
||||
dial.setFilterExtensions(FilesUtils.getAcceptJARFilesSuffix());
|
||||
String file = dial.open();
|
||||
if (file != null && !file.equals("")) { //$NON-NLS-1$
|
||||
String propertyName = (String) button.getData(PARAMETER_NAME);
|
||||
String lastSegment = TalendTextUtils.addQuotes(Path.fromOSString(file).lastSegment());
|
||||
String propertyName = (String) button.getData(PARAMETER_NAME);
|
||||
Object value = elem.getPropertyValue(propertyName);
|
||||
String initValue = value == null ? "" : TalendTextUtils.removeQuotes(value.toString());
|
||||
InstallModuleDialog dial = new InstallModuleDialog(composite.getShell(), initValue);
|
||||
if (Window.OK == dial.open()) {
|
||||
String file = dial.getResult();
|
||||
if (file != null && !file.equals("")) { //$NON-NLS-1$
|
||||
String lastSegment = TalendTextUtils.addQuotes(Path.fromOSString(file).lastSegment());
|
||||
|
||||
try {
|
||||
CorePlugin.getDefault().getLibrariesService().deployLibrary(Path.fromOSString(file).toFile().toURL());
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
if (!elem.getPropertyValue(propertyName).equals(lastSegment)) {
|
||||
if (!elem.getPropertyValue(propertyName).equals(lastSegment)) {
|
||||
|
||||
// update the combo current value
|
||||
CCombo combo = (CCombo) hashCurControls.get(propertyName);
|
||||
if (combo != null && !combo.isDisposed()) {
|
||||
combo.setText(Path.fromOSString(file).lastSegment());
|
||||
// update the text current value
|
||||
Text text = (Text) hashCurControls.get(propertyName);
|
||||
if (text != null && !text.isDisposed()) {
|
||||
text.setText(Path.fromOSString(file).lastSegment());
|
||||
}
|
||||
|
||||
return new PropertyChangeCommand(elem, propertyName, lastSegment);
|
||||
}
|
||||
|
||||
return new PropertyChangeCommand(elem, propertyName, lastSegment);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -147,60 +146,6 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
return null;
|
||||
}
|
||||
|
||||
public Command createCommand(SelectionEvent selectionEvent) {
|
||||
Set<String> elementsName;
|
||||
Control ctrl;
|
||||
elementsName = hashCurControls.keySet();
|
||||
for (String name : elementsName) {
|
||||
Object o = hashCurControls.get(name);
|
||||
if (o instanceof Control) {
|
||||
ctrl = (Control) o;
|
||||
if (ctrl == null) {
|
||||
hashCurControls.remove(name);
|
||||
return null;
|
||||
}
|
||||
|
||||
if (ctrl.equals(selectionEvent.getSource()) && ctrl instanceof CCombo) {
|
||||
boolean isDisposed = ((CCombo) ctrl).isDisposed();
|
||||
if (!isDisposed && (!elem.getPropertyValue(name).equals(((CCombo) ctrl).getText()))) {
|
||||
|
||||
String value = new String(""); //$NON-NLS-1$
|
||||
for (int i = 0; i < elem.getElementParameters().size(); i++) {
|
||||
IElementParameter param = elem.getElementParameters().get(i);
|
||||
if (param.getName().equals(name)) {
|
||||
for (int j = 0; j < param.getListItemsValue().length; j++) {
|
||||
if (((CCombo) ctrl).getText().equals(param.getListItemsDisplayName()[j])) {
|
||||
value = (String) param.getListItemsValue()[j];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (value.equals(elem.getPropertyValue(name))) { // same
|
||||
// value so
|
||||
// no
|
||||
// need to do
|
||||
// anything
|
||||
return null;
|
||||
}
|
||||
CorePlugin.getDefault().getLibrariesService().resetModulesNeeded();
|
||||
return new PropertyChangeCommand(elem, name, value);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
IControlCreator cbCtrl = new IControlCreator() {
|
||||
|
||||
@Override
|
||||
public Control createControl(final Composite parent, final int style) {
|
||||
CCombo cb = new CCombo(parent, style);
|
||||
return cb;
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
@@ -216,7 +161,7 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
}
|
||||
}
|
||||
|
||||
DecoratedField dField = new DecoratedField(subComposite, SWT.BORDER, cbCtrl);
|
||||
final DecoratedField dField = new DecoratedField(subComposite, SWT.BORDER, new SelectAllTextControlCreator());
|
||||
if (param.isRequired()) {
|
||||
FieldDecoration decoration = FieldDecorationRegistry.getDefault().getFieldDecoration(
|
||||
FieldDecorationRegistry.DEC_REQUIRED);
|
||||
@@ -224,14 +169,13 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
}
|
||||
|
||||
Control cLayout = dField.getLayoutControl();
|
||||
CCombo combo = (CCombo) dField.getControl();
|
||||
Text text = (Text) dField.getControl();
|
||||
|
||||
combo.setEditable(false);
|
||||
text.setEditable(false);
|
||||
cLayout.setBackground(subComposite.getBackground());
|
||||
combo.setEnabled(!param.isReadOnly());
|
||||
combo.addSelectionListener(listenerSelection);
|
||||
text.setEnabled(!param.isReadOnly());
|
||||
if (elem instanceof Node) {
|
||||
combo.setToolTipText(VARIABLE_TOOLTIP + param.getVariableName());
|
||||
text.setToolTipText(VARIABLE_TOOLTIP + param.getVariableName());
|
||||
}
|
||||
|
||||
CLabel labelLabel = getWidgetFactory().createCLabel(subComposite, param.getDisplayName());
|
||||
@@ -267,6 +211,7 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
} else {
|
||||
data.left = new FormAttachment(labelLabel, 0, SWT.RIGHT);
|
||||
}
|
||||
data.right = new FormAttachment(labelLabel, STANDARD_LABEL_WIDTH * 3, SWT.RIGHT);
|
||||
data.top = new FormAttachment(0, top);
|
||||
cLayout.setLayoutData(data);
|
||||
Point initialSize = dField.getLayoutControl().computeSize(SWT.DEFAULT, SWT.DEFAULT);
|
||||
@@ -286,7 +231,7 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
btnEdit.addSelectionListener(listenerSelection);
|
||||
|
||||
// **********************
|
||||
hashCurControls.put(param.getName(), combo);
|
||||
hashCurControls.put(param.getName(), text);
|
||||
hashCurControls.put(param.getName() + BUTTON_EDIT, btnEdit);
|
||||
updateData();
|
||||
// this.dynamicTabbedPropertySection.updateColumnList(null);
|
||||
@@ -304,7 +249,7 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
*/
|
||||
@Override
|
||||
public int estimateRowSize(Composite subComposite, IElementParameter param) {
|
||||
DecoratedField dField = new DecoratedField(subComposite, SWT.BORDER, cbCtrl);
|
||||
DecoratedField dField = new DecoratedField(subComposite, SWT.BORDER, new TextControlCreator());
|
||||
Point initialSize = dField.getLayoutControl().computeSize(SWT.DEFAULT, SWT.DEFAULT);
|
||||
dField.getLayoutControl().dispose();
|
||||
|
||||
@@ -380,34 +325,28 @@ public class ModuleListController extends AbstractElementPropertySectionControll
|
||||
if (event.getSource() instanceof Button) {
|
||||
Command cmd = createCommand((Button) event.getSource());
|
||||
executeCommand(cmd);
|
||||
} else {
|
||||
Command cmd = createCommand(event);
|
||||
executeCommand(cmd);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public void refresh(IElementParameter param, boolean check) {
|
||||
CCombo combo = (CCombo) hashCurControls.get(param.getName());
|
||||
if (combo == null || combo.isDisposed()) {
|
||||
Text text = (Text) hashCurControls.get(param.getName());
|
||||
if (text == null || text.isDisposed()) {
|
||||
return;
|
||||
}
|
||||
updateData();
|
||||
|
||||
String[] curNameList = param.getListItemsDisplayName();
|
||||
|
||||
Object value = param.getValue();
|
||||
|
||||
combo.setItems(curNameList);
|
||||
if (value instanceof String) {
|
||||
combo.setText(TalendTextUtils.removeQuotes((String) value));
|
||||
text.setText(TalendTextUtils.removeQuotes((String) value));
|
||||
}
|
||||
|
||||
if (param.isContextMode()) {
|
||||
Button buttonEdit = (Button) hashCurControls.get(param.getName() + BUTTON_EDIT);
|
||||
combo.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
|
||||
combo.setEnabled(false);
|
||||
text.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
|
||||
text.setEnabled(false);
|
||||
buttonEdit.setEnabled(false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,490 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2017 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.designer.core.ui.editor.properties.controllers.uidialog;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
import org.eclipse.core.resources.ResourcesPlugin;
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.core.runtime.NullProgressMonitor;
|
||||
import org.eclipse.core.runtime.Path;
|
||||
import org.eclipse.jface.dialogs.IDialogConstants;
|
||||
import org.eclipse.jface.dialogs.IMessageProvider;
|
||||
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
|
||||
import org.eclipse.jface.dialogs.TitleAreaDialog;
|
||||
import org.eclipse.jface.operation.IRunnableWithProgress;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.events.ModifyEvent;
|
||||
import org.eclipse.swt.events.ModifyListener;
|
||||
import org.eclipse.swt.events.SelectionAdapter;
|
||||
import org.eclipse.swt.events.SelectionEvent;
|
||||
import org.eclipse.swt.layout.GridData;
|
||||
import org.eclipse.swt.layout.GridLayout;
|
||||
import org.eclipse.swt.widgets.Button;
|
||||
import org.eclipse.swt.widgets.Combo;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Control;
|
||||
import org.eclipse.swt.widgets.FileDialog;
|
||||
import org.eclipse.swt.widgets.Label;
|
||||
import org.eclipse.swt.widgets.Shell;
|
||||
import org.eclipse.swt.widgets.Text;
|
||||
import org.eclipse.ui.PlatformUI;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.commons.utils.io.FilesUtils;
|
||||
import org.talend.core.CorePlugin;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.ILibraryManagerService;
|
||||
import org.talend.core.model.general.ModuleNeeded;
|
||||
import org.talend.core.model.general.ModuleNeeded.ELibraryInstallStatus;
|
||||
import org.talend.core.nexus.NexusServerBean;
|
||||
import org.talend.core.nexus.TalendLibsServerManager;
|
||||
import org.talend.core.runtime.maven.MavenUrlHelper;
|
||||
import org.talend.designer.core.i18n.Messages;
|
||||
import org.talend.librariesmanager.model.ModulesNeededProvider;
|
||||
import org.talend.librariesmanager.model.service.LibrariesIndexManager;
|
||||
import org.talend.librariesmanager.ui.LibManagerUiPlugin;
|
||||
|
||||
/**
|
||||
*
|
||||
* DOC wchen class global comment. Detailled comment
|
||||
*/
|
||||
public class InstallModuleDialog extends TitleAreaDialog {
|
||||
|
||||
private Text jarPathTxt;
|
||||
|
||||
private Text nameTxt;
|
||||
|
||||
private Text uriTxt;
|
||||
|
||||
private Button platfromRadioBtn;
|
||||
|
||||
private Combo platformCombo;
|
||||
|
||||
private Button repositoryRadioBtn;
|
||||
|
||||
private Button fileRadioBtn;
|
||||
|
||||
private Button detectButton;
|
||||
|
||||
private Button fileBrowse;
|
||||
|
||||
private String moduleName;
|
||||
|
||||
private String initValue;
|
||||
|
||||
private final String MVN_DATA_KEY = "MVN_DATA_KEY";
|
||||
|
||||
/**
|
||||
* DOC wchen InstallModuleDialog constructor comment.
|
||||
*
|
||||
* @param parentShell
|
||||
*/
|
||||
public InstallModuleDialog(Shell parentShell, String initValue) {
|
||||
super(parentShell);
|
||||
setShellStyle(SWT.CLOSE | SWT.MAX | SWT.TITLE | SWT.BORDER | SWT.APPLICATION_MODAL | SWT.RESIZE | getDefaultOrientation());
|
||||
this.initValue = initValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureShell(Shell newShell) {
|
||||
super.configureShell(newShell);
|
||||
newShell.setText(Messages.getString("InstallModuleDialog.text"));//$NON-NLS-1$
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Control createDialogArea(Composite parent) {
|
||||
GridData data = new GridData(GridData.FILL_BOTH);
|
||||
Composite container = new Composite(parent, SWT.NONE);
|
||||
GridLayout layout = new GridLayout();
|
||||
layout.marginTop = 10;
|
||||
layout.marginLeft = 20;
|
||||
layout.marginRight = 20;
|
||||
layout.marginBottom = 50;
|
||||
container.setLayout(layout);
|
||||
container.setLayoutData(data);
|
||||
createPlatformGroup(container);
|
||||
createRepositoryGroup(container);
|
||||
browseFileGroup(container);
|
||||
|
||||
return parent;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Control createContents(Composite parent) {
|
||||
Control control = super.createContents(parent);
|
||||
setPlatformGroupEnabled(true);
|
||||
setRepositoryGroupEnabled(false);
|
||||
setFileGroupEnabled(false);
|
||||
return control;
|
||||
}
|
||||
|
||||
private void createPlatformGroup(Composite container) {
|
||||
Composite composite = new Composite(container, SWT.NONE);
|
||||
GridLayout layout = new GridLayout();
|
||||
layout.numColumns = 2;
|
||||
composite.setLayout(layout);
|
||||
GridData data = new GridData(GridData.FILL_BOTH);
|
||||
composite.setLayoutData(data);
|
||||
|
||||
platfromRadioBtn = new Button(composite, SWT.RADIO);
|
||||
platfromRadioBtn.setText(Messages.getString("InstallModuleDialog.platfromBtn"));
|
||||
platfromRadioBtn.setSelection(true);
|
||||
|
||||
platformCombo = new Combo(composite, SWT.READ_ONLY);
|
||||
platformCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
|
||||
platfromRadioBtn.addSelectionListener(new SelectionAdapter() {
|
||||
|
||||
@Override
|
||||
public void widgetSelected(SelectionEvent e) {
|
||||
setPlatformGroupEnabled(true);
|
||||
setRepositoryGroupEnabled(false);
|
||||
setFileGroupEnabled(false);
|
||||
}
|
||||
});
|
||||
|
||||
ILibraryManagerService librairesManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault().getService(
|
||||
ILibraryManagerService.class);
|
||||
Set<String> jarsAvailable = librairesManagerService.list(new NullProgressMonitor());
|
||||
List<ModuleNeeded> unUsedModules = ModulesNeededProvider.getUnUsedModules();
|
||||
for (ModuleNeeded module : unUsedModules) {
|
||||
if (module.getStatus() == ELibraryInstallStatus.INSTALLED) {
|
||||
jarsAvailable.add(module.getModuleName());
|
||||
}
|
||||
}
|
||||
String[] moduleValueArray = jarsAvailable.toArray(new String[jarsAvailable.size()]);
|
||||
Comparator<String> comprarator = new Comparator<String>() {
|
||||
|
||||
public int compare(String o1, String o2) {
|
||||
return o1.compareToIgnoreCase(o2);
|
||||
}
|
||||
};
|
||||
Arrays.sort(moduleValueArray, comprarator);
|
||||
platformCombo.setItems(moduleValueArray);
|
||||
if (jarsAvailable.contains(initValue)) {
|
||||
platformCombo.setText(initValue);
|
||||
} else {
|
||||
platformCombo.setText(moduleValueArray[0]);
|
||||
}
|
||||
}
|
||||
|
||||
private void setPlatformGroupEnabled(boolean enable) {
|
||||
platfromRadioBtn.setSelection(enable);
|
||||
platformCombo.setEnabled(enable);
|
||||
if (enable) {
|
||||
setMessage(Messages.getString("InstallModuleDialog.message"), IMessageProvider.INFORMATION);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
private void createRepositoryGroup(Composite container) {
|
||||
Composite composite = new Composite(container, SWT.NONE);
|
||||
GridLayout layout = new GridLayout();
|
||||
composite.setLayout(layout);
|
||||
GridData data = new GridData(GridData.FILL_BOTH);
|
||||
composite.setLayoutData(data);
|
||||
|
||||
repositoryRadioBtn = new Button(composite, SWT.RADIO);
|
||||
repositoryRadioBtn.setText(Messages.getString("InstallModuleDialog.repositoryBtn"));
|
||||
data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
|
||||
repositoryRadioBtn.setLayoutData(data);
|
||||
|
||||
Composite subComposite = new Composite(container, SWT.NONE);
|
||||
layout = new GridLayout();
|
||||
layout.marginLeft = 25;
|
||||
layout.numColumns = 2;
|
||||
subComposite.setLayout(layout);
|
||||
data = new GridData(GridData.FILL_BOTH);
|
||||
subComposite.setLayoutData(data);
|
||||
|
||||
Label nameLabel = new Label(subComposite, SWT.NONE);
|
||||
nameLabel.setText(Messages.getString("InstallModuleDialog.repository.name"));
|
||||
nameTxt = new Text(subComposite, SWT.BORDER);
|
||||
nameTxt.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
|
||||
|
||||
Label uriLabel = new Label(subComposite, SWT.NONE);
|
||||
uriLabel.setText(Messages.getString("InstallModuleDialog.repository.mvnURI"));
|
||||
uriTxt = new Text(subComposite, SWT.BORDER);
|
||||
uriTxt.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
|
||||
uriTxt.setEnabled(false);
|
||||
|
||||
detectButton = new Button(subComposite, SWT.NONE);
|
||||
detectButton.setText(Messages.getString("InstallModuleDialog.detectButton.text"));
|
||||
detectButton.setEnabled(false);
|
||||
data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
|
||||
data.horizontalSpan = 2;
|
||||
detectButton.setLayoutData(data);
|
||||
|
||||
repositoryRadioBtn.addSelectionListener(new SelectionAdapter() {
|
||||
|
||||
@Override
|
||||
public void widgetSelected(SelectionEvent e) {
|
||||
setPlatformGroupEnabled(false);
|
||||
setRepositoryGroupEnabled(true);
|
||||
setFileGroupEnabled(false);
|
||||
}
|
||||
});
|
||||
detectButton.addSelectionListener(new SelectionAdapter() {
|
||||
|
||||
@Override
|
||||
public void widgetSelected(SelectionEvent e) {
|
||||
checkMavenRepository();
|
||||
}
|
||||
});
|
||||
nameTxt.addModifyListener(new ModifyListener() {
|
||||
|
||||
@Override
|
||||
public void modifyText(ModifyEvent e) {
|
||||
String jarName = nameTxt.getText().trim();
|
||||
if (jarName.contains(".")) {
|
||||
detectButton.setEnabled(true);
|
||||
String mvnUriFromIndex = LibrariesIndexManager.getInstance().getMvnUriFromIndex(jarName);
|
||||
if (mvnUriFromIndex != null) {
|
||||
final String[] mvnUris = mvnUriFromIndex.split(MavenUrlHelper.MVN_INDEX_SPLITER);
|
||||
uriTxt.setText(mvnUris[0]);
|
||||
} else {
|
||||
String generatedMavenURI = MavenUrlHelper.generateMvnUrlForJarName(jarName, true, true);
|
||||
uriTxt.setText(generatedMavenURI);
|
||||
}
|
||||
setMessage(Messages.getString("InstallModuleDialog.repository.message"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
} else {
|
||||
setMessage(Messages.getString("InstallModuleDialog.repository.name.error"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void setRepositoryGroupEnabled(boolean enable) {
|
||||
repositoryRadioBtn.setSelection(enable);
|
||||
nameTxt.setEnabled(enable);
|
||||
// detectButton.setEnabled(enable);
|
||||
if (enable) {
|
||||
setMessage(Messages.getString("InstallModuleDialog.repository.message"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
}
|
||||
}
|
||||
|
||||
private void browseFileGroup(Composite container) {
|
||||
Composite composite = new Composite(container, SWT.NONE);
|
||||
GridLayout layout = new GridLayout();
|
||||
layout.numColumns = 3;
|
||||
composite.setLayout(layout);
|
||||
GridData data = new GridData(GridData.FILL_BOTH);
|
||||
composite.setLayoutData(data);
|
||||
|
||||
fileRadioBtn = new Button(composite, SWT.RADIO);
|
||||
fileRadioBtn.setText(Messages.getString("InstallModuleDialog.browseFileBtn"));
|
||||
|
||||
jarPathTxt = new Text(composite, SWT.BORDER);
|
||||
jarPathTxt.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
|
||||
fileBrowse = new Button(composite, SWT.PUSH);
|
||||
fileBrowse.setText("...");//$NON-NLS-1$
|
||||
|
||||
fileRadioBtn.addSelectionListener(new SelectionAdapter() {
|
||||
|
||||
@Override
|
||||
public void widgetSelected(SelectionEvent e) {
|
||||
setPlatformGroupEnabled(false);
|
||||
setRepositoryGroupEnabled(false);
|
||||
setFileGroupEnabled(true);
|
||||
}
|
||||
});
|
||||
|
||||
fileBrowse.addSelectionListener(new SelectionAdapter() {
|
||||
|
||||
@Override
|
||||
public void widgetSelected(SelectionEvent e) {
|
||||
handleButtonPressed();
|
||||
}
|
||||
});
|
||||
jarPathTxt.addModifyListener(new ModifyListener() {
|
||||
|
||||
@Override
|
||||
public void modifyText(ModifyEvent e) {
|
||||
File file = new File(jarPathTxt.getText());
|
||||
if (!file.exists()) {
|
||||
setMessage(Messages.getString("InstallModuleDialog.browseFile.error"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
} else {
|
||||
setMessage(Messages.getString("InstallModuleDialog.message"), IMessageProvider.INFORMATION);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(true);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void setFileGroupEnabled(boolean enable) {
|
||||
fileRadioBtn.setSelection(enable);
|
||||
jarPathTxt.setEnabled(enable);
|
||||
fileBrowse.setEnabled(enable);
|
||||
if (enable) {
|
||||
File file = new File(jarPathTxt.getText());
|
||||
if (file.exists()) {
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(true);
|
||||
} else {
|
||||
setMessage(Messages.getString("InstallModuleDialog.browseFile.error"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void checkMavenRepository() {
|
||||
String jarName = nameTxt.getText().trim();
|
||||
String mvnURI = uriTxt.getText().trim();
|
||||
final boolean[] status = new boolean[1];
|
||||
status[0] = false;
|
||||
final IRunnableWithProgress acceptOursProgress = new IRunnableWithProgress() {
|
||||
|
||||
@Override
|
||||
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
|
||||
String mvnUriFromIndex = LibrariesIndexManager.getInstance().getMvnUriFromIndex(jarName);
|
||||
NexusServerBean customNexusServer = TalendLibsServerManager.getInstance().getCustomNexusServer();
|
||||
if (mvnUriFromIndex != null && mvnUriFromIndex.split(MavenUrlHelper.MVN_INDEX_SPLITER).length > 1) {
|
||||
String[] mvnURIs = mvnUriFromIndex.split(MavenUrlHelper.MVN_INDEX_SPLITER);
|
||||
for (String mvnURI : mvnURIs) {
|
||||
checkModuleStatus(customNexusServer, jarName, mvnURI, status);
|
||||
}
|
||||
} else {
|
||||
checkModuleStatus(customNexusServer, jarName, mvnURI, status);
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
ProgressMonitorDialog dialog = new ProgressMonitorDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
|
||||
try {
|
||||
dialog.run(true, true, acceptOursProgress);
|
||||
} catch (Throwable e) {
|
||||
if (!(e instanceof TimeoutException)) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
|
||||
if (!status[0]) {
|
||||
setMessage(Messages.getString("InstallModuleDialog.repository.error"), IMessageProvider.ERROR);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(false);
|
||||
} else {
|
||||
List<String> modulesNeededNames = ModulesNeededProvider.getModulesNeededNames();
|
||||
if (!modulesNeededNames.contains(jarName)) {
|
||||
ModulesNeededProvider.userAddUnusedModules(ELibraryInstallStatus.UNKNOWN.name(), jarName);
|
||||
}
|
||||
setMessage(Messages.getString("InstallModuleDialog.message"), IMessageProvider.INFORMATION);
|
||||
getButton(IDialogConstants.OK_ID).setEnabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
private void checkModuleStatus(NexusServerBean customNexusServer, String jarName, String mvnURI, boolean[] status) {
|
||||
ModuleNeeded needed = new ModuleNeeded(jarName, null, true, mvnURI);
|
||||
ELibraryInstallStatus installStatus = needed.getDeployStatus();
|
||||
if (installStatus == ELibraryInstallStatus.DEPLOYED) {
|
||||
status[0] |= true;
|
||||
} else {
|
||||
if (customNexusServer != null) {
|
||||
try {
|
||||
ILibraryManagerService libManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault()
|
||||
.getService(ILibraryManagerService.class);
|
||||
File resolveJar = libManagerService.resolveJar(TalendLibsServerManager.getInstance(), customNexusServer,
|
||||
mvnURI);
|
||||
if (resolveJar != null) {
|
||||
status[0] |= true;
|
||||
LibManagerUiPlugin.getDefault().getLibrariesService().checkLibraries();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
status[0] |= false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void handleButtonPressed() {
|
||||
FileDialog dialog = new FileDialog(getShell());
|
||||
dialog.setFilterExtensions(FilesUtils.getAcceptJARFilesSuffix());
|
||||
dialog.setText(Messages.getString("InstallModuleDialog.text")); //$NON-NLS-1$
|
||||
|
||||
String filePath = this.jarPathTxt.getText().trim();
|
||||
if (filePath.length() == 0) {
|
||||
dialog.setFilterPath(ResourcesPlugin.getWorkspace().getRoot().getLocation().toOSString());
|
||||
} else {
|
||||
File file = new File(filePath);
|
||||
if (file.exists()) {
|
||||
dialog.setFilterPath(new Path(filePath).toOSString());
|
||||
}
|
||||
}
|
||||
|
||||
String result = dialog.open();
|
||||
if (result != null) {
|
||||
this.jarPathTxt.setText(result);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see org.eclipse.jface.dialogs.Dialog#okPressed()
|
||||
*/
|
||||
@Override
|
||||
protected void okPressed() {
|
||||
if (platfromRadioBtn.getSelection()) {
|
||||
moduleName = platformCombo.getText();
|
||||
} else if (repositoryRadioBtn.getSelection()) {
|
||||
moduleName = nameTxt.getText().trim();
|
||||
} else {
|
||||
final File file = new File(jarPathTxt.getText().trim());
|
||||
final IRunnableWithProgress acceptOursProgress = new IRunnableWithProgress() {
|
||||
|
||||
@Override
|
||||
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
|
||||
try {
|
||||
monitor.beginTask("Install module " + file.getName(), 100);
|
||||
monitor.worked(10);
|
||||
CorePlugin.getDefault().getLibrariesService().deployLibrary(file.toURL());
|
||||
monitor.worked(80);
|
||||
moduleName = file.getName();
|
||||
List<String> modulesNeededNames = ModulesNeededProvider.getModulesNeededNames();
|
||||
if (!modulesNeededNames.contains(moduleName)) {
|
||||
ModulesNeededProvider.userAddUnusedModules(ELibraryInstallStatus.UNKNOWN.name(), moduleName);
|
||||
}
|
||||
monitor.done();
|
||||
} catch (IOException e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
ProgressMonitorDialog dialog = new ProgressMonitorDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
|
||||
.getShell());
|
||||
try {
|
||||
dialog.run(true, true, acceptOursProgress);
|
||||
} catch (Throwable e) {
|
||||
if (!(e instanceof TimeoutException)) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
super.okPressed();
|
||||
}
|
||||
|
||||
public String getResult() {
|
||||
return moduleName;
|
||||
}
|
||||
}
|
||||
@@ -34,6 +34,8 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
|
||||
private IntegerFieldEditor dbConnTimeout;
|
||||
|
||||
private IntegerFieldEditor hbaseOrMaprDBScanLimit;
|
||||
|
||||
public PerformancePreferencePage() {
|
||||
super(GRID);
|
||||
setPreferenceStore(DesignerPlugin.getDefault().getPreferenceStore());
|
||||
@@ -81,7 +83,6 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
textControl.setToolTipText(Messages.getString("PerformancePreferencePage.ConnectionTimeoutTip")); //$NON-NLS-1$
|
||||
dbConnTimeout.setValidRange(0, Short.MAX_VALUE);
|
||||
textControl.setEnabled(getPreferenceStore().getBoolean(ITalendCorePrefConstants.DB_CONNECTION_TIMEOUT_ACTIVED));
|
||||
|
||||
addField(dbConnTimeoutActive);
|
||||
addField(dbConnTimeout);
|
||||
addSVNInforAutoCheckFiled();
|
||||
@@ -118,7 +119,6 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
textControl.setToolTipText(Messages.getString("PerformancePreferencePage.ConnectionTimeoutTip")); //$NON-NLS-1$
|
||||
dbConnTimeout.setValidRange(0, Short.MAX_VALUE);
|
||||
textControl.setEnabled(getPreferenceStore().getBoolean(ITalendCorePrefConstants.DB_CONNECTION_TIMEOUT_ACTIVED));
|
||||
|
||||
addField(dbConnTimeoutActive);
|
||||
addField(dbConnTimeout);
|
||||
|
||||
@@ -137,6 +137,14 @@ public class PerformancePreferencePage extends FieldEditorPreferencePage impleme
|
||||
getFieldEditorParent());
|
||||
codeFormatTimeout.setValidRange(1, Short.MAX_VALUE);
|
||||
addField(codeFormatTimeout);
|
||||
|
||||
hbaseOrMaprDBScanLimit = new IntegerFieldEditor(ITalendCorePrefConstants.HBASE_OR_MAPRDB_SCAN_LIMIT,
|
||||
Messages.getString("PerformancePreferencePage.HBaseOrMaprDBScanLimit"), //$NON-NLS-1$
|
||||
getFieldEditorParent());
|
||||
Text limitTextControl = hbaseOrMaprDBScanLimit.getTextControl(getFieldEditorParent());
|
||||
limitTextControl.setToolTipText(Messages.getString("PerformancePreferencePage.HBaseOrMaprDBScanLimitTip")); //$NON-NLS-1$
|
||||
hbaseOrMaprDBScanLimit.setValidRange(0, Short.MAX_VALUE);
|
||||
addField(hbaseOrMaprDBScanLimit);
|
||||
}
|
||||
|
||||
private void addSVNInforAutoCheckFiled() {
|
||||
|
||||
@@ -144,6 +144,9 @@ public class PreferenceInitializer extends AbstractPreferenceInitializer {
|
||||
store.setDefault(ITalendCorePrefConstants.DB_CONNECTION_TIMEOUT, 15);
|
||||
// store.setDefault(ITalendCorePrefConstants.ITEM_INDEX, false);
|
||||
|
||||
// HBase or MaprDB scan limit
|
||||
store.setDefault(ITalendCorePrefConstants.HBASE_OR_MAPRDB_SCAN_LIMIT, 50);
|
||||
|
||||
// Add dependencies routines for job
|
||||
store.setDefault(ITalendCorePrefConstants.ADD_USER_ROUTINES, true);
|
||||
store.setDefault(ITalendCorePrefConstants.ADD_SYSTEM_ROUTINES, true);
|
||||
@@ -160,7 +163,6 @@ public class PreferenceInitializer extends AbstractPreferenceInitializer {
|
||||
if (PluginChecker.isSVNProviderPluginLoaded()) {
|
||||
store.setDefault(ITalendCorePrefConstants.SVN_UPDATE_INFO_AUTO_CHECK, true);
|
||||
store.setDefault(ITalendCorePrefConstants.SVN_UPDATE_INFO_AUTO_CHECK_TIME_INTERVAL, 1);
|
||||
store.setDefault(ITalendCorePrefConstants.SVN_UPDATE_INFO_AUTO_CHECK, true);
|
||||
store.setDefault(ITalendCorePrefConstants.AUTO_REFRESH_LOCKS, true);
|
||||
store.setDefault(ITalendCorePrefConstants.PERFORMANCE_TAC_CONNECTION_TIMEOUT, 5);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2017 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.designer.core.ui.preferences;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.jface.preference.IPreferenceStore;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.core.prefs.ITalendCorePrefConstants;
|
||||
import org.talend.designer.core.DesignerPlugin;
|
||||
import org.talend.login.AbstractLoginTask;
|
||||
|
||||
/**
|
||||
*
|
||||
* DOC wchen class global comment. Detailled comment
|
||||
*/
|
||||
public class PreferencePreInitailizeTask extends AbstractLoginTask {
|
||||
|
||||
@Override
|
||||
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
|
||||
IPreferenceStore store = DesignerPlugin.getDefault().getPreferenceStore();
|
||||
String pAutoCheck = System.getProperty("svn.update.info.check");
|
||||
if (pAutoCheck != null) {
|
||||
boolean enableAutoCheckSvn = Boolean.valueOf(pAutoCheck);
|
||||
store.setValue(ITalendCorePrefConstants.SVN_UPDATE_INFO_AUTO_CHECK, enableAutoCheckSvn);
|
||||
}
|
||||
String pInterval = System.getProperty("svn.update.info.interval");
|
||||
if (pInterval != null) {
|
||||
try {
|
||||
int svnCheckInterval = Integer.parseInt(pInterval);
|
||||
store.setValue(ITalendCorePrefConstants.SVN_UPDATE_INFO_AUTO_CHECK_TIME_INTERVAL, svnCheckInterval);
|
||||
} catch (NumberFormatException e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user