Compare commits

...

60 Commits

Author SHA1 Message Date
kjwang-talend
30b49bf9cc fix(TUP-17996):When Deploying one customer's job in CI, the build failed with error: constant string too long (#1403)
fix(TUP-17996):When Deploying one customer's job in CI, the build failed with error: constant string too long
https://jira.talendforge.org/browse/TUP-17996
2019-03-04 10:40:30 +08:00
apoltavtsev
a9fac457b2 TUP-17093:[Talend Studio] Compilation error not shown on a box 2018-10-09 10:43:25 +03:00
hcyi
be4b6f8883 TPS-2684:[6.3.1] Guess schema is not working in case of tMSSQLinput
component
2018-09-10 16:04:12 +08:00
zwxue
e612ab83de fix(TUP-20223):Wrong branch value in the jobs generated by CI. 2018-09-10 10:39:03 +08:00
Laurent BOURGEOIS
c54b63aa4f fix(TBD-7495): Add checkbox to transform date type in timestamp (#2593) (#2635) (#2664) 2018-09-05 16:53:00 +02:00
Chao MENG
71aac01583 fix(TUP-20391): Migration tasks are re-executed and encrypting passwords
https://jira.talendforge.org/browse/TUP-20391
2018-07-18 18:12:41 +08:00
Chao MENG
6def743f0b fix(TUP-20391): Migration tasks are re-executed and encrypting passwords
(#2492)

fix(TUP-20391): Migration tasks are re-executed and encrypting passwords
https://jira.talendforge.org/browse/TUP-20391

Conflicts:
	main/plugins/org.talend.repository/src/main/java/org/talend/repository/model/migration/UnifyPasswordEncryption4ContextMigrationTask.java
2018-07-17 11:08:13 +08:00
hcyi
1d6c17de39 fix(TUP-19277):Errors when creating tSASoutput component from SAS (#1877)
metadata connection.
2018-05-02 10:22:15 +08:00
nrousseau
3ed6a8f9c3 fix(TUP-19758) generate code even if the jars are missing (#2065) 2018-04-23 14:23:31 +08:00
hwang
75e6c14f1b Revert "fix(TPS-2281):[6.3.1] Build Job very slow compared to version 5 even with TPS-1656 (TUP-17149)"
This reverts commit 87ad1be8cc.
2018-01-16 15:31:29 +08:00
hwang
b0d93eb010 Revert "TUP-17149:Build Job very slow compared to version 5 even with TPS-1656 (#1212)"
This reverts commit 4fd4cc00fc.
2018-01-16 15:31:24 +08:00
hwang
54551850d7 Revert "TUP-17149:Build Job very slow compared to version 5 even with TPS-1656"
This reverts commit 368fb9766e.
2018-01-16 15:31:18 +08:00
hwang
87ad1be8cc fix(TPS-2281):[6.3.1] Build Job very slow compared to version 5 even
with TPS-1656 (TUP-17149)
2018-01-15 15:46:15 +08:00
wchen-talend
4fd4cc00fc TUP-17149:Build Job very slow compared to version 5 even with TPS-1656
(#1212)
2018-01-15 14:10:31 +08:00
wchen-talend
368fb9766e TUP-17149:Build Job very slow compared to version 5 even with TPS-1656 2018-01-15 14:07:45 +08:00
hcyi
b25a9dec5c fix(TUP-18492): Stats Logs still use JTDS driver even select
Microsoft.Microsoft.
2017-12-05 11:05:24 +08:00
hcyi
6b65e0c041 fix (TUP-18492): Stats&Logs still use JTDS driver even select Microsoft 2017-12-05 11:00:45 +08:00
zwxue
f41c0331bf fix(TUP-18278):Could not find or load main class exception after (#1547) 2017-11-06 14:32:30 +08:00
wchen-talend
88b16605f4 fix(TUP-18738):UHG - Configuring SVN Polling from TAC (#1681) 2017-11-06 12:10:57 +08:00
GGu
76a5c7e3f3 bug(TUP-18570/Maven): update the project pom with reference projects 2017-10-30 10:45:07 +08:00
wchen-talend
8205741178 TPS-2146:[6.3.1] tLibraryLoad doesn't display the jars available in
local maven (TUP-18489)
2017-10-09 12:17:06 +08:00
seloen
4ee4d14d60 bugfix(TUP-17050):tmap looses setting for Die on error
*add a if judge in initCurrentModel() method

https://jira.talendforge.org/browse/TUP-17050
2017-09-11 14:56:48 +08:00
hcyi
5680735ab9 TPS-2104:Opening a BD job from the search feature in Studio transforms
it into a DI job
2017-09-11 14:52:38 +08:00
GGu
d84cef3f76 fix(TUP-18405/module): enable to update the list of modules parameter 2017-08-21 11:17:05 +08:00
apoltavtsev
83d892d71b TPS-2091 Fix for TESB-20067 is merged from master 2017-08-14 10:54:04 +03:00
zwxue
8533bd5f6d TUP-16573: cmdline generate time increase as the tasks number increase. 2017-07-24 14:37:52 +08:00
kjwang-talend
c36bdef220 fix(TUP-17642):6.3.1 studio takes about 25 mins to update project (#1273)
* fix(TUP-17642):6.3.1 studio takes about 25 mins to update project
settings for about 200 jobs in the GIT project.
https://jira.talendforge.org/browse/TUP-17642

* fix(TUP-17642):6.3.1 studio takes about 25 mins to update project
settings for about 200 jobs in the GIT project.
https://jira.talendforge.org/browse/TUP-17642

* fix(TUP-17642):6.3.1 studio takes about 25 mins to update project
settings for about 200 jobs in the GIT project.
https://jira.talendforge.org/browse/TUP-17642
2017-07-24 14:17:54 +08:00
wchen-talend
a31207d0a6 TUP-17072:Misleading Task Generation Status when jars are missing 2017-07-11 11:33:43 +08:00
nrousseau
d500eda261 TUP-17072:Misleading Task Generation Status when jars are missing
(#1071)
2017-07-11 11:33:11 +08:00
zwxue
c5dacdf731 fix(TUP-18158):tELTOracleMap / ELT Oracle Map Editor / left panel empty
after migration from 6.1.1 to 6.3.1.
2017-07-10 14:15:53 +08:00
hcyi
61294e6df8 TUP-18046:Cannot Retrieve Columns from Metadata MapRDB Database (#1448)
* TUP-18046:Cannot Retrieve Columns from Metadata MapRDB Database
Connection.

* TUP-18046:update,Cannot Retrieve Columns from Metadata MapRDB Database
Connection
2017-07-03 17:27:13 +08:00
hcyi
5264deeb27 TUP-18046:Cannot Retrieve Columns from Metadata MapRDB Database (#1445)
Connection.
2017-07-03 17:26:17 +08:00
Pingwen Lin
c50e6c531e TPS-2013 [6.3.1]Support of AWS ELB for MDM Cluster(TMDM-11072) (#1466) 2017-06-30 01:34:25 -05:00
hcyi
50bf46b627 TUP-17849:tWebservice wsdl wizard don't works. (#1301) 2017-05-26 17:18:13 +08:00
hwang-talend
b4c319fc1a fix(TUP-17538):"The connected components in a job must not form a closed (#1189)
loop"
2017-05-11 14:14:23 +08:00
hwang
694b61884b TUP-16161: code improve 2017-05-11 14:10:57 +08:00
hwang-talend
b970acaff8 TUP-16161:Different behavior on triggers between 611 and 621 (#887) 2017-05-11 14:10:35 +08:00
wchen-talend
c9db9f05b3 TUP-17245:Link names are renamed in jobs as Main1 when migrating from
5.4.1 to 6.2.1
2017-04-24 16:01:51 +08:00
Yucheng Bai
7352e86d4e TUP-17246: OSX hits GC Overhead Error modifying salesforce metadata in (#1057)
jobs
2017-04-24 15:54:13 +08:00
hwang-talend
42fe37ba62 TUP-17194:Error with a job using nested joblets with MDM components (#1041) 2017-04-24 15:13:28 +08:00
ycbai
edb7d1939f TUP-17424: Cann't retrieve schem for HDFS only on 623 2017-04-11 10:08:37 +08:00
GGu
8cfb8a6160 TUP-17017: enable to use reference template for reference jobs. (#1081) 2017-04-10 12:07:17 +08:00
hwang
1ce2c6f609 TUP-17214:Problem by using joblets from the reference project 2017-03-20 15:20:23 +08:00
hwang
5b4cfd7590 TUP-17214:Problem by using joblets from the reference project 2017-03-20 15:20:08 +08:00
hwang
d61f305cc9 TUP-17201:Upgrade issue with Jobs referencing joblets from a reference 2017-03-20 14:17:29 +08:00
hwang
34fc84da95 TUP-17201:Upgrade issue with Jobs referencing joblets from a reference
project.
2017-03-20 14:15:46 +08:00
wchen-talend
141bbee806 TUP-17120:Changing the order of output rows from tSAPBapi component
breaks the code generation
2017-03-07 11:07:47 +08:00
iwangtalend
cde4fcb03f Merge pull request #1034 from Talend/feature/DEVOPS-1729/patch/6.3.1_nexus
DEVOPS-1729 Nexus migration: Update URLs [patch/6.3.1]
2017-03-02 16:42:06 +01:00
build-talend
9963060e8f DEVOPS-1729 Nexus migration: Update URLs 2017-03-02 16:32:57 +01:00
jzhao
cc2f257a02 feat(TDI-35748):salesforce connection save and reuse session (#916)
* migration from old framework
* add directory mapping with widget type
2017-02-20 18:35:27 +08:00
Yucheng Bai
43ff058114 TUP-16774: File Widget of session directory in metadata for salesforce (#937) 2017-02-20 18:34:54 +08:00
Pingwen Lin
e00bdf3df1 TPS-1762 [6.3.1]Data Services with MDM Connection - behaviour change from 6.1.1(TMDM-10433)
TMDM-10433 : Data Services with MDM Connection - behaviour change from 6.1.1 (#915)
2017-01-25 11:13:50 +08:00
Carsten Biermann
2d84ef06e4 [DEVOPS-1556] New NOTICE file 2016-12-16 09:25:04 +01:00
ycbai
956882cddf TUP-16607: Generation issue on ELTMap component using Alias 2016-12-14 19:39:34 +08:00
qiongli
c40653dd6c TDQ-13026 consider the sub-job and joblet dependecies wherether include (#871)
tRuleSurvivorship node when export job.
2016-12-14 17:14:41 +08:00
guol
ff62f42cc5 Revert "TDI-36791 fix add Junit: ELT Map queries : compilation error with quotes https://jira.talendforge.org/browse/TDI-36791"
This reverts commit c3a34fa06b.
2016-12-12 17:52:21 +08:00
guol
48b4dd6e25 Revert "TDI-36791 fix: ELT Map queries : compilation error with quotes https://jira.talendforge.org/browse/TDI-36791"
This reverts commit a204e266e8.
2016-12-12 17:52:12 +08:00
Vladimir Bogatyrov
9595f27eca [TESB-18057] Fix 2016-12-12 08:28:59 +02:00
qiongli
6c642e7389 TDQ-12474 add a profiler "include-survivorship-rules" to export (#861)
survivorship rules. it only execute when the "include-items" not be
added.
2016-12-12 10:54:53 +08:00
Carsten Biermann
de0d82ca0f Set versions for 6.3.1 2016-12-07 14:07:38 +00:00
223 changed files with 4231 additions and 3001 deletions

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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() %>"));

View File

@@ -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>

View File

@@ -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;

View File

@@ -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>

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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();

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -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 %>);

View File

@@ -203,12 +203,12 @@ for(int i = 0; i &lt; 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"

View File

@@ -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>

View File

@@ -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">

View File

@@ -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>

View File

@@ -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);
}
}

View File

@@ -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

View File

@@ -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>

View File

@@ -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>

View File

@@ -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 !

View File

@@ -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)
*

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -161,4 +161,9 @@ public abstract class AbstractComponent implements IComponent {
public boolean isAllowedPropagated() {
return true;
}
@Override
public String getOriginalName(){
return getName();
}
}

View File

@@ -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) {

View File

@@ -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$

View File

@@ -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() {

View File

@@ -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());

View File

@@ -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();
}
}
}

View File

@@ -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();
}
}

View File

@@ -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();

View File

@@ -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);
}

View File

@@ -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;

View File

@@ -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() {

View File

@@ -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);
}

View File

@@ -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();
}

View File

@@ -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);

View File

@@ -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);
}
}

View File

@@ -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) {

View File

@@ -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);
}
}

View File

@@ -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;
}
}

View File

@@ -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() {

View File

@@ -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);
}

View File

@@ -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