Compare commits

..

282 Commits

Author SHA1 Message Date
Maksym Basiuk
8922861701 chore: update timestamp of the patch 2020-10-23 11:02:44 +03:00
Maksym Basiuk
979bc18d5c chore: update patch release notes 2020-10-20 17:34:18 +03:00
Maksym Basiuk
403f7c8a2b chore(TPS-4399): patch release notes 2020-09-30 13:28:05 +03:00
Dmytro Sylaiev
3027251425 fix(TDI-44349): Add talend-proxy artifact copy goal 2020-07-22 16:48:22 +03:00
Dmytro Sylaiev
2a1dd335bf Merge branch 'maintenance/7.1' of https://github.com/Talend/tdi-studio-se into maintenance/7.1 2020-07-08 12:24:28 +03:00
Dmytro Sylaiev
5f0c909fb0 fix(TDI-44349): Backport to 7.1 2020-07-06 21:46:18 +03:00
Chao MENG
25bfe81e66 chore: fix compile error (#4852) 2020-06-24 11:59:01 +08:00
Maksym Basiuk
2695a99a04 fix(TDI-43632): use defined pattern by user instead of static value 2020-06-04 11:26:33 +03:00
hcyi
41c3c41eb8 fix(TUP-26683): Inputs label in documentation not the same as (#4641) (#4748)
FlowDiagram
2020-06-01 11:23:22 +08:00
Chao MENG
9c4af3c2c6 fix(TUP-26189): [7.2.1] snowflake metadata connection with proxy failure
https://jira.talendforge.org/browse/TUP-26189
2020-05-29 17:59:56 +08:00
kjwang
b34743d4d2 fix(TUP-26189): [7.2.1] snowflake metadata connection with proxy failure
(#4505)

fix(TUP-26189): [7.2.1] snowflake metadata connection with proxy failure
https://jira.talendforge.org/browse/TUP-26189

Conflicts:
	main/plugins/org.talend.designer.core.generic/src/main/java/org/talend/designer/core/generic/model/GenericElementParameter.java
2020-05-29 16:14:22 +08:00
wang wei
6d9eb5dc0a fix(TDI-44159): Data viewer on tSybaseInput get error in context model with sybase 16 anywhere database(#4661) 2020-05-13 14:48:33 +08:00
undx
c50a366e07 fix(TCOMP-1681): fix Windows path case 2020-05-12 10:21:13 +02:00
undx
38df8e6ac2 feat(TCOMP-1681): fix missing imports from backport 2020-04-27 12:00:49 +02:00
undx
3e27f7fd7e feat(TCOMP-1681): Make ESB Studio job export TaCoKit compliant 2020-04-24 18:30:47 +02:00
pyzhou
b33c0fad5f fix(TDI-44051):add the real value to the db name (#4621)
* fix(TDI-44051):add the real value to the db name

* set dbName as name when db column is null

* workaround

* change back name
2020-04-24 11:32:35 +08:00
OleksiiNimych
3269fbf7af fix(TDI-43995): Support listing any path and file (#4611)
* fix(TDI-43995): Support listing any path and file

* fix(TDI-43995): Updated Apache Commons Lang library and added diamond operator

* fix(TDI-43995): Remove Apache Commons Lang library
2020-04-16 10:35:27 +03:00
Zhiwei Xue
2314ce3598 fix(TUP-26233):[7.0.1] Sometimes , the ZIP file created by a commandline (#4569)
PublishJob is not correct, missing item files.
2020-03-31 19:04:08 +08:00
wang wei
a96382b1ad fix(TDI-43918): fix the risk of drop table if exception appear (#4572) 2020-03-30 17:52:38 +08:00
Dmytro Sylaiev
a626f08a7f Dsylaiev/tdi 43810 add ignore service attr checkbox for xml (#4539)
* fix(TDI-43810): Fix for xml component

* fix(TDI-43810): Do not ignore service attr when checkbox is hidden

* fix(TDI-43810): Use hashset instead of arraylist

* fix(TDI-43810): Minor refactoring
2020-03-24 12:52:33 +02:00
Mike Yan
3719c16be0 fix(TESB-28166): [CI] Missig fieature.xml in esb consumer and service (#4496) 2020-03-02 14:45:04 +08:00
vyu-talend
e9f41a7b4b Fix(TDI-43704):update mail jar. 2020-02-27 11:51:05 +08:00
wang wei
5e8dbea43c fix(TDI-43670): tSSH component hangs if Command takes time to complete (#4423) 2020-02-18 18:10:10 +08:00
ypiel
eb2e65abd9 fix(TDI-43610) : jsonutil keep decimal if any
* fix(TDI-43610) : jsonutil keep decimal even if 0

* fix(TDI-43610) : jsonutil bump version to 2.4.5-talend

* fix(TDI-43610) : bump to json-lib-talend 2.4.5

* fix(TDI-43610) : bump to json-lib-talend 2.4.5

* fix(TDI-43610) : jsonutil keep decimal even if 0
2020-02-10 14:18:27 +01:00
hzhao-talendbj
f12e6f9e49 backport71(TUP-25951)Syncing of project and pom files doesnt happen (#4394)
* backport71(TUP-25951)Syncing of project and pom files doesnt happen
initally

* backport71(TUP-25951)Syncing of project and pom files doesnt happen
initally

* remove synchronized
2020-02-06 09:34:59 +08:00
apoltavtsev
a7a2604395 fix(TESB-27583): Maven nature is added to child Job for OSGI build 2020-01-20 09:52:28 +01:00
vyu-talend
e6059391db Vyu/tdi 43446 fix compilation error for tmap (#4291)
* Fix(TDI-43446):fix compilation error.

* Fix(TDI-43446):fix issues.

* Fix(TDI-43446):fix a bug written by myself.

* Fix(TDI-43446):fix an issue.

* Fix(TDI-43446):fix the exception problem.

* Fix(TDI-43446):fix issue.
2020-01-07 17:15:26 +08:00
Chao MENG
2bd719e8b3 fix(TUP-24749): [7.2.1] issue to download component jar via https proxy (#4167) (#4184) (#4279)
fix(TUP-24749): [7.2.1] issue to download component jar via https proxy
https://jira.talendforge.org/browse/TUP-24749
2020-01-03 17:15:38 +08:00
hzhao-talendbj
75401a54db bugfix(TUP-25035)Implicit tContextLoad feature (with selection from (#4268) (#4276)
file) uses a hardcoded encoding of ISO-8859-15
2019-12-30 10:34:00 +08:00
vyu-talend
da7aeeed98 Fix(TDI-43467):Backport to 7.1.2. 2019-12-26 10:54:36 +08:00
wwang-talend
31a1c573e3 fix(TDI-43396): Compile error for S3 and tFileFetch TUJs when log4j is not enabled at default 2019-12-19 11:48:47 +08:00
hwang-talend
6c1143ef6e bugfix(TUP-23228):The order of schema changed when ticked "used column" (#3525) (#4234)
bugfix(TUP-23228):The order of schema changed when ticked "used column" again
2019-12-16 10:45:58 +08:00
Dmytro Sylaiev
d1069dbdd1 fix(TDI-41651): Add where clause support for update query (#4172) 2019-12-13 19:08:07 +02:00
Dmytro Sylaiev
399ffc6836 fix(TDI-41651): Provide possibility to specify alias for output table… (#3645)
* fix(TDI-41651): Provide possibility to specify alias for output table ELT

* Do the same fix as mssqlELT

* Small refactoring for query codeGen

* fix(TDI-41651): Fix issues

* Correct notion in javaxml file

* Rename cleanUp method

* Use stringUtils in alias for input table

* fix(TDI-41651): Add getters for inner class

* fix(TDI-41651): Add missing property in pom.xml

* fix(TDI-41651): Add missing i18n label

* fix(TDI-41651): Remove use alias for output field

* fix(TDI-41651): Fix conflicts
2019-12-13 19:06:52 +02:00
Dmytro Sylaiev
e3493f6277 fix(TUP-21479): Backport TUP fix for elt update query generation 2019-12-13 19:01:38 +02:00
Dmytro Sylaiev
f5d1fb93f8 Revert "fix(TDI-41651): Provide possibility to specify alias for output table… (#3645)"
This reverts commit d47a9f7fb3.
2019-12-13 18:27:23 +02:00
Dmytro Sylaiev
65ed37b003 Revert "fix(TDI-41651): Add where clause support for update query (#4172)"
This reverts commit 2ce1958df7.
2019-12-13 18:26:54 +02:00
bhe-talendbj
dbf65e44ea backport(TUP-25237) backport (#4218) 2019-12-12 15:26:46 +08:00
jiezhang-tlnd
ca4e39fa62 fix(TUP-25460)schema hardcoded in guess query in tDBInput component (#4208)
https://jira.talendforge.org/browse/TUP-25406
2019-12-09 14:22:45 +08:00
wwang-talend
32605eccd0 fix(TDI-43266): Studio returns exit code 0 when OutOfMemoryError in routine occurs 2019-12-05 09:39:19 +08:00
Dmytro Sylaiev
2ce1958df7 fix(TDI-41651): Add where clause support for update query (#4172) 2019-11-29 18:58:49 +02:00
Dmytro Sylaiev
d47a9f7fb3 fix(TDI-41651): Provide possibility to specify alias for output table… (#3645)
* fix(TDI-41651): Provide possibility to specify alias for output table ELT

* Do the same fix as mssqlELT

* Small refactoring for query codeGen

* fix(TDI-41651): Fix issues

* Correct notion in javaxml file

* Rename cleanUp method

* Use stringUtils in alias for input table

* fix(TDI-41651): Add getters for inner class

* fix(TDI-41651): Add missing property in pom.xml

* fix(TDI-41651): Add missing i18n label

* fix(TDI-41651): Remove use alias for output field

* fix(TDI-41651): Fix conflicts
2019-11-29 18:51:50 +02:00
bhe-talendbj
7f46ebf0ca backport71(TUP-25257) Fix missing jobid for trunjob (#4187) 2019-11-29 18:10:47 +08:00
mbasiuk-talend
5d3b449700 fix(TDI-43212): improve code generation for query string (#4149) 2019-11-26 12:09:19 +02:00
hzhao-talendbj
81fb8ab178 Hengzhao/bugfix/tup 25035 (#4157) (#4160)
* feat(TUP-25035)Implicit tContextLoad feature (with selection from file)
uses a hardcoded encoding of ISO-8859-15

* bugfix(TUP-25035)Implicit tContextLoad feature (with selection from
file) uses a hardcoded encoding of ISO-8859-15

* bugfix(TUP-25035)Implicit tContextLoad feature (with selection from
file) uses a hardcoded encoding of ISO-8859-15

* bugfix(TUP-25035)Implicit tContextLoad feature (with selection from
file) uses a hardcoded encoding of ISO-8859-15

* bugfix(TUP-25035)Implicit tContextLoad feature (with selection from
file) uses a hardcoded encoding of ISO-8859-15
2019-11-22 10:07:00 +08:00
Hanna Liashchuk
6189a040db backport(TBD-8951): backport skip header for BigQueryBulkExec (#4162) 2019-11-21 18:40:47 +02:00
wang wei
ee16f4ee61 fix(TDI-39084): fail to get sap table parameter for tsapbapi and throw
NPE (#4062)

* fix(TDI-39084): fail to get sap table parameter for tsapbapi and throw
NPE

Conflicts:
	main/plugins/org.talend.repository/plugin.xml

* correct the version after merge origin/master

* fix migration

Conflicts:
	main/plugins/org.talend.repository/plugin.xml
2019-11-20 11:46:59 +08:00
hwang-talend
3e1b4f37af bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job (#4125)
bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job
2019-11-15 17:21:33 +08:00
hwang-talend
55ddeef9b7 bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job (#4102)
bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job
2019-11-07 10:17:57 +08:00
pyzhou
db91cc9361 fix(TDI-43105):tmap jdbc join timestamp (#4092) 2019-11-06 17:47:35 +08:00
slushatel
b8d0238f7f Sbovsunovskyi/tdi 43065 t dtd validator and utf8 (#4034)
* fix(TDI-43065): tDTDValidator fails with tDTDValidator_1 Invalid byte 2 of 3-byte UTF-8 sequence when XML file encoded in UTF-8 contains multi-bytes characters

* fix(TDI-43065): tDTDValidator fails with tDTDValidator_1 Invalid byte 2 of 3-byte UTF-8 sequence when XML file encoded in UTF-8 contains multi-bytes characters

* fix(TDI-43065): tDTDValidator fails with tDTDValidator_1 Invalid byte 2 of 3-byte UTF-8 sequence when XML file encoded in UTF-8 contains multi-bytes characters. Change default encoding to system's 'file.encoding'

(cherry picked from commit f77ff96de2)
2019-10-28 12:37:08 +02:00
hwang-talend
ed1a59ae0a bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job (#4043)
bugfix(TUP-24884):Spark Joblets cannot be built within Parent DI job
2019-10-24 10:41:09 +08:00
Jane Ding
94dbb9d64b fix(TUP-24540)java.lang.NoSuchMethodError: (#4054)
org.slf4j.spi.LocationAwareLogger.log
https://jira.talendforge.org/browse/TUP-24540
2019-10-22 16:16:46 +08:00
Mike Yan
dddce64604 fix(TESB-27030): Exclude jms library when it is used from tRunJob (#4045)
* fix(TESB-27030): Avoid to add activemq-all lib in OSGi bundle

* fix(TESB-27030): Exclude jms library when it is used from tRunJob
2019-10-21 17:45:04 +08:00
Jane Ding
9cb0a4e6c8 fix(TUP-24540)java.lang.NoSuchMethodError: (#4018) (#4022)
org.slf4j.spi.LocationAwareLogger.log
https://jira.talendforge.org/browse/TUP-24540
2019-10-15 09:37:19 +08:00
pyzhou
c63b3bb3fd fix(TDI-43020):S3 multipart upload minimun value. (#4003) 2019-10-11 16:37:44 +08:00
Jane Ding
1625efa0d8 fix(TUP-24540)java.lang.NoSuchMethodError: (#3978) (#3998)
org.slf4j.spi.LocationAwareLogger.log
https://jira.talendforge.org/browse/TUP-24540
2019-10-09 19:29:15 +08:00
apoltavtsev
0acc0c64cd TESB-26789 Bean called in routelet not found by main route 2019-10-09 09:53:11 +02:00
apoltavtsev
f5433a0ede TESB-26951 Dependencies from SubJob are added to manifest of ParentJob 2019-10-09 09:36:44 +02:00
apoltavtsev
e18abd06ad TESB-27081 SOAP Action missing while calling a SOAP WebService through tESBConsumer 2019-10-08 15:30:40 +02:00
Carlos Carvajal
8fcf2ded9c fix(TBD-9137) : tBigQueryInput does not support backtick in query (#3988) 2019-10-08 12:59:36 +02:00
Maksym Basiuk
ae3b74cf7b fix(TDI-43025): apply fix for this issue in older studios 2019-10-01 14:27:31 +03:00
mbasiuk-talend
8010c00117 fix(TDI-42983): add missing parameter to method call (#3963) 2019-09-30 14:51:00 +03:00
Zhiwei Xue
7d8653fbf9 fix(TUP-24310):routines is duplicated in the reactor (#3909) 2019-09-23 14:30:42 +08:00
Mike Yan
322b9a8302 fix(TESB-27030): Avoid to add activemq-all lib in OSGi bundle (#3957) 2019-09-23 12:46:28 +08:00
Roman
007b671717 fix(TDI-42034): update Redshift jar to 1.2.32.1056 (#3828) (#3949) 2019-09-20 07:47:40 +03:00
Dmytro Chmyga
5fd895488c fix(TDI-42549): tFileInputMail multipart body
* Fix multivalue body mail part processing
2019-09-19 10:57:12 +03:00
hwang-talend
b7442b9dcf Hwang/tup 24326 patch 71 (#3941)
* bugfix(TUP-24326):keyword "__TABLE__" not working for tJDBCxxxx
components
2019-09-19 15:19:21 +08:00
dmytroshekera
25b93da72d fix(TDI-42092): An error occurs on tFileOutputExcel after Iterate when /tmp/profiles folder does not exist (#3419) (#3936)
* fix(TDI-42092): An error occurs on tFileOutputExcel after
* Iterate when /tmp/profiles folder does not exist.
* reproduce in multithread env - each thread try create
* folder. First thread create. Second crash because folder exist
2019-09-18 14:38:19 +03:00
hwang-talend
d3bc53c1d8 bugfix(TUP-24326):keyword "__TABLE__" not working for tJDBCxxxx (#3904)
bugfix(TUP-24326):keyword "__TABLE__" not working for tJDBCxxxx components
2019-09-11 10:09:02 +08:00
Denis Sergent
7b56a9f8f5 TESB-26772 Adds a way to externalise osgi-exclude.properties file (#3914)
This dev adds the opportunity to externalise osgi-exclude.properties
resource file from org.talend.repository bundle better than using the
one included in org.talend.repository budle jar file.
2019-09-09 18:22:52 +02:00
Roman
13f6d5e54f fix(TDI-37801): tWriteJSONField null values (Backport to 7.1) (#3912)
* fix(TDI-37801): tWriteJSONField null values (#3865)

* fix(TDI-37801): tWriteJSONField null values

* fix(TDI-37801): Handle nulls and empty strings correctly in json-lib

* fix(TDI-37801): Update json-lib version in components

* fix(TDI-37801): tWriteJSONField null values

* fix(TDI-37801): Fix import name

* fix(TDI-37801): remove space
2019-09-09 12:39:27 +03:00
Zhiwei Xue
cd794acca9 fix(TUP-24323):_tdm folder is missing after build thmap job (#3886) 2019-09-03 10:19:31 +08:00
Mike Yan
d64ec004ee fix(TESB-26174): Backport to 7.1 for tRunJob with tESBConsumer (#3891) 2019-08-30 15:57:38 +02:00
ypiel
e67bb5f996 fix(TDI-42689) : Double precision within mongo
* fix(TDI-42689) : prefer BigDecimal for float&double

* fix(TDI-42689) : double precision is usually enough

* fix(TDI-42689) : Upgrade all to json-lib-2.4.2-talend
2019-08-22 14:24:14 +02:00
Jane Ding
ce51903a68 fix(TUP-24129)Security vulnerabilities in Job building and contexts (#3850)
scripts in 7.1.1.
https://jira.talendforge.org/browse/TUP-24129
2019-08-22 09:31:24 +08:00
AlixMetivier
563cb10906 adding new migration task for tMapROjaiOutput (#3846) 2019-08-21 14:47:26 +02:00
wang wei
49490ed65c fix(TDI-42747): fix the issue for tjdbcinput with dynamic column and inside talend object type like for database type blob(#3783) 2019-08-21 17:00:03 +08:00
Jane Ding
dae7c4805c fix(TUP-24109)unable to test Expression Builder of tMap (#3848)
https://jira.talendforge.org/browse/TUP-24109
2019-08-21 11:09:03 +08:00
Jane Ding
000cfb4bd3 Jding/71/tup 24109 unable to test expression builder (#3843)
* fix(TUP-24109)unable to test Expression Builder of tMap (#3799)

* fix(TUP-24109)unable to test Expression Builder of tMap
https://jira.talendforge.org/browse/TUP-24109

* fix(TUP-24109)unable to test Expression Builder of tMap
https://jira.talendforge.org/browse/TUP-24109

* fix(TUP-24109)unable to test Expression Builder of tMap (#3839)

https://jira.talendforge.org/browse/TUP-24109

Conflicts:
	pom.xml
2019-08-20 15:01:10 +08:00
jiezhang-tlnd
6fa8c09795 fix(TUP-24159)XML metadata wizard showing inconsistent view on V711 (#3838)
comparing with V6 Studio
https://jira.talendforge.org/browse/TUP-24159
2019-08-20 10:26:21 +08:00
Zhiwei Xue
c55b3e8224 fix(TUP-23637):7.x missing local_project for big data spark batch job (#3671) (#3825) 2019-08-16 18:53:17 +08:00
jzhao
ed84274f55 fix(TDI-42812):tRedshifBulkExec should hide access key and secret key when datasource is not S3(#3809) 2019-08-15 16:41:03 +08:00
pyzhou
8b4b52e2d7 fix(TDI-42725):change the groupID for Exa jar (#3817) 2019-08-13 17:46:18 +08:00
jiezhang-tlnd
5a8d9b270a fix(TUP-24159)XML metadata wizard showing inconsistent view on (#3810)
V711comparing with V6 Studio
https://jira.talendforge.org/browse/TUP-24159
2019-08-12 10:43:24 +08:00
Stéphane Bouchet
22e74c8a46 TESB-26300: disable message dialog when checking build errors (#3654)
* TESB-23600 : do not open dialog anymore when checking errors

* TESB-23600 : refactor/cleanup

Conflicts:
	main/plugins/org.talend.designer.runprocess/src/main/java/org/talend/designer/runprocess/JobErrorsChecker.java
2019-08-09 14:54:20 +02:00
Denis Sergent
e04a3d3d0f Merge branch 'maintenance/7.1' of git@github.com:Talend/tdi-studio-se.git into maintenance/7.1 2019-08-09 14:24:44 +02:00
hzhao-talendbj
7e9bcaa3ce fix(TUP-24034)tETLoutput schema getting changed to Built-in from (#3804)
repository when changes are made in the map
2019-08-08 20:01:24 +08:00
Chao MENG
bafb86fd13 Cmeng/bugfix/tup 23914 json wizard encoding (#3771) (#3778)
* fix(TUP-23914): JSON with accented characters is not being recognized
when creating a new JSON file in Metadata.
https://jira.talendforge.org/browse/TUP-23914
2019-08-06 15:51:07 +08:00
wang wei
16144466a2 fix(TDI-42687): Enable AWS ECS role for S3 component (#3770) 2019-08-06 10:20:35 +08:00
wang wei
dea917d982 fix(TDI-42705): tSAPBwInput component gives compilation error (#3739) 2019-07-31 09:57:50 +08:00
apoltavtsev
198bc0f3a2 TESB-24900 Undeploying a Data Service causes "Exception in opening zip file" 2019-07-29 10:59:53 +03:00
Jane Ding
07001df6e4 Jding/71/tup 23789 pom files are not generated (#3753)
* fix(TUP-23789)Pom files are not generated sometimes for the jobs in (#3738)

* fix(TUP-23789)Pom files are not generated sometimes for the jobs in
7.1.1
https://jira.talendforge.org/browse/TUP-23789

* fix(TUP-23789)Pom files are not generated sometimes for the jobs in
7.1.1
https://jira.talendforge.org/browse/TUP-23789
Add a junit.

* fix(TUP-23789)Pom files are not generated sometimes for the jobs in
7.1.1
https://jira.talendforge.org/browse/TUP-23789
2019-07-24 17:14:42 +08:00
sponomarova
8c5025864a fix(TBD-8853): removed too small total timeout for service account (#3659) (#3735) 2019-07-19 12:57:50 +03:00
pyzhou
ca7b16f0b7 fix(TDI-42572):upgrade EXAUtil version (#3719)
* fix(TDI-42572):upgrade EXAUtil version

* Change the mvn path
2019-07-19 15:29:37 +08:00
vyu-talend
c1d5b0a364 Fix(TDI-42572):Improvement for generating correct format to Exasol (#3677)
* Fix(TDI-42572):Improvement for generating correct format to Exasol

* Fix(TDI-42572):Using checkbox
2019-07-19 15:29:23 +08:00
Hanna Liashchuk
2e58698ec4 fix(TBD-8925): table won't be created unless createTable option is checked OAuth (#3686) (#3728) 2019-07-17 18:54:06 +03:00
wang wei
b213af471d fix(TDI-42380): Migration issues in the Studio after migrating the jobs from 6.5 to 7.1(#3648) 2019-07-17 14:23:13 +08:00
Denis Sergent
0bba491a6c TESB-26086 Adding missing context files to published artifacts (#3717)
This fix is intended to include context files in a data service
published artifact. When a dataservice job is published for the first
time and was never build from Studio before, published artifact was
missing the context files.
2019-07-16 16:13:10 +02:00
Denis Sergent
73afef650a TESB-26086 Adding missing context files to published artifacts
This fix is intended to include context files in a data service
published artifact. When a dataservice job is published for the first
time and was never build from Studio before, published artifact was
missing the context files.
2019-07-15 14:45:18 +02:00
slushatel
370bb3b45f feat(TDI-42570): stop process if parent thread has terminated, add log wrapper for tos studio (#3715)
(cherry picked from commit b4196f3ade)
2019-07-15 15:27:15 +03:00
zshen-talend
5482996b64 chor(TDQ-17069): back port on 7.1 (#3618) 2019-07-15 15:53:17 +08:00
hcyi
53e982764f fix(TUP-23743):ERROR when Job in MDM project calling Job in Reference DI (#3710)
project routines cannot be resolved.
2019-07-15 11:40:23 +08:00
slushatel
c7f4fae107 Tdi 42570 stop process when thread stops (#3676)
* feat(TDI-42570): stop process if parent thread has terminated

* feat(TDI-42570): stop process if parent thread has terminated

* feat(TDI-42570): stop process if parent thread has terminated. improve indentation

* feat(TDI-42570): stop process if parent thread has terminated. improve indentation

(cherry picked from commit 9e8d8785c2)
2019-07-09 15:39:17 +03:00
Jane Ding
c098f6a10d fix(TUP-23663)The connection row between components is getting activated (#3687) (#3693)
* fix(TUP-23663)The connection row between components is getting activated
unexpectedly when using tMSXMLInput component
https://jira.talendforge.org/browse/TUP-23663

* fix(TUP-23663)The connection row between components is getting activated
unexpectedly when using tMSXMLInput component
https://jira.talendforge.org/browse/TUP-23663

* fix(TUP-23663)The connection row between components is getting activated
unexpectedly when using tMSXMLInput component
https://jira.talendforge.org/browse/TUP-23663

* fix(TUP-23663)The connection row between components is getting activated
unexpectedly when using tMSXMLInput component
https://jira.talendforge.org/browse/TUP-23663

* fix(TUP-23663)The connection row between components is getting activated
unexpectedly when using tMSXMLInput component
https://jira.talendforge.org/browse/TUP-23663
2019-07-09 18:49:42 +08:00
Irene Wang
f854d5b81f Revert "DEVOPS-3416 Deploy all plugins for Black Duck scans"
This reverts commit 1ce0e429ca.
2019-06-28 12:16:50 +02:00
apoltavtsev
3ff32d37d8 TESB-26293 Duplicated libraries in private & import packages of the build manifest file 2019-06-28 08:43:32 +03:00
Chao MENG
849331bac9 fix(TUP-23594): NullPointerException when using the build job wizard. (#3651)
fix(TUP-23594): NullPointerException when using the build job wizard. 
https://jira.talendforge.org/browse/TUP-23594
2019-06-24 18:22:57 +08:00
jiezhang-tlnd
ed05b49731 Jzhang/bugfix/maintenance71/tup 23510 there is compile error job in tdi demo project (#3650)
* bugfix(TUP-23510):There is compile error job in TDI demo project (#3622)

* bugfix(TUP-23510):There is compile error job in TDI demo project (#3628)
2019-06-24 15:32:10 +08:00
jiezhang-tlnd
cf58712bfb fix(TUP-23389)tMap - cannot edit schema (#3642)
fix(TUP-23389)tMap - cannot edit schema
2019-06-20 17:54:53 +08:00
kjwang-talend
4436b2e94a TUP-22955 java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver (Fix can't guess query problem) (#3607) (#3609)
* TUP-22955 java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver (Fix
can't guess query problem)
https://jira.talendforge.org/browse/TUP-22955

* TUP-22955 java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver (Fix
can't guess query problem)
https://jira.talendforge.org/browse/TUP-22955
2019-06-14 16:10:47 +08:00
hwang-talend
6180151b6c bugfix(TUP-23322):context value doesn't update after publishing the job (#3555) (#3580)
bugfix(TUP-23322):context value doesn't update after publishing the job to release repository
2019-06-11 18:27:44 +08:00
Stéphane Bouchet
b0fedb89de TESB-25939 : fix context update when building route and job (#3563) 2019-06-07 18:27:53 +02:00
sponomarova
0ebe02b272 fix(TBD-8649)_maint_711: tBigQueryInput doesn't contain field "Result Size" in service account (#3553)
* fix(TBD-8649): activated option allowLargeResult for BigQuery service… (#3485)

* fix(TBD-8649): activated option allowLargeResult for BigQuery service account

* Update tBigQueryInput_begin.javajet

* Update tBigQueryInput_begin.javajet

* Update tBigQueryInput_begin.javajet

* fix(TBD-8649): activated option allowLargeResult for BigQuery service account
2019-06-07 12:08:37 +03:00
vyu-talend
38cc004f7b Fix(TDI-42407):Fix the issue of lose data. 2019-05-31 18:36:00 +08:00
wchen-talend
daa7bf38ce fix(TUP-22955):java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver (#3526) (#3532) 2019-05-31 14:26:20 +08:00
jzhao
6e521aa917 fix(TDI-42356):ClassCastException with dynamic schema and data source
alias from table with column of type nvarchar(max) (#3504)

* fix(TDI-42356):ClassCastException with dynamic schema and data source
alias from table with column of type nvarchar(max)

* TalendNTextImpl from talend lib to a patched jtds
* Add maven project to build patched jtds with TalendNTextImpl
* update talend lib talend_DB_mssqlUtil
* update depends on component side

* fix(TDI-42356):exclude jtds jar in osgi bundle

* fix(TDI-42356):fix missing changes for stats and logs with database
config

* fix(TDI-42356):change the GAV of build jar and maven path in
components

* fix(TDI-42356):change the version of jar
2019-05-28 12:18:25 +08:00
Emmanuel GALLOIS
4d79609493 fix(TDI-41920): fix encoding issue when file.encoding is not utf8 (#3353)
(cherry picked from commit 9312e207c8)
2019-05-27 11:47:41 +02:00
Nicolas Rousseau
4dac37e07e Revert "fix(TUP-22906): Job working in 6.3.1 fails to generate in 7.1.1 : Failed (#3453)"
This reverts commit 1e8bb0243f.
2019-05-25 23:25:03 +08:00
Jane Ding
c507649cbf fix(TUP-22147)There is a NPE error when closing studio (#3443) (#3509)
* fix(TUP-22147)There is a NPE error when closing studio

* fix(TUP-22147)There is a NPE error when closing studio
2019-05-24 14:55:20 +08:00
zshen-talend
4c08b6b1ff Zshen/bugfix/tdq 16872 make sure shawdom job keep custom attribute (#3490)
* fix(TDQ-16872): Migration for correctly "Custom Matcher" parameter on (#3470)
tmatchGroup component
* fix(TDQ-17050): Change the version of the migration to 7.1.2 because of
the code will use in 7.1
2019-05-21 15:09:39 +08:00
hwang-talend
981392f977 bugfix(TUP-22887):sorting schema order cause a tMatchgroup regression (#3496) (#3497)
bugfix(TUP-22887):sorting schema order cause a tMatchgroup regression
2019-05-21 15:00:10 +08:00
Chao MENG
0447d271e0 fix(TUP-22713): Possible thread lock during git update operation (#3449) (#3455)
* fix(TUP-22713): Possible thread lock during git update operation
https://jira.talendforge.org/browse/TUP-22713
2019-05-17 14:15:40 +08:00
sponomarova
a65db5f3fb fix(TBD-8603): tHiveRow compile error (#3425) (#3481) 2019-05-15 16:34:15 +02:00
Chao MENG
5e3588ff80 fix(TUP-22906): Job working in 6.3.1 fails to generate in 7.1.1 : Failed (#3453) (#3467)
fix(TUP-22906): Job working in 6.3.1 fails to generate in 7.1.1 : Failed to generate code. /java.lang.reflect.InvocationTargetException
2019-05-14 16:28:17 +08:00
jiezhang-tlnd
5929d40a0f fix(TUP-22520)tDBConnection is not used in the tDB components Joblet issue (#3454) (#3466)
* fix(TUP-22520)tDBConnection is not used in the tDB components Joblet
issue

* fix(TUP-22520)tDBConnection is not used in the tDB components - Joblet
issue
2019-05-14 14:41:52 +08:00
vyu-talend
a35f91d12e Fix(TDI-42300):Make variable name unique 2019-05-10 11:08:29 +08:00
Carlos Carvajal
b3427985ad fix(TBD-8566): correct context var replacement in subqueries (#3420) (#3460) 2019-05-09 15:12:11 +02:00
wang wei
fb9764306c fix(TDI-42239): tLogCatcher and tAssertCatcher cause compilation error when used together(#3432) 2019-05-06 13:59:20 +08:00
hwang-talend
0edee6a5db Hwang/tup 22649 (#3413) (#3440)
bugfix(TUP-22649):tELTOracleMap : wrong Generated SQL Select query after
patch TPS-2944
2019-04-29 16:24:55 +08:00
Jane Ding
ddc38d0d2d fix(TUP-22681)Job in CI Builder gets generated and deployed, but doesn't (#3427) (#3435)
show as a Tag
https://jira.talendforge.org/browse/TUP-22681
2019-04-29 09:57:00 +08:00
Jane Ding
826694ab1d fix(TUP-22804)Job with component tSAPIDOCOutput not getting built (#3430) (#3433)
https://jira.talendforge.org/browse/TUP-22804
2019-04-26 11:10:11 +08:00
Hanna Liashchuk
66336b5c7b fix(TBD-8573): correct parsing date values from BigQuery (#3429) 2019-04-24 13:37:35 +03:00
wang wei
3c84a1865a fix(TDI-42186): sure to close the stream (#3428) 2019-04-24 12:32:31 +08:00
wang wei
e4cbcf6e1d fix(TDI-42141): tReplacelist not replacing in order (#3398) 2019-04-22 11:07:26 +08:00
hwang-talend
d13ce8e033 bugfix(TUP-22435):tMap lost look-up details (#3404)
bugfix(TUP-22435):tMap lost look-up details
2019-04-17 18:00:57 +08:00
TKaczynski
eea0b918bc fix(TBD-8343): NoSuchMethodError when Having tGSConnection and tS3Connection Components Within one Job # (#3409) 2019-04-17 08:46:31 +02:00
wang wei
3dae8268a1 fix(TDI-42172): not import activemq jar for ESB runtime (#3411) 2019-04-17 10:37:47 +08:00
Jane Ding
5d40d9aa80 fix(TUP-22620)java.lang.StackOverflowError exception when opening the (#3402) (#3406)
job in studio
https://jira.talendforge.org/browse/TUP-22620
Since my new added test testCheckCircle is the first one to execute, it
used common variable node broke other test balance. Modify to use it own
private variable.
2019-04-15 18:39:53 +08:00
apoltavtsev
c66242498d TESB-25479 Switching to activemq 5.15.5 (#3385)
* TESB-25479 Switching to activemq 5.15.5

* Switching to activemq 5.15.5 for tMomInputLoop

* Switching to activemq 5.15.5 for tMomOutput

* fix the maven path
2019-04-12 14:36:13 +08:00
hwang-talend
d66a99f465 Revert "bugfix(TUP-21895):An error has occurred. UNEXPECTED_EXCEPTION when (#3217)" (#3397)
This reverts commit 52ef80d962.
2019-04-12 10:21:41 +08:00
TKaczynski
f4124c696b fix(TBD-8343): NoSuchMethodError when Having tGSConnection and tS3Connection Components Within one Job (#3379) (#3400) 2019-04-11 11:25:26 +02:00
Zhiwei Xue
2d8ea71237 fix(TUP-22619):Miss item files in final zip when publishing job in (#3388)
commandline
2019-04-11 17:21:51 +08:00
Jane Ding
f3f8c6e241 fix(TUP-22620)java.lang.StackOverflowError exception when opening the (#3391) (#3399)
* fix(TUP-22620)java.lang.StackOverflowError exception when opening the
job in studio
https://jira.talendforge.org/browse/TUP-22620

* fix(TUP-22620)java.lang.StackOverflowError exception when opening the
job in studio
https://jira.talendforge.org/browse/TUP-22620
2019-04-11 17:16:10 +08:00
wang wei
8bdbf54702 fix(TDI-41894): Randomly the job fails with "java.security.SignatureException: Invalid encoding for signature" error. (#3323) 2019-04-11 10:30:27 +08:00
hcyi
5a31dee1e6 fix(TUP-22521):tHiveMap- Unexpected SQL syntax for 'case when (#3373)
...then....else' condition.
2019-04-08 15:26:29 +08:00
Jane Ding
54ea80c057 fix(TUP-21920)Nullpointer on build job (#3336) (#3369)
https://jira.talendforge.org/browse/TUP-21920
Loop dependency classpath issue caused main class not found
2019-04-03 16:20:09 +08:00
Jane Ding
026da45e5f fix(TUP-22269)Twebservice throwing Null Pointer Exception (#3364) (#3367)
https://jira.talendforge.org/browse/TUP-22269
2019-04-03 10:47:51 +08:00
Zhiwei Xue
8008c962eb fix(TUP-22438):Null pointer exception when executing the jobs. (#3365) 2019-04-03 10:39:20 +08:00
wang wei
8434786772 fix(TDI-42072): NullPointerException when using the tDie component in the child job and execute the job from the parent job.(#3352) 2019-04-02 16:17:17 +08:00
Jane Ding
9b6cc94bb3 fix(TUP-22342)Joblet referring to objects that do not exist (#3355) (#3358)
https://jira.talendforge.org/browse/TUP-22342
2019-04-02 15:32:57 +08:00
slushatel
5d8beaf970 feat(TDI-41963): change jdbc driver version from 1.2.16.1027 to 1.2.2… (#3327)
* feat(TDI-41963): change jdbc driver version from 1.2.16.1027 to 1.2.20.1043

* feat(TDI-41963): change redshift module name to "redshift-jdbc42-no-awssdk-1.2.20.1043.jar"

(cherry picked from commit 2307f13545)
2019-04-01 15:02:25 +03:00
Dmytro Sylaiev
4767634e17 fix(TDI-42024): Change execProt and execPBSZ order (#3333) 2019-04-01 13:00:52 +03:00
wang wei
9d2393ac06 fix(TDI-41898): Comment in the query in tJDBCInput component does not work if the job is migrated from 6.2.1 to 7.1.1(#3334) 2019-03-28 14:15:16 +08:00
Jane Ding
8dcab9ecc7 fix(TUP-22269)Twebservice throwing Null Pointer Exception (#3349) (#3351)
https://jira.talendforge.org/browse/TUP-22269
2019-03-28 11:46:56 +08:00
sponomarova
4aabe7d7ec fix(TBD-8496): field separator for service account bigquery (#3329) (#3341) 2019-03-22 15:32:53 +02:00
sponomarova
3cc9e21102 fix(TBD-8484): REQUIRED/NULLABLE columns are created according to schema (#3324) (#3340) 2019-03-22 14:44:16 +02:00
sponomarova
af92dc5b76 Hliashchuk/fix/tbd 8356 bigquery empty strings (#3322) (#3339)
* fix(TBD-8356): empty strings handling in bigquery

* fix(TBD-8356): service account empty strings support
2019-03-22 14:44:02 +02:00
sponomarova
bc0e2f7260 fix(TBD-7153): Fixed missing mappings for BigQuery (#3291) (#3337) 2019-03-22 12:51:20 +02:00
apoltavtsev
7cc6f6ac15 TESB-24730 Services no longer accessible ( NPE) after route deployment 2019-03-21 09:50:15 +03:00
Denis Sergent
2751dfe852 TESB-25045 Authorize Docker Build for job with tRESTClient (#3328)
Fix for side effect disabling Docker build
2019-03-20 16:13:36 +01:00
Vladimir Bogatyrov
16aa76f641 [TESB-25164] Intermittent "ClassNotFoundException: javax.mail.Address" errors 2019-03-20 09:25:12 +02:00
wang wei
692dcc9d02 fix(TDI-41188): map Snowflake Time type to Talend Date instead of Talend Integer (#2945) (#3325) 2019-03-20 14:17:10 +08:00
chmyga
f72e50612c fix(TDI-41951): special chars in column comment (#3318)
* Use text escape method usage in SPSOutput and SalesforceWaveBulkExec components
2019-03-19 14:36:45 +02:00
kjwang-talend
ffdf68dc06 kjwang/Fix-TUP-21903 tSalesForceConnection fix junit (#3314) (#3316)
https://jira.talendforge.org/browse/TUP-21903
2019-03-15 14:59:09 +08:00
kjwang-talend
686c47fa3e fix(TUP-21903):tSalesForceConnection JWT flow does not work with Context (#3254) (#3310)
* fix(TUP-21903):tSalesForceConnection JWT flow does not work with Context
group variable set for connection type Oauth.
2019-03-13 16:34:17 +08:00
pyzhou
5b4a39fab6 fix(TDI-41789): Redshift change migration logic (#3304)
Conflicts:
	main/plugins/org.talend.repository/plugin.xml
2019-03-12 17:03:30 +08:00
pyzhou
db3131e579 Pyzhou/tdi 41910 t s3 check connection (#3303)
* fix(TDI-41910):tS3Connecyion uncheck connection

* add logic to divide job from 6.3.0 or before
2019-03-12 16:34:48 +08:00
hcyi
b3d6f5b488 feat(TUP-21495):Support MFA on studio for the Cloud. (#3253) (#3307)
* feat(TUP-21495):Support MFA on studio for the Cloud.

* feat(TUP-21495):improve for Support MFA on studio for the Cloud.

* feat(TUP-21495):improve for Support MFA on studio for the Cloud.

* feat(TUP-21495):improve for connection GUI part.

* fix(TUP-22063)[bug] when use different cloud type,click ... to fetch
(#3270)

* fix(TUP-22063)[bug] when use different cloud type,click ... to fetch
token will all open the same url.
https://jira.talendforge.org/browse/TUP-22063

* fix(TUP-22063)[bug] when use different cloud type,click ... to fetch
token will all open the same url.
https://jira.talendforge.org/browse/TUP-22063

* fix(TUP-22063)[bug] when use different cloud type,click ... to fetch
token will all open the same url.
https://jira.talendforge.org/browse/TUP-22063

* fix(TUP-22063)[bug] when use different cloud type,click ... to fetch
(#3274)

token will all open the same url.
https://jira.talendforge.org/browse/TUP-22063

* fix(TUP-22144)[bug] UX suggestion for layout of password/token.
https://jira.talendforge.org/browse/TUP-22144

* feat(TUP-21495):TUP-22141 [bug] update and save the connection in
create
connection page will make the token change.

* feat(TUP-21495):TUP-22140 [bug] In create connection page, there is no
response when click ... button to fetch token if the cloud url is
removed.
2019-03-08 15:12:44 +08:00
Dmytro Sylaiev
cc4f98de11 fix(TDI-41897): Fix compile error on generated code (#3294) 2019-03-07 14:59:43 +02:00
Dmytro Sylaiev
d648ce0631 fix(TDI-41808): Fix showing pass as clear text NZLoad (#3269)
* fix(TDI-41808): Fix showing pass as clear text NZLoad

* fix(TDI-41808): Rewrite fix to be more efficient

* chore(TDI-41808): Fix indentation

* fix(TDI-41808): Avoid to show real length of password

* fix(TDI-41808): Use constant from util class
2019-03-07 14:26:42 +02:00
Jane Ding
a590117841 fix(TUP-21920) Nullpointer on build job (#3266) (#3306) 2019-03-07 18:34:41 +08:00
hwang-talend
b02afd0b6b bugfix(TUP-21944):Problem with globalMap.get in tELTOracleOutput (#3301)
bugfix(TUP-21944):Problem with globalMap.get in tELTOracleOutput component
2019-03-07 11:38:39 +08:00
hcyi
c2518d5ff1 fix(TUP-21777):[7.0.1] Metadata Wizard with SSL cannot retrieve cluster (#3296) (#3300)
settings.
2019-03-07 10:29:26 +08:00
Denis Sergent
a0e98fe2ec fix(TESB-24920) (#3286) (#3292)
* TESB-21832 Problems with job/route exec. with local runtime in Studio

Local runtime for Studio job/routes execution should not be used in some
cases: build type has to be checked to define the best execution
processor. As execution processor must change when build type is updated
in deployment tab, processor can not be persisted anymore.

* Studio graphical improvements

Fixed some graphical inconsistencies in Studio (borders, margins...)

* TESB-22230 NPE in build item wizard when changing build type

* TESB-22230 NPE in build item wizard when changing build type

* TESB-22230 NPE in build item wizard when changing build type

* TESB-24920 Default endpoint URI not added to endpoint with cRest

This commit improves the way endpoint URL is displayed in console when a
Route/Dataservice is ran in Studio (in case context variables are used).

* Revert "TESB-24920 Default endpoint URI not added to endpoint with cRest"

This reverts commit 0f43b7d406.

* TESB-24920 Default endpoint URI not added to endpoint with cRest

This commit improves the way endpoint URL is displayed in console when a
Route/Dataservice is ran in Studio (in case context variables are used).
2019-03-05 17:39:40 +01:00
Denis Sergent
0ecf059e06 TESB-25045 Authorize Docker Build for job with tRESTClient (#3295)
Jobs containing tRESTClient or tESBConsumer components can be build as
Job standalone. Thereby it is now also possible to package build as a
Docker image. This commit also improve the way error messages are
managed in build wizard: before, a displayed error message could wrongly
disappear because of new controls for docker export details.
2019-03-05 17:38:50 +01:00
Zhiwei Xue
18dcaa912e fix(TUP-22000):remove job cache when deleting job. (#3284) 2019-03-05 10:53:55 +08:00
Mike Yan
95c213d78d fix(TUP-21983): fixed Compile failed for MSESB_IMAGE type (#3288) 2019-03-04 15:07:47 +08:00
hwang-talend
07d52b8207 bugfix(TUP-21944):Problem with globalMap.get in tELTOracleOutput (#3262)
bugfix(TUP-21944):Problem with globalMap.get in tELTOracleOutput component
2019-03-04 11:17:42 +08:00
Emmanuel GALLOIS
62bc03fce1 fix(TDI-41795): migrate correctly connection and linked connection (#3251)
* fix(TDI-41795): migrate correctly connection and linked connection
* fix(TDI-41795): fix invalid char in properties files
* chore(TDI-41795): do net set value at each property, just once
* fix(TDI-41795): correct NPE for tGoogleDriveCopy/Put
* fix(TDI-41795): do not corrupt tcompv0 components
  - fix migration version and breaks
  - do not execute migration for tcompv0 components

(cherry picked from commit c23955d51f)
2019-02-26 09:49:06 +01:00
Zhiwei Xue
1b9001bb4a fix(TUP-21983):NullPointerException When publishing a job as docker (#3259) 2019-02-26 16:00:50 +08:00
pyzhou
4332e04aed Pyzhou/TDI-41789 t redshift fixed log path (#3260)
* fix(TDI-41789): tRedshift require log file path

* redirect log to console

* change tab to space

Conflicts:
	main/plugins/org.talend.repository/plugin.xml
2019-02-26 14:48:50 +08:00
jiezhang-tlnd
9d4447b34f fix(TUP-21849)Salesforce name was changed while it is being edited for spec (#3250) (#3255)
* fix(TUP-21849)Salesforce name was changed while it is being edited for
spec

* fix(TUP-21849)Salesforce: name was changed while it is being edited for
spec
2019-02-21 14:23:32 +08:00
pyzhou
55d1005883 fix(TDI-41665):shutdown transfer manager right after download. (#3239)
* fix(TDI-41665):shutdown transfer manager right after download.

* correct EOF

* get shutdown method out of the use conn logic
2019-02-19 17:59:28 +08:00
apoltavtsev
fd853ea406 TESB-24784 Propagation of Connection extra properties is added (#3246)
* TESB-24784 Propagation of Connection extra properties is added

* Propagation of Connection extra properties is added
2019-02-18 08:55:28 +01:00
msjian
eb2e2de35c fix(TDQ-10842): fix can export the user define report template files (#3241) 2019-02-18 15:35:37 +08:00
Antoine Parent
c5080e8131 fix(TBD-8299): Compile error on BigQuery Component (#3235)
Error was fixed for one component, but still present when multiple
components were used.
Changed the <%cid%> to <%=cid%>
2019-02-15 16:42:35 +01:00
Antoine Parent
2d52068314 fix(TBD-8299): tBigQueryOutput compile error (#3225)
Add a <%cid%> to prevent a compile error when using more than one
tBigQueryOuput
2019-02-15 16:42:24 +01:00
Antoine Parent
20da6e89bb fix(TBD-8102): tBigQueryInput compile error (#3222)
Just add a <%cid%> to prevent a compile error when more using more than
one tBigQueryInput
2019-02-15 16:33:45 +01:00
hcyi
1609b68ec7 fix(TUP-21888):NPE when importing job. (#3236) 2019-02-13 16:27:16 +08:00
hwang-talend
52ef80d962 bugfix(TUP-21895):An error has occurred. UNEXPECTED_EXCEPTION when (#3217)
opening job migrated 6.4.1 to 7.1.1 (job using tJDBCInput)
2019-02-13 16:19:47 +08:00
apoltavtsev@gmail.com
6a0298d19c TESB-22085 Missing import statement is added 2019-02-12 12:10:46 +03:00
apoltavtsev
893b43791a TESB-22085:Dynamic schema column type is always String in Runtime 2019-02-11 11:01:12 +03:00
Laurent BOURGEOIS
e3e802dcd1 fix(TBD-8301) : Use Regional Location for BigQuery datasets (#3228) (#3229) 2019-02-07 16:35:13 +01:00
Antoine Parent
8fe82b64de Aparent/TPS-2891 (#3227)
* fix(TBD-8260): fix for tBigQueryOutput which always treats Integer schema as Nullable (#3200)

* fix(TBD-8260): compile error for tBigQueryOutput (#3210)

* fix(TBD-8269): Talend is automatically converting BigDecimal type to String (#3211)

* fix(TBD-8242): Compilation error for tFileInputDelimited/tFixedFlowInput with int type not nullable (#3193)
2019-02-07 11:41:10 +01:00
jiezhang-tlnd
f6e5c968cd fix(TUP-21836)Display of SFTP Metadata (#3201) (#3208)
* fix(TUP-21836)Display of SFTP Metadata

* fix(TUP-21836)Display of SFTP Metadata
2019-01-30 18:10:20 +08:00
Tao Tao
226c06a88a Ttao/backport/tup 20927 automatic scrolling in execution console log (#3206)
* fix(TUP-20927)Automatic scrolling in execution console prevent upper log (#2845)

* fix(TUP-20927)Automatic scrolling in execution console prevent upper log
messages checking
https://jira.talendforge.org/browse/TUP-20927

*     fix(TUP-20927)Automatic scrolling in execution console prevent upper log messages checking
    https://jira.talendforge.org/browse/TUP-20927

* Fixed(TUP-20927)Automatic scrolling in execution console prevent upper log messages checking (#2890)

https://jira.talendforge.org/browse/TUP-20927

* fix(TUP-20927)Automatic scrolling in execution console prevent upper log (#2929)

messages checking

* Fix(TUP-21161)can't use the up-arrow button or scroll bar to locate at (#2959)

the top when the gap is too small

https://jira.talendforge.org/browse/TUP-21161

* bugfix(TUP-21336): Run view console result is not synchronized when I (#3067)

switch different job on job editor

https://jira.talendforge.org/browse/TUP-21336
2019-01-30 11:06:38 +08:00
Dmytro Sylaiev
a258c4e630 fix(TDI-41678): Upgrade custom lib version to avoid compile error (#3202)
* fix(TDI-41678): Upgrade custom lib version to avoid compile error

* fix(TDI-41678): Make timestamp-version
2019-01-28 14:16:58 +02:00
hcyi
adab2d7423 fix(TUP-21648):tJDBCSCDELT table list cannot be retrieved. (#3187) 2019-01-25 14:20:26 +08:00
Zhiwei Xue
08256bd17c fix(TUP-21532):re-fix child assembly problem. (#3181) (#3183) 2019-01-22 14:27:39 +08:00
Zhiwei Xue
b39b600aee fix(TUP-21532):fix StandardJobStandaloneBuildProviderTest (#3175) 2019-01-17 16:51:59 +08:00
Dmytro Sylaiev
43af7e8f79 feat(TDI-40990): Add http proxy support for ftps (#3080)
* feat(TDI-40990): Add http proxy support for ftps

* Avoid set PROT and PBSZ commands

* feat(TDI-40990): Allign using proxy marker

* feat(TDI-40990): Remove SSLReuse class from template

* feat(TDI-40990): Use correct constructor

* feat(TDI-40990): Bound FTP components to proxy-support ftps library

* feat(TDI-40990): Make talend-commons-net library included to studio

* Bound all ftp components except tFTPConnection to UrlPath

* feat(TDI-40990): Use HTTP proxy when it's set for FTPS

* chore(TDI-40990): Change package name for custom clients
2019-01-16 10:34:27 +02:00
Dmytro Sylaiev
b8cb379ce8 Dsylaiev/tdi 40990 support ftps http proxy commons net prot p (#3146)
* feat(TDI-40990): Add talend-commons-net library

* feat(TDI-40990): Add distribution section to deploy lib in nexus

* chore(TDI-40990): Use talend formatter

* feat(TDI-40990): Extract SSLSessionReuseFTPSClient behavior

* feat(TDI-40990): Rename ProxyClient

* chore(TDI-40990): Minor refactoring

* Use while instead of for

* chore(TDI-40990): Remove eclipse service files

* chore(TDI-40990): Change package name

* feat(TDI-40990): Extends talend-commons-net library to support PROT C

* Major refactoring

* chore(TDI-40990): Make methods order more reasonable

* chore(TDI-40990): Add comments

* Fix using default PROT level
2019-01-16 10:34:11 +02:00
jzhao
dccaacef8e fix(TDI-41506):High CVE Vulnerability found in Talend Components (#3119)
* upgrade commons-fileupload from 1.0 to 1.3.1
* upgrade xalan/serializer from 2.7.1 to 2.7.2
* remove serializer-2.7.1
2019-01-16 16:21:33 +08:00
Zhiwei Xue
98160e5aed fix(TUP-21532): fix run job and assembly problem. (#3168) 2019-01-16 10:36:51 +08:00
hcyi
3dd18ce8b4 fix(TUP-20508):Audit: Generating cannot be finished and canceled after (#2957) (#3167)
30 mins.
2019-01-16 10:35:25 +08:00
hcyi
6a128dcd44 fix(TUP-21648):tJDBCSCDELT table list cannot be retrieved. (#3158) 2019-01-10 16:10:14 +08:00
Zhiwei Xue
9c4302cf17 fix(TUP-21596):exclude tLibraryLoad jars for independent subjob. (#3147) 2019-01-09 10:26:25 +08:00
Tao Tao
e86211e74d bugfix(TUP-21564):tMap settings - the "Options" window pop-up not (#3136) (#3140)
showing complete view

https://jira.talendforge.org/browse/TUP-21564
2019-01-08 15:35:09 +08:00
Mike Yan
fce35ea640 fix(TESB-24336): Add route and service type for local runtime mode (#3144) 2019-01-04 16:15:53 +08:00
Roman
8f530406a1 fix(TDI-41556): Redshift driver name was changed (#3096) (#3138)
* fix(TDI-41556): Redshift driver name was changed

* fix(TDI-41556): moved the creation of array outside loop
2019-01-03 17:08:08 +02:00
Dmytro Sylaiev
a9145e05ad Dsylaiev/tdi 41404 backport to 71 (#3123)
* fix(TDI-41404): Avoid 64kb method issue when too many context paramet… (#3025)

* fix(TDI-41404): Avoid 64kb method issue when too many context parameter exists

* fix(TDI-41404): Regain missing warnings

* Dsylaiev/tdi 41404 fix 64kb issue t run job context (#3087)

* fix(TDI-41404): Avoid 64kb method issue when too many context parameter exists

* fix(TDI-41404): Regain missing warnings

* fix(TDI-41404): Fix wrong context processing in footer
2019-01-03 16:59:05 +02:00
Zhiwei Xue
63bd4a1253 fix(TUP-21532):fix junit. (#3141) 2019-01-03 16:31:55 +08:00
Zhiwei Xue
7ab15ba51c fix(TUP-21532):Standard DI job which refers to big data batch job having (#3120) (#3130)
* fix(TUP-21532):Standard DI job which refers to big data batch job having
S3 component and standard DI job having S3 connection component fails
with an error.

* fix(TUP-21532):add JUnit
2019-01-02 15:22:46 +08:00
SunChaoqun
0e754dafca TESB-24354:SFTP proxy bean not recognized in runtime only (#3133) 2019-01-02 14:28:31 +08:00
Jane Ding
773cf557cf fix(TUP-21425)Job built in 7.0.1 not working in 7.1.1 (#3106) (#3115)
https://jira.talendforge.org/browse/TUP-21425
2018-12-26 18:47:29 +08:00
Chao MENG
4888bd71fd fix(TUP-21474): Facing issue while accessing joblet present on job in (#3112)
fix(TUP-21474): Facing issue while accessing joblet present on job in main project
https://jira.talendforge.org/browse/TUP-21474
2018-12-26 14:26:17 +08:00
Chao MENG
fbd94e6fde fix(TUP-21474): Facing issue while accessing joblet present on job in (#3105) (#3110)
fix(TUP-21474): Facing issue while accessing joblet present on job in main project
https://jira.talendforge.org/browse/TUP-21474
2018-12-25 18:29:39 +08:00
hwang-talend
5528ba12b5 bugfix(TUP-20663):tAccessOutputBulkExec/tAccessBulkExec are visible at (#3053)
bugfix(TUP-20663):tAccessOutputBulkExec/tAccessBulkExec are visible at default even without activating in the Project Setting
2018-12-25 14:53:55 +08:00
Jane Ding
015c47b701 fix(TUP-21333)OnSubJob Links Not Working (#3079) (#3103)
https://jira.talendforge.org/browse/TUP-21333
2018-12-24 11:44:33 +08:00
zwxue
4181c69924 fix(TUP-21175):fix BuildJobHandlerTest for TDM (#3095) (#3100) 2018-12-24 10:05:56 +08:00
jiezhang-tlnd
297f4ca718 fix(TUP-21396)keeping popup for running a job after adding a var in (#3070) (#3089)
context group
2018-12-20 09:59:49 +08:00
zwxue
cb3eeb5f00 fix(TUP-21175):fix JUnit (#3085)
* fix(TUP-21175):fix JUnit (#3039)

* fix(TUP-21175): fix Junits. (#3064)

* fix(TUP-21175):fix test BuildJobHandlerTest.testBuildJobWithTDM (#3084)
2018-12-19 19:10:23 +08:00
hcyi
60418702d5 fix(TUP-21167):Install Additional Packages has no available modules. (#3062) (#3081) 2018-12-17 19:07:50 +08:00
hcyi
d537d51b6a fix(TUP-21356):talend-bigdata-launcher-1.2.0-20170410.jar not found when (#3077)
spark job launched from standard job by jobserver.
2018-12-14 19:16:16 +08:00
Chao MENG
88e7223e60 fix(TUP-21461): Routine libraries can't be updated to pom.xml of routine (#3074)
fix(TUP-21461): Routine libraries can't be updated to pom.xml of routine in special case
https://jira.talendforge.org/browse/TUP-21461
2018-12-14 18:24:53 +08:00
chmyga
e66c45bc8a fix(TDI-41469): tFileUnarchive zip64 format error (#3026) (#3065)
* fix(TDI-41469): tFileUnarchive zip64 format error

* Use apache commons compress in checkArchive lib

* fix(TDI-41469): tFileUnarchive zip64 format error

* Remove unused method
2018-12-13 13:49:21 +02:00
Dmytro Sylaiev
18d5a99c5d Dsylaiev/tdi 41507 backport to 71 (#3060)
* Dsylaiev/tdi 41440 update jackson databind version in custom lib (#3002)

* fix(TDI-31328): Add default datePattern to SVNLogInput locked schema

* fix(TDI-41440): Update jackson-databind version

* Dsylaiev/tdi 41440 update jackson databind version in custom lib (#3037)

* fix(TDI-31328): Add default datePattern to SVNLogInput locked schema

* fix(TDI-41440): Update jackson-databind version

* fix(TDI-41440): Add nexus repos for maven deploy

* Dsylaiev/tdi 41440 update jackson databind version in custom lib (#3043)

* fix(TDI-31328): Add default datePattern to SVNLogInput locked schema

* fix(TDI-41440): Update jackson-databind version

* fix(TDI-41440): Add nexus repos for maven deploy

* fix(TDI-41440): Add missing nexus uri

* fix(TDI-41440): Remove redundant UTF-8 property
2018-12-11 11:31:50 +02:00
pyzhou
b4aeedc543 Pyzhou/tdi 41474 s3 check connection option (#3035) (#3036)
* fix(TDI-41474):S3 check connection option.

* change EOF
2018-12-11 10:05:40 +08:00
Tao Tao
5ce507ad14 bugfix(TUP-21356):"talend-bigdata-launcher-1.2.0-20170410.jar" not found (#3054) (#3057)
when spark job launched from standard job by jobserver

https://jira.talendforge.org/browse/TUP-21356?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel
2018-12-10 14:45:17 +08:00
nrousseau
fcef3bc66b fix(TUP-21175) avoid exception during junit execution 2018-12-10 10:18:48 +08:00
hwang-talend
1491a5739a bugfix(TUP-21134):"Throw an error if the file already exist" is ticked (#3031)
#2052
2018-12-07 11:49:26 +08:00
Jane Ding
67311d9d7f fix(TUP-21138)Ubuntu18: Resources: Job which uses Resources run failed (#3046) (#3050)
if its name contains uppercase letter
https://jira.talendforge.org/browse/TUP-21138
2018-12-06 11:15:53 +08:00
Jane Ding
125a3fdfb8 fix(TUP-21245)faile to check JDBC connection with context Migrate from (#3034) (#3047)
6.4.1 to 7.1.1
https://jira.talendforge.org/browse/TUP-21245
2018-12-06 10:13:55 +08:00
jiezhang-tlnd
cdc588f608 fix(TUP-21326)Guess Schema has error if use existing connection in (#3032) (#3049)
Joblet
2018-12-06 10:12:57 +08:00
hcyi
533301a787 fix(TUP-21160):refix JDBC connection will not commit even if autocommit (#3033) (#3041)
is set to True.
2018-12-04 16:38:38 +08:00
hcyi
4e58202b5a fix(TUP-21042):Edit and update the used context group,will show double (#2864) (#3040)
value and context view vanish.
2018-12-04 16:38:03 +08:00
hwang-talend
803a6e6ee0 Hwang/tup 21105 b71 (#3029)
* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.

* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.
2018-12-04 14:29:43 +08:00
ypiel
3575dcde57 fix(TDI-41394) : Qa fix - tCreateTable+Vertica9
* fix(TDI-41394) : Qa fix - tCreateTable+Vertica9

* fix(TDI-41394) : Qa fix - Properties from metadata

* fix(TDI-41394) : QA Fix - Vertica9 as default

* fix(TDI-41394) : remove UrlPath thatwas not anymore on master

* fix(TDI-41394) : Add urlPath for MSSQL as it was before
2018-11-29 10:31:10 +01:00
zwxue
98dd599cd7 fix(TUP-21252):tMap losing all links in testcase when we do some (#3014)
modification in the main job in the same component
2018-11-29 11:12:16 +08:00
Mike Yan
e036744720 fix(TESB-22833):CI builder NoClassDefFoundError error with routelet (#2997) 2018-11-28 09:39:47 +01:00
hwang-talend
5323e62bf0 Hwang/tup 21164 (#3004) (#3011)
* bugfix(TUP-21164):Context is not recognized as context variable in ELT
Map components and is not separated with string concat from SQL code
2018-11-28 15:48:19 +08:00
jiezhang-tlnd
9196c9c79d fix(TUP-21094)Job can not be run after the first time I set tELTMap and (#3000) (#3008)
run the job
2018-11-28 10:39:59 +08:00
hwang-talend
0dbe12a296 bugfix(TUP-21118):Code view/test case still link last component even all (#2969) (#3005)
bugfix(TUP-21118):Code view/test case still link last component even all job editor closed
2018-11-27 16:25:14 +08:00
jiezhang-tlnd
7aa1c0e7b2 Jzhang/bugfix/tup 20880 repository share show warn dialog choice should also exists for local project (#2999) (#3003)
* fix(TUP-20880)Repository share: show warn dialog choice should also
exists for local project

* fix(TUP-20880)Repository share: show warn dialog choice should also
exists for local project

* fix(TUP-20880)repository share show warn dialog choice should also
exists for local project

* fix(TUP-20880)repository share show warn dialog choice should also
exists for local project
2018-11-27 11:12:06 +08:00
hwang-talend
7f6d41819f Hwang/tup 21105 t db connection (#2953) (#2993)
* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.
2018-11-23 14:47:52 +08:00
hwang-talend
47d9a652a3 bugfix(TUP-21164):Context is not recognized as context variable in ELT (#2984)
bugfix(TUP-21164):Context is not recognized as context variable in ELT
Map components and is not separated with string concat from SQL code
2018-11-23 10:51:07 +08:00
Jane Ding
102e04bcf6 fix(TUP-21064)NPE happens when 'save as' routine (#2934) (#2989)
fix(TUP-21064)NPE happens when 'save as' routine
https://jira.talendforge.org/browse/TUP-21064
2018-11-23 10:13:36 +08:00
kjwang-talend
6f877d1272 fix(TUP-21160):JDBC connection will not commit even if autocommit is set (#2976) (#2981)
to True.
2018-11-22 14:33:58 +08:00
jiezhang-tlnd
33f2a34c18 fix(TUP-21148)Can't save the changes of Connections (#2978) (#2980)
* fix(TUP-21148)Can't save the changes of Connections
https://jira.talendforge.org/browse/TUP-21148

* fix(TUP-21148)Can't save the changes of Connections
2018-11-22 14:28:46 +08:00
zwxue
3946746389 fix(TUP-20316):support JDBC for implicit context (#2975) 2018-11-22 09:53:33 +08:00
ypiel
7de8cf0dd9 fix(TDI-41394) : tCreateTable vertica 9 support (#2968)
* fix(TDI-41394) : tCreateTable vertica 9 support
* fix(TDI-41394) : remove .bak files
2018-11-19 12:49:52 +01:00
jiezhang-tlnd
c0e8309908 fix(TUP-21049)can't find other database in default list with Chinese and (#2924) (#2962)
* fix(TUP-21049)can't find other database in default list with Chinese and
Japanese(just DelegateComponent fixed)

* fix(TUP-21049) just fixed the unified components
2018-11-19 10:05:16 +08:00
zwxue
7db41b47ec fix(TUP-19972):remove joblet cache when doing rename (#2949) 2018-11-15 17:35:22 +08:00
hcyi
4aca59591b fix(TUP-21044);JDBC driver changed when load JDBC-Mysql8 to "Project Setting ---> Job setting ---> Stats&Logs". (#2883) (#2958)
* fix(TUP-21044);JDBC driver changed when load JDBC-Mysql8 to "Project
Setting ---> Job setting ---> Stats&Logs".

* fix(TUP-21044);add some junits for get driver jar from mvn url.
2018-11-15 15:18:19 +08:00
Jane Ding
97cdeb17c0 fix(TUP-21075)Problem of display in the tMap with Mojave (#2943) (#2954)
https://jira.talendforge.org/browse/TUP-21075
2018-11-15 11:53:29 +08:00
Stéphane Bouchet
f49282d082 TESB-24093 : context values can be overriten by MS. (#2947) 2018-11-13 16:44:05 +01:00
Dmytro Sylaiev
2e7381fc92 fix(TDI-41330): Use sql TIME in setNull for SIQ (#2927) (#2936) 2018-11-12 13:55:43 +02:00
hcyi
27b2a92e96 fix(TUP-20561):Prompt message not clear enough when report generation (#2932) (#2935)
fails because of DB configuration
2018-11-12 14:29:45 +08:00
hwang-talend
b9f4b84ff9 bugfix(TUP-21058):Snowflake ELTJDBCInput/Output (#2895)
bugfix(TUP-21058):Snowflake ELTJDBCInput/Output
2018-11-12 10:44:26 +08:00
Dmytro Sylaiev
1f9725c002 fix(TDI-41320): Fix oracle 11 migration task use existing connection (#2902) (#2933) 2018-11-09 13:35:06 +02:00
zwxue
22dc91ebff fix(TUP-21025):popup dialog for docker error. (#2926) 2018-11-08 14:44:19 +08:00
hcyi
b4d514d368 fix(TUP-21054):Jars from db wizard not synchronized with component. (#2861) (#2923) 2018-11-08 10:55:13 +08:00
jzhao
a6b0f424f9 fix(TDI-41176):'File Json' > 'Input Json' metadata does not show parent values in Preview with JsonPath (#2820) (#2921)
* add a new checkbox "Use the loop node as root" (tFileInputJson)

* fix tExtractJsonField

* fix wizard by set "Use the loop node as root" to false
2018-11-08 10:04:52 +08:00
hcyi
98752ea5ac fix(TUP-20516):Audit improve (#2920)
* fix(TUP-20514):Project setting-Aduit can not save the db info if switch to another type of db. (#2905)

* fix(TUP-20514):Project setting-Aduit can not save the db info if switch
to another type of db.

* fix(TUP-20567):Generate button should be disabled if no history listed.

* fix(TUP-20561):Prompt message not clear enough when report generation (#2897)

fails because of DB configuration

* fix(TUP-20516):Audit: Improve: Better Use an Error message if connection isn't successful (#2896)

* fix(TUP-20516):Audit: Improve: Better Use an Error message if connection
isn't successful

* fix(TUP-20515):Project setting-Aduit: better give clear fail information
when the db is not correctly setted.
2018-11-07 18:25:44 +08:00
Tao Tao
37419ed075 fix(TUP-20612)After change tdbInput from mysql to db2, find the needed jar will not change when click "table name". (#2880) (#2919)
https://jira.talendforge.org/browse/TUP-20612
2018-11-07 18:01:43 +08:00
Jane Ding
3b33b5865f fix(TUP-21055)Migration check executed at each start of studio (#2884) (#2916)
* fix(TUP-21055)Migration check executed at each start of studio
https://jira.talendforge.org/browse/TUP-21055

* fix(TUP-21055)Migration check executed at each start of studio
https://jira.talendforge.org/browse/TUP-21055

* fix(TUP-21055)Migration check executed at each start of studio
https://jira.talendforge.org/browse/TUP-21055
Sort the ConfigTypeNode collection

* fix(TUP-21055)Migration check executed at each start of studio
https://jira.talendforge.org/browse/TUP-21055

* fix(TUP-21055)Migration check executed at each start of studio
https://jira.talendforge.org/browse/TUP-21055
2018-11-07 15:22:11 +08:00
jiezhang-tlnd
3f1a1ccee5 fix(TUP-21017)ORACLE_DB_fail to dataviewer for context mode (#2892)
* fix(TUP-21017)ORACLE_DB_fail to dataviewer for context mode

* fix(TUP-21017)ORACLE DB data viewer fail in context
2018-11-07 10:26:58 +08:00
Dmytro Sylaiev
e2869d0d42 fix(TDI-41276): Use correct SQLType for null Time (#2852) (#2910)
* fix(TDI-41276): Use correct SQLType for null Time

* fix(TDI-41276): Fix codegen error
2018-11-06 13:14:09 +02:00
Jane Ding
afe1a09660 fix(TUP-21075)Problem of display in the tMap with Mojave (#2900) (#2906)
* fix(TUP-21075)Problem of display in the tMap with Mojave
https://jira.talendforge.org/browse/TUP-21075

* fix(TUP-21075)use duplicate name for jdbc connection, no error show
https://jira.talendforge.org/browse/TUP-21075

* fix(TUP-21075)Problem of display in the tMap with Mojave
https://jira.talendforge.org/browse/TUP-21075
2018-11-06 16:07:28 +08:00
Tao Tao
05c8fbc560 fix(TUP-21022)Project Setting->Shell Setting ->Ps1: unfriendly (#2904) (#2909)
display of description
2018-11-06 15:51:38 +08:00
hwang-talend
d6faa40ede bugfix(TUP-21030):Components don't change to Built-in mode (#2879) (#2903)
* bugfix(TUP-21030):Components don't change to Built-in mode
2018-11-06 10:10:18 +08:00
Jane Ding
874dc4b11f fix(TUP-20913)Remote project:job run use old data if not run the child (#2888) (#2889)
job first after change the resources item
https://jira.talendforge.org/browse/TUP-20913
2018-11-02 16:27:54 +08:00
jiezhang-tlnd
1514ffcc72 fix(TUP-20675)"Web-app Url" is read-only and empty after clicking "+"; (#2887) 2018-11-02 15:29:06 +08:00
jiezhang-tlnd
db67c962f0 fix(TUP-21005)In studio Java Debugging of Routes fails (#2871) 2018-11-01 17:03:34 +08:00
hwang-talend
8ce0822a05 bugfix(TUP-21041):ELT Maps generate incorrect SQL when sql contains (#2857) (#2877)
bugfix(TUP-21041):ELT Maps generate incorrect SQL when sql contains schema.table.column1 + schema.table.column2
2018-11-01 16:53:59 +08:00
hwang-talend
216732d14c bugfix(TUP-20915):Testcase: Deleted testcase is still in build-out (#2863) (#2876)
bugfix(TUP-20915):Testcase: Deleted testcase is still in build-out file->sunfire-reports folder
2018-11-01 16:53:37 +08:00
hwang-talend
be5a66353e bugfix(TUP-20693):Table selection widget - wrong generated code (#2818) (#2860) (#2875)
bugfix(TUP-20693):Table selection widget - wrong generated code
2018-11-01 16:32:59 +08:00
hwang-talend
b5ab262801 Hwang/tup 20837 master (#2859) (#2874)
* bugfix(TUP-20837):Job containing saleforce components takes too much
time to open
2018-11-01 15:55:51 +08:00
Jane Ding
6334b756c7 fix(TUP-20778)Reference Project - New context group variable not (#2849) (#2866)
getting applied to the jobs
https://jira.talendforge.org/browse/TUP-20778
2018-10-31 10:54:28 +08:00
Jane Ding
25079b1341 fix(TUP-20913)Remote project:job run use old data if not run the child (#2858) (#2867)
job first after change the resources item
https://jira.talendforge.org/browse/TUP-20913
2018-10-31 10:53:42 +08:00
Jenkins Continuous Build server
a68c9e0cfc Set version to 7.1.2 SNAPSHOT 2018-10-30 12:51:16 +01:00
655 changed files with 14247 additions and 8266 deletions

View File

@@ -1,70 +1,64 @@
---
version: 7.1.1
module: https://talend.poolparty.biz/coretaxonomy/42
product: https://talend.poolparty.biz/coretaxonomy/23
product:
- https://talend.poolparty.biz/coretaxonomy/23
---
# TPS-3944
# TPS-4399
| Info | Value |
| ---------------- | ---------------- |
| Patch Name | Patch\_20200423\_TPS-3944\_v1-7.1.1|
| Release Date | 2020-04-23 |
| Target Version | 20181026\_1147-v7.1.1 |
| Patch Name | Patch\_20201023\_TPS-4399\_v1-7.1.1 |
| Release Date | 2020-10-23 |
| Target Version | 20181026\_1147-V7.1.1 |
| Product affected | Talend Studio |
## Introduction <!-- mandatory -->
## Introduction
This is a self-contained patch.
**NOTE**: For information on how to obtain this patch, reach out to your Support contact at Talend.
## Fixed issues <!-- mandatory -->
## Fixed issues
This patch contains the following fixes:
- [7.1.1]tBoxlist component listing files under root folder when we mentioned file path as subfolder (TDI-43995)
## Prerequisites <!-- mandatory -->
- TPS-4399 [7.1.1] tBigQueryInput cannot execute query within public dataset (TDI-43025)
- TPS-4434 [7.1.1] Unable to write into Bigquery table when user defined delimiter is used
- TBD-9137 tBigQueryInput does not support backtick in query
## Prerequisites
Consider the following requirements for your system:
- Talend Studio 7.1.1 must be installed.
## Installation <!-- mandatory -->
### Installing the patch using Software update <!-- if applicable -->
1) Logon TAC and switch to Configuration->Software Update, then enter the correct values and save referring to the documentation: https://help.talend.com/reader/f7Em9WV_cPm2RRywucSN0Q/j9x5iXV~vyxMlUafnDejaQ
2) Switch to Software update page, where the new patch will be listed. The patch can be downloaded from here into the nexus repository.
3) On Studio Side: Logon Studio with remote mode, on the logon page the Update button is displayed: click this button to install the patch.
### Installing the patch using Talend Studio <!-- if applicable -->
1) Create a folder named "patches" under your studio installer directory and copy the patch .zip file to this folder.
2) Restart your studio: a window pops up, then click OK to install the patch, or restart the commandline and the patch will be installed automatically.
### Installing the patch using Commandline <!-- if applicable -->
Execute the following commands:
1. Talend-Studio-win-x86_64.exe -nosplash -application org.talend.commandline.CommandLine -consoleLog -data commandline-workspace startServer -p 8002 --talendDebug
2. initRemote {tac_url} -ul {TAC login username} -up {TAC login password}
3. checkAndUpdate -tu {TAC login username} -tup {TAC login password}
## Installation
- From the Talend Studio 7.1.1 installation folder, make a copy of the following files somewhere safe:
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryBulkExec/tBigQueryBulkExec_begin.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryBulkExec/tBigQueryBulkExec_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/BigQueryInputQueryHelper.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_begin.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_end.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryOutput/tBigQueryOutput_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryOutputBulk/tBigQueryOutputBulk_main.javajet
- Unzip content of the patch zip onto your Talend Studio 7.1.1 folder.
## Uninstallation
Backup the Affected files list below. Uninstall the patch by restore the backup files.
- Replace the files overridden by the patch by the copy you made before unzipping.
## Affected files for this patch
The following files are installed by this patch:
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.1.1.20181026\_1147/components/tBoxList/tBoxList\_begin.javajet
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.1.1.20181026\_1147/components/tBoxList/tBoxList\_end.javajet
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.1.1.20181026\_1147/resources/box/header\_additional\_box.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryBulkExec/tBigQueryBulkExec_begin.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryBulkExec/tBigQueryBulkExec_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/BigQueryInputQueryHelper.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_begin.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_end.javajet
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryInput/tBigQueryInput_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryOutput/tBigQueryOutput_java.xml
- {Talend_Studio_path}/plugins/org.talend.designer.components.localprovider_7.1.1.20181026_1147/components/tBigQueryOutputBulk/tBigQueryOutputBulk_main.javajet

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.abstractmap.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.abstractmap

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.abstractmap.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.alfrescooutput.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.alfrescooutput

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.alfrescooutput.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.business.diagram.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Vendor: .Talend SA.
Fragment-Host: org.talend.designer.business.diagram
Bundle-Localization: plugin

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.business.diagram.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: org.talend.designer.codegen Nl Fragment
Bundle-SymbolicName: org.talend.designer.codegen.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.codegen
Bundle-Localization: plugin
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.codegen.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl
Bundle-SymbolicName: org.talend.designer.components.exchange.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.components.exchange

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.components.exchange.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Designer Plug-in Nl Fragment
Bundle-SymbolicName: org.talend.designer.core.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.core
Bundle-Localization: plugin
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.core.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.dbmap.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.dbmap

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.dbmap.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl
Bundle-SymbolicName: org.talend.designer.documentation.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.documentation

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.documentation.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.fileoutputxml.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.fileoutputxml

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.fileoutputxml.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.gefabstractmap.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.gefabstractmap

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.gefabstractmap.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Mapper component Plug-in Nl Fragment
Bundle-SymbolicName: org.talend.designer.mapper.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.mapper
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.mapper.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Maven Job NL
Bundle-SymbolicName: org.talend.designer.maven.job.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Vendor: .Talend SA.
Fragment-Host: org.talend.designer.maven.job
Bundle-RequiredExecutionEnvironment: JavaSE-1.7

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.maven.job.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Rowgenerator Nl Fragment
Bundle-SymbolicName: org.talend.designer.rowgenerator.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.rowgenerator
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.rowgenerator.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: org.talend.designer.runprocess.nl fragment
Bundle-SymbolicName: org.talend.designer.runprocess.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Vendor: .Talend SA.
Fragment-Host: org.talend.designer.runprocess
Bundle-Localization: plugin

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.runprocess.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.scd.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.scd

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.scd.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.designer.webservice.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.webservice

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.webservice.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl
Bundle-SymbolicName: org.talend.designer.xmlmap.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.designer.xmlmap

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.xmlmap.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Expression Builder Nl Fragment
Bundle-SymbolicName: org.talend.expressionbuilder.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.expressionbuilder
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.expressionbuilder.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: NL
Bundle-SymbolicName: org.talend.presentation.onboarding.resource.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.presentation.onboarding.resource
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.presentation.onboarding.resource.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: NL
Bundle-SymbolicName: org.talend.presentation.onboarding.resource.tos.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.presentation.onboarding.resource.tos
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.presentation.onboarding.resource.tos.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl
Bundle-SymbolicName: org.talend.repository.ftp.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.repository.ftp

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.repository.ftp.nl</artifactId>

View File

@@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.repository.json.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.repository.json
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.repository.json.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.repository.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.repository
Bundle-Localization: plugin
Bundle-Vendor: .Talend SA.

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.repository.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl
Bundle-SymbolicName: org.talend.repository.view.di.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.repository.view.di

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.repository.view.di.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.sbi.engines.client.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.sbi.engines.client

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.sbi.engines.client.nl</artifactId>

View File

@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nl Fragment
Bundle-SymbolicName: org.talend.spagic.engines.client.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Fragment-Host: org.talend.spagic.engines.client

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.spagic.engines.client.nl</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: org.talend.sqlbuilder Nl Fragment
Bundle-SymbolicName: org.talend.sqlbuilder.nl
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Vendor: .Talend SA.
Fragment-Host: org.talend.sqlbuilder
Bundle-Localization: plugin

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.sqlbuilder.nl</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.designer.business.feature"
label="Business Feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#business-feature">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.business.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.designer.feature"
label="Designer Feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#designer-feature">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.rcp.branding.tos.feature"
label="Tos branding feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA."
plugin="org.talend.rcp.branding.tos">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.rcp.branding.tos.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.rcp.branding.tos.test.feature"
label="Test feature for TOS"
version="7.1.1.qualifier">
version="7.1.2.qualifier">
<description url="http://www.example.com/description">
[Enter Feature Description here.]

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.rcp.branding.tos.test.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.repository.feature"
label="Repository Feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#repository-feature">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.repository.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.sbi.feature"
label="SBI Feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#sbi-feature">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.sbi.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.spagic.feature"
label="SPAGIC Feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#spagic-feature">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.spagic.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.tos.components.feature"
label="Components-feature"
version="7.1.1.qualifier">
version="7.1.2.qualifier">
<description url="http://www.example.com/description">
[Enter Feature Description here.]

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.tos.components.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.tos.core.feature"
label="Feature"
version="7.1.1.qualifier">
version="7.1.2.qualifier">
<description url="http://www.example.com/description">
[Enter Feature Description here.]

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.tos.core.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.tos.feature"
label="Tos feature"
version="7.1.1.qualifier"
version="7.1.2.qualifier"
provider-name=".Talend SA.">
<description url="http://www.example.com/description">

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.tos.feature</artifactId>

View File

@@ -2,7 +2,7 @@
<feature
id="org.talend.tos.libraries.feature"
label="Libraries_feature"
version="7.1.1.qualifier">
version="7.1.2.qualifier">
<description url="http://www.example.com/description">
[Enter Feature Description here.]

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.tos.libraries.feature</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Abstract Map Plug-in
Bundle-SymbolicName: org.talend.designer.abstractmap;singleton:=true
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Activator: org.talend.designer.abstractmap.MapPlugin
Require-Bundle: org.eclipse.core.runtime,
org.talend.core,

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.abstractmap</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Alfresco Output Component Plug-in
Bundle-SymbolicName: org.talend.designer.alfrescooutput;singleton:=true
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Vendor: .Talend SA.
Require-Bundle: org.eclipse.core.runtime,
org.talend.core,

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.alfrescooutput</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.talend.designer.business.diagram; singleton:=true
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.talend.designer.business.model.business.diagram.part.BusinessDiagramEditorPlugin
Bundle-Vendor: %providerName

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.business.diagram</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CodeGen Plug-in
Bundle-SymbolicName: org.talend.designer.codegen;singleton:=true
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Localization: plugin
Require-Bundle: org.talend.core.repository,
org.eclipse.emf.codegen,

View File

@@ -508,9 +508,12 @@
}
if (inContext != null) {
//defaultProps is in order to keep the original context value
defaultProps.load(inContext);
if(context != null && context.isEmpty()) {
defaultProps.load(inContext);
context = new ContextProperties(defaultProps);
}
inContext.close();
context = new ContextProperties(defaultProps);
} else if (!isDefaultContext) {
//print info and job continue to run, for case: context_param is not empty.
System.err.println("Could not find the context " + contextStr);
@@ -528,107 +531,128 @@
}
<%
String warningMessageFormat = "Null value will be used for context parameter %s: %s";
for (IContextParameter ctxParam :params)
{
%>
context.setContextType("<%=ctxParam.getName()%>", "<%=ctxParam.getType()%>");
<%
if (ctxParam.getType().equals("id_Password")) {
%>
String pwd_<%=ctxParam.getName()%>_value = context.getProperty("<%=ctxParam.getName()%>");
context.<%=ctxParam.getName()%> = null;
if(pwd_<%=ctxParam.getName()%>_value!=null) {
if(context_param.containsKey("<%=ctxParam.getName()%>")) {//no need to decrypt if it come from program argument or parent job runtime
context.<%=ctxParam.getName()%> = pwd_<%=ctxParam.getName()%>_value;
} else if (!pwd_<%=ctxParam.getName()%>_value.isEmpty()) {
try {
context.<%=ctxParam.getName()%> = routines.system.PasswordEncryptUtil.decryptPassword(pwd_<%=ctxParam.getName()%>_value);
context.put("<%=ctxParam.getName()%>",context.<%=ctxParam.getName()%>);
} catch (java.lang.RuntimeException e) {
//do nothing
}
}
}
<%
continue;
}
String typeToGenerate ="String";
if( !(ctxParam.getType().equals("id_File") || ctxParam.getType().equals("id_Directory") ||ctxParam.getType().equals("id_List Of Value")))
{
typeToGenerate=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true);
}
if(typeToGenerate.equals("java.util.Date"))
{
final int maxContextInOneMethodToProcess = 100;
int lastMethodNumber = 0;
%>
class ContextProcessing {
private void processContext_0() {
<%
for (int i = 1; i <= params.size(); i++) {
IContextParameter ctxParam = params.get(i-1);
if (i % maxContextInOneMethodToProcess == 0) {
/* close previous method and declare new */
lastMethodNumber++;
%>
}
%>
try{
String context_<%=ctxParam.getName()%>_value = context.getProperty("<%=ctxParam.getName()%>");
if (context_<%=ctxParam.getName()%>_value == null){
context_<%=ctxParam.getName()%>_value = "";
}
int context_<%=ctxParam.getName()%>_pos = context_<%=ctxParam.getName()%>_value.indexOf(";");
String context_<%=ctxParam.getName()%>_pattern = "yyyy-MM-dd HH:mm:ss";
if(context_<%=ctxParam.getName()%>_pos > -1){
context_<%=ctxParam.getName()%>_pattern = context_<%=ctxParam.getName()%>_value.substring(0, context_<%=ctxParam.getName()%>_pos);
context_<%=ctxParam.getName()%>_value = context_<%=ctxParam.getName()%>_value.substring(context_<%=ctxParam.getName()%>_pos + 1);
}
private void processContext_<%=lastMethodNumber%>() {
<%
} //endIf
%>
context.setContextType("<%=ctxParam.getName()%>", "<%=ctxParam.getType()%>");
<%
if (ctxParam.getType().equals("id_Password")) {
%>
String pwd_<%=ctxParam.getName()%>_value = context.getProperty("<%=ctxParam.getName()%>");
context.<%=ctxParam.getName()%> = null;
if(pwd_<%=ctxParam.getName()%>_value!=null) {
if(context_param.containsKey("<%=ctxParam.getName()%>")) {//no need to decrypt if it come from program argument or parent job runtime
context.<%=ctxParam.getName()%> = pwd_<%=ctxParam.getName()%>_value;
} else if (!pwd_<%=ctxParam.getName()%>_value.isEmpty()) {
try {
context.<%=ctxParam.getName()%> = routines.system.PasswordEncryptUtil.decryptPassword(pwd_<%=ctxParam.getName()%>_value);
context.put("<%=ctxParam.getName()%>",context.<%=ctxParam.getName()%>);
} catch (java.lang.RuntimeException e) {
//do nothing
}
}
}
<%
continue;
}
String typeToGenerate ="String";
if( !(ctxParam.getType().equals("id_File") || ctxParam.getType().equals("id_Directory") ||ctxParam.getType().equals("id_List Of Value"))) {
typeToGenerate=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true);
}
if(typeToGenerate.equals("java.util.Date")) {
%>
try{
String context_<%=ctxParam.getName()%>_value = context.getProperty("<%=ctxParam.getName()%>");
if (context_<%=ctxParam.getName()%>_value == null){
context_<%=ctxParam.getName()%>_value = "";
}
int context_<%=ctxParam.getName()%>_pos = context_<%=ctxParam.getName()%>_value.indexOf(";");
String context_<%=ctxParam.getName()%>_pattern = "yyyy-MM-dd HH:mm:ss";
if(context_<%=ctxParam.getName()%>_pos > -1){
context_<%=ctxParam.getName()%>_pattern = context_<%=ctxParam.getName()%>_value.substring(0, context_<%=ctxParam.getName()%>_pos);
context_<%=ctxParam.getName()%>_value = context_<%=ctxParam.getName()%>_value.substring(context_<%=ctxParam.getName()%>_pos + 1);
}
context.<%=ctxParam.getName()%>=(java.util.Date)(new java.text.SimpleDateFormat(context_<%=ctxParam.getName()%>_pattern).parse(context_<%=ctxParam.getName()%>_value));
context.<%=ctxParam.getName()%>=(java.util.Date)(new java.text.SimpleDateFormat(context_<%=ctxParam.getName()%>_pattern).parse(context_<%=ctxParam.getName()%>_value));
}catch(ParseException e)
{
} catch(ParseException e) {
<%
if (isLog4jEnabled) {
if (isLog4jEnabled) {
%>
log.warn(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
log.warn(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
<%
} else {
} else {
%>
System.err.println(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
System.err.println(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
<%
}
}
%>
context.<%=ctxParam.getName()%>=null;
}
<%
}else if(typeToGenerate.equals("Object")||typeToGenerate.equals("String")||typeToGenerate.equals("java.lang.String") )
{
%>
context.<%=ctxParam.getName()%>=(<%=typeToGenerate%>) context.getProperty("<%=ctxParam.getName()%>");
<%
}else if(typeToGenerate.equals("Character")&&ctxParam.getName()!=null)
{
%>
context.<%=ctxParam.getName()%>= new java.text.StringCharacterIterator(context.getProperty("<%=ctxParam.getName()%>")).first();
<%
} else {
%>
try{
context.<%=ctxParam.getName()%>=routines.system.ParserUtils.parseTo_<%=typeToGenerate%> (context.getProperty("<%=ctxParam.getName()%>"));
}catch(NumberFormatException e){
context.<%=ctxParam.getName()%>=null;
}
<%
if (isLog4jEnabled) {
} else if(typeToGenerate.equals("Object")||typeToGenerate.equals("String")||typeToGenerate.equals("java.lang.String")) {
%>
log.warn(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
context.<%=ctxParam.getName()%>=(<%=typeToGenerate%>) context.getProperty("<%=ctxParam.getName()%>");
<%
} else {
} else if(typeToGenerate.equals("Character")&&ctxParam.getName()!=null) {
%>
System.err.println(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
context.<%=ctxParam.getName()%>= new java.text.StringCharacterIterator(context.getProperty("<%=ctxParam.getName()%>")).first();
<%
}
} else {
%>
try{
context.<%=ctxParam.getName()%>=routines.system.ParserUtils.parseTo_<%=typeToGenerate%> (context.getProperty("<%=ctxParam.getName()%>"));
} catch(NumberFormatException e){
<%
if (isLog4jEnabled) {
%>
log.warn(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
<%
} else {
%>
System.err.println(String.format("<%=warningMessageFormat %>", "<%=ctxParam.getName() %>", e.getMessage()));
<%
}
%>
context.<%=ctxParam.getName()%>=null;
}
<%
}
}
%>
} <%/*close last method*/%>
public void processAllContext() {
<%
for (int i = 0; i <=lastMethodNumber; i++) {
%>
processContext_<%=i %>();
<%
}
%>
context.<%=ctxParam.getName()%>=null;
}
<%
}
}
%>
new ContextProcessing().processAllContext();
} catch (java.io.IOException ie) {
System.err.println("Could not load context "+contextStr);
ie.printStackTrace();
}
// get context value from parent directly
if (parentContextMap != null && !parentContextMap.isEmpty()) {
<% for (IContextParameter ctxParam :params){
@@ -1171,13 +1195,11 @@ if (execStat) {
} else {
type = "ftp";
}
if ("ftp".equals(type)) { %>
((com.enterprisedt.net.ftp.FTPClient) obj_conn).quit();
<%} else if ("sftp".equals(type)) { %>
if ("sftp".equals(type)) { %>
((com.jcraft.jsch.ChannelSftp) obj_conn).quit();
<%} else { %>
((org.apache.commons.net.ftp.FTPSClient) obj_conn).disconnect();
<%}%>
<%} else { %>
((org.apache.commons.net.ftp.FTPClient) obj_conn).disconnect();
<%}%>
}
<% } %>
} catch (java.lang.Exception e) {

View File

@@ -69,145 +69,140 @@ if(hasInput){
}
}
}
boolean hasValidInput = inputConn!=null;
IMetadataTable metadata = null;
List<IMetadataTable> metadatas = node.getMetadataList();
boolean haveValidNodeMetadata = ((metadatas != null) && (metadatas.size() > 0) && (metadata = metadatas.get(0)) != null);
if (hasValidInput && haveValidNodeMetadata) {
if (hasValidInput) {
List<IMetadataColumn> input_columnList = inputConn.getMetadataTable().getListColumns();
if(input_columnList == null) {
input_columnList = new ArrayList<IMetadataColumn>();
}
// add incoming (not present) columns to enforcer for this comps
if (cid.contains("tDataStewardship") || cid.contains("tMarkLogic")){
%>
boolean shouldCreateRuntimeSchemaForIncomingNode = false;
<%
for (int i = 0; i < input_columnList.size(); i++) {
if(!input_columnList.get(i).getTalendType().equals("id_Dynamic")) {
%>
if (incomingEnforcer_<%=cid%>.getDesignSchema().getField("<%=input_columnList.get(i)%>") == null){
incomingEnforcer_<%=cid%>.addIncomingNodeField("<%=input_columnList.get(i)%>", ((Object) <%=inputConn.getName()%>.<%=input_columnList.get(i)%>).getClass().getCanonicalName());
shouldCreateRuntimeSchemaForIncomingNode = true;
}
<%
}
}
%>
if (shouldCreateRuntimeSchemaForIncomingNode){
incomingEnforcer_<%=cid%>.createRuntimeSchema();
}
<%
}
// If there are dynamic columns in the schema, they need to be
// initialized into the runtime schema of the actual IndexedRecord
// provided to the component.
int dynamicPos = -1;
for (int i = 0; i < input_columnList.size(); i++) {
if (input_columnList.get(i).getTalendType().equals("id_Dynamic")) {
dynamicPos = i;
break;
}
}
if (dynamicPos != -1) {
%>
if (!incomingEnforcer_<%=cid%>.areDynamicFieldsInitialized()) {
// Initialize the dynamic columns when they are first encountered.
for (routines.system.DynamicMetadata dm_<%=cid%> : <%=inputConn.getName()%>.<%=input_columnList.get(dynamicPos).getLabel()%>.metadatas) {
incomingEnforcer_<%=cid%>.addDynamicField(
dm_<%=cid%>.getName(),
dm_<%=cid%>.getType(),
dm_<%=cid%>.getLogicalType(),
dm_<%=cid%>.getFormat(),
dm_<%=cid%>.getDescription(),
dm_<%=cid%>.isNullable());
}
incomingEnforcer_<%=cid%>.createRuntimeSchema();
}
<%
}
%>
incomingEnforcer_<%=cid%>.createNewRecord();
<%
for (int i = 0; i < input_columnList.size(); i++) { // column
IMetadataColumn column = input_columnList.get(i);
if (dynamicPos != i) {
%>
//skip the put action if the input column doesn't appear in component runtime schema
if (incomingEnforcer_<%=cid%>.getRuntimeSchema().getField("<%=input_columnList.get(i)%>") != null){
incomingEnforcer_<%=cid%>.put("<%=column.getLabel()%>", <%=inputConn.getName()%>.<%=column.getLabel()%>);
}
<%
} else {
%>
for (int i = 0; i < <%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnCount(); i++) {
incomingEnforcer_<%=cid%>.put(<%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnMetadata(i).getName(),
<%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnValue(i));
}
<%
}
} // column
// If necesary, generate the code to handle outgoing connections.
// TODO: For now, this can only handle one outgoing record for
// each incoming record. To handle multiple outgoing records, code
// generation needs to occur in component_begin in order to open
// a for() loop.
// There will be a ClassCastException if the output component does
// not implement WriterWithFeedback, but permits outgoing
// connections.
if (input_columnList!=null && !input_columnList.isEmpty()) {
// add incoming (not present) columns to enforcer for this comps
if (cid.contains("tDataStewardship") || cid.contains("tMarkLogic")){
%>
boolean shouldCreateRuntimeSchemaForIncomingNode = false;
<%
for (int i = 0; i < input_columnList.size(); i++) {
if(!input_columnList.get(i).getTalendType().equals("id_Dynamic")) {
%>
if (incomingEnforcer_<%=cid%>.getDesignSchema().getField("<%=input_columnList.get(i)%>") == null){
incomingEnforcer_<%=cid%>.addIncomingNodeField("<%=input_columnList.get(i)%>", ((Object) <%=inputConn.getName()%>.<%=input_columnList.get(i)%>).getClass().getCanonicalName());
shouldCreateRuntimeSchemaForIncomingNode = true;
}
<%
}
}
%>
if (shouldCreateRuntimeSchemaForIncomingNode){
incomingEnforcer_<%=cid%>.createRuntimeSchema();
}
<%
}
// If there are dynamic columns in the schema, they need to be
// initialized into the runtime schema of the actual IndexedRecord
// provided to the component.
int dynamicPos = -1;
for (int i = 0; i < input_columnList.size(); i++) {
if (input_columnList.get(i).getTalendType().equals("id_Dynamic")) {
dynamicPos = i;
break;
}
}
if (dynamicPos != -1) {
%>
if (!incomingEnforcer_<%=cid%>.areDynamicFieldsInitialized()) {
// Initialize the dynamic columns when they are first encountered.
for (routines.system.DynamicMetadata dm_<%=cid%> : <%=inputConn.getName()%>.<%=input_columnList.get(dynamicPos).getLabel()%>.metadatas) {
incomingEnforcer_<%=cid%>.addDynamicField(
dm_<%=cid%>.getName(),
dm_<%=cid%>.getType(),
dm_<%=cid%>.getLogicalType(),
dm_<%=cid%>.getFormat(),
dm_<%=cid%>.getDescription(),
dm_<%=cid%>.isNullable());
}
incomingEnforcer_<%=cid%>.createRuntimeSchema();
}
<%
}
%>
incomingEnforcer_<%=cid%>.createNewRecord();
<%
for (int i = 0; i < input_columnList.size(); i++) { // column
IMetadataColumn column = input_columnList.get(i);
if (dynamicPos != i) {
%>
//skip the put action if the input column doesn't appear in component runtime schema
if (incomingEnforcer_<%=cid%>.getRuntimeSchema().getField("<%=input_columnList.get(i)%>") != null){
incomingEnforcer_<%=cid%>.put("<%=column.getLabel()%>", <%=inputConn.getName()%>.<%=column.getLabel()%>);
}
<%
} else {
%>
for (int i = 0; i < <%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnCount(); i++) {
incomingEnforcer_<%=cid%>.put(<%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnMetadata(i).getName(),
<%=inputConn.getName()%>.<%=column.getLabel()%>.getColumnValue(i));
}
<%
}
} // column
// If necesary, generate the code to handle outgoing connections.
// TODO: For now, this can only handle one outgoing record for
// each incoming record. To handle multiple outgoing records, code
// generation needs to occur in component_begin in order to open
// a for() loop.
// There will be a ClassCastException if the output component does
// not implement WriterWithFeedback, but permits outgoing
// connections.
ComponentProperties componentProps = node.getComponentProperties();
ProcessPropertiesGenerator generator = new ProcessPropertiesGenerator(cid, component);
List<Component.CodegenPropInfo> propsToProcess = component.getCodegenPropInfos(componentProps);
for (Component.CodegenPropInfo propInfo : propsToProcess) { // propInfo
List<NamedThing> properties = propInfo.props.getProperties();
for (NamedThing prop : properties) { // property
if (prop instanceof Property) { // if, only deal with valued Properties
Property property = (Property)prop;
if (property.getFlags() != null && (property.getFlags().contains(Property.Flags.DESIGN_TIME_ONLY) || property.getFlags().contains(Property.Flags.HIDDEN)))
continue;
if(property.getTaggedValue(IGenericConstants.DYNAMIC_PROPERTY_VALUE)!=null && Boolean.valueOf(String.valueOf(property.getTaggedValue(IGenericConstants.DYNAMIC_PROPERTY_VALUE)))) {
generator.setPropertyValues(property, propInfo, null, false, false);
}
ComponentProperties componentProps = node.getComponentProperties();
ProcessPropertiesGenerator generator = new ProcessPropertiesGenerator(cid, component);
List<Component.CodegenPropInfo> propsToProcess = component.getCodegenPropInfos(componentProps);
for (Component.CodegenPropInfo propInfo : propsToProcess) { // propInfo
List<NamedThing> properties = propInfo.props.getProperties();
for (NamedThing prop : properties) { // property
if (prop instanceof Property) { // if, only deal with valued Properties
Property property = (Property)prop;
if (property.getFlags() != null && (property.getFlags().contains(Property.Flags.DESIGN_TIME_ONLY) || property.getFlags().contains(Property.Flags.HIDDEN)))
continue;
if(property.getTaggedValue(IGenericConstants.DYNAMIC_PROPERTY_VALUE)!=null && Boolean.valueOf(String.valueOf(property.getTaggedValue(IGenericConstants.DYNAMIC_PROPERTY_VALUE)))) {
generator.setPropertyValues(property, propInfo, null, false, false);
}
} // property
} // propInfo
%>
org.apache.avro.generic.IndexedRecord data_<%=cid%> = incomingEnforcer_<%=cid%>.getCurrentRecord();
<%
boolean isParallelize ="true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__PARALLELIZE__"));
if (isParallelize) {
String sourceComponentId = inputConn.getSource().getUniqueName();
if(sourceComponentId!=null && sourceComponentId.contains("tAsyncIn")) {
%>
globalMap.put(buffersSizeKey_<%=cid%>, buffersSize_<%=sourceComponentId%>);
<%
}
}
%>
}
} // property
} // propInfo
%>
org.apache.avro.generic.IndexedRecord data_<%=cid%> = incomingEnforcer_<%=cid%>.getCurrentRecord();
<%
boolean isParallelize ="true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__PARALLELIZE__"));
if (isParallelize) {
String sourceComponentId = inputConn.getSource().getUniqueName();
if(sourceComponentId!=null && sourceComponentId.contains("tAsyncIn")) {
%>
globalMap.put(buffersSizeKey_<%=cid%>, buffersSize_<%=sourceComponentId%>);
<%
}
}
%>
writer_<%=cid%>.write(data_<%=cid%>);
nb_line_<%=cid %>++;
<%if(hasMainOutput){
%>
if(!(writer_<%=cid%> instanceof org.talend.components.api.component.runtime.WriterWithFeedback)) {
// For no feedback writer,just pass the input record to the output
if (data_<%=cid%>!=null) {
outgoingMainRecordsList_<%=cid%> = java.util.Arrays.asList(data_<%=cid%>);
}
}
<%
}
writer_<%=cid%>.write(data_<%=cid%>);
nb_line_<%=cid %>++;
<%if(hasMainOutput){
%>
if(!(writer_<%=cid%> instanceof org.talend.components.api.component.runtime.WriterWithFeedback)) {
// For no feedback writer,just pass the input record to the output
if (data_<%=cid%>!=null) {
outgoingMainRecordsList_<%=cid%> = java.util.Arrays.asList(data_<%=cid%>);
}
}
<%
}
}
} // canStart

View File

@@ -62,6 +62,8 @@ class IndexedRecordToRowStructGenerator {
%>
boolean <%=codeVarIsDynamicInitialized%> = false;
routines.system.Dynamic <%=codeVarDynamic%> = new routines.system.Dynamic();
//Workaround for TDI-44051, TcimpV0 do not need DbmsID
<%=codeVarDynamic%>.setDbmsId("<%=cid%>");
<%
}
@@ -115,10 +117,11 @@ class IndexedRecordToRowStructGenerator {
for (org.apache.avro.Schema.Field dynamicField_<%=cid%> : dynSchema_<%=cid%>.getFields()){
routines.system.DynamicMetadata dynamicMetadata_<%=cid%> = new routines.system.DynamicMetadata();
org.apache.avro.Schema dynamicFieldSchema_<%=cid%> = dynamicField_<%=cid%>.schema();
String dbName = dynamicField_<%=cid%>.getProp("talend.field.dbColumnName");
// set name
dynamicMetadata_<%=cid%>.setName(dynamicField_<%=cid%>.name());
// set db name
dynamicMetadata_<%=cid%>.setDbName(dynamicField_<%=cid%>.name());
dynamicMetadata_<%=cid%>.setDbName(dbName==null?dynamicField_<%=cid%>.name():dbName);
// set nullable
if (org.talend.daikon.avro.AvroUtils.isNullable(dynamicFieldSchema_<%=cid%>)) {
dynamicMetadata_<%=cid%>.setNullable(true);

View File

@@ -139,7 +139,7 @@ for (INode node : process.getNodesOfType("tRESTClient")) {
}
boolean talendEsbJobFactory = actAsProvider || !process.getNodesOfType("tRouteInput").isEmpty();
boolean talendEsbJob = talendEsbJobFactory || actAsConsumer || ProcessorUtilities.isEsbJob(process.getId(), process.getVersion());
boolean talendEsbJob = talendEsbJobFactory || actAsConsumer || ProcessorUtilities.isEsbJob(process);
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));
@@ -312,7 +312,7 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
}
%>
}
private ContextProperties context = new ContextProperties();
protected ContextProperties context = new ContextProperties(); // will be instanciated by MS.
public ContextProperties getContext() {
return this.context;
}
@@ -512,6 +512,8 @@ private class TalendException extends Exception {
if(!(e instanceof TDieException)){
<%
boolean needCatchTalendException = false;
if (process.getNodesOfType("tLogCatcher").size() > 0) {
List<INode> logCatchers = (List<INode>)process.getNodesOfType("tLogCatcher");
for (INode logCatcher : logCatchers) {
@@ -543,6 +545,7 @@ private class TalendException extends Exception {
if (ElementParameterParser.getValue(logCatcher, "__CATCH_JAVA_EXCEPTION__").equals("true")) {
if(logCatcher!=virtualNCatchNode){
// 2) launch logCatcher subProcess
needCatchTalendException = true;
%>
<%=logCatcher.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
@@ -555,6 +558,7 @@ private class TalendException extends Exception {
<%
}
if(virtualNCatchNode!=null){
needCatchTalendException = true;
%>
<%=virtualNCatchNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
@@ -568,31 +572,12 @@ private class TalendException extends Exception {
%>
}
<%
boolean needCatchTalendException = false;
if (process.getNodesOfType("tLogCatcher").size() > 0) {
for(INode node:process.getNodesOfType("tLogCatcher")){
if(ElementParameterParser.getValue(node, "__CATCH_JAVA_EXCEPTION__").equals("true")){
needCatchTalendException = true;
break;
}
}
}
if ((!needCatchTalendException) && (process.getNodesOfType("tAssertCatcher").size() > 0)) {
for(INode node:process.getNodesOfType("tAssertCatcher")){
if(ElementParameterParser.getValue(node, "__CATCH_JAVA_EXCEPTION__").equals("true")){
needCatchTalendException = true;
break;
}
}
}
if(needCatchTalendException) {
if (process.getNodesOfType("tLogCatcher").size() > 0) {
%>
} catch (TalendException e) {
// do nothing
<%
}
//TODO should catch the TalendException in assertcatcher process? but before should not work too as use java reflect, this exception can't catch
%>
} catch (TalendException e) {
// do nothing
<%
}
%>
} catch (Exception e) {

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.codegen</artifactId>

View File

@@ -48,6 +48,7 @@ ComponentsFactory.componentNotFound=Component folder not found\:
ComponentsFactory.load.components=Load Components...
ComponentsFactory.parentNotRecompiled=Warning\: parents of *.inc.javajet are not recompiled \!
ComponentsFactory.loadComponents.missingFolder=The folder "{0}" is missing in the plugin "{1}".
ComponentsFactory.init.waitForFinish.timeout=Can't initialise ComponentsFactory, please try again.
ComponentsLocalProviderService.componentLoadError=Component load error
ComponentsLocalProviderService.talendExchangeError=Talend Exchange Error
ComponentsPreferencePage.ButtonLabel0=Ok

View File

@@ -30,6 +30,11 @@ import java.util.Locale;
import java.util.Map;
import java.util.ResourceBundle;
import java.util.Set;
import java.util.concurrent.Semaphore;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Level;
@@ -139,66 +144,119 @@ public class ComponentsFactory implements IComponentsFactory {
private static boolean cleanDone = false;
protected static Map<String, Map<String, Set<IComponent>>> componentNameMap;
private AtomicBoolean isInitialising;
private volatile Lock initialiseLock;
public ComponentsFactory() {
isInitialising = new AtomicBoolean(false);
initialiseLock = new ReentrantLock();
}
private void init(boolean duringLogon) {
removeOldComponentsUserFolder(); // not used anymore
long startTime = System.currentTimeMillis();
// TimeMeasure.display = true;
// TimeMeasure.displaySteps = true;
// TimeMeasure.measureActive = true;
// TimeMeasure.begin("initComponents");
componentList = Collections.synchronizedSet(new HashSet<IComponent>());
customComponentList = new HashSet<IComponent>();
skeletonList = new ArrayList<String>();
userComponentList = new HashSet<IComponent>();
String installLocation = new Path(Platform.getConfigurationLocation().getURL().getPath()).toFile().getAbsolutePath();
componentToProviderMap = new HashMap<IComponent, AbstractComponentsProvider>();
boolean isNeedClean = !cleanDone && TalendCacheUtils.isSetCleanComponentCache();
cleanDone = true; // only check this parameter one time, or it will reinitialize things all the time...
isCreated = hasComponentFile(installLocation) && !isNeedClean;
ComponentsCache cache = ComponentManager.getComponentCache();
try {
if (isCreated) {
// if cache is created and empty, means we never loaded it before.
// if it was already loaded, then no need to go again, since it's a static variable, it's still in
// memory.
// it avoids to reload from disk again even more for commandline at each logon, since it's no use.
if (cache.getComponentEntryMap().isEmpty()) {
ComponentsCache loadCache = loadComponentResource(installLocation);
cache.getComponentEntryMap().putAll(loadCache.getComponentEntryMap());
}
} else {
cache.getComponentEntryMap().clear();
}
} catch (IOException e) {
ExceptionHandler.process(e);
cache.getComponentEntryMap().clear();
isCreated = false;
if (wait4InitialiseFinish()) {
return;
}
try {
try {
initialiseLock.lock();
} catch (Exception e) {
throw new RuntimeException(e);
}
isInitialising.set(true);
removeOldComponentsUserFolder(); // not used anymore
long startTime = System.currentTimeMillis();
loadComponentsFromComponentsProviderExtension();
// TimeMeasure.display = true;
// TimeMeasure.displaySteps = true;
// TimeMeasure.measureActive = true;
// TimeMeasure.begin("initComponents");
componentList = Collections.synchronizedSet(new HashSet<IComponent>());
customComponentList = new HashSet<IComponent>();
skeletonList = new ArrayList<String>();
userComponentList = new HashSet<IComponent>();
String installLocation = new Path(Platform.getConfigurationLocation().getURL().getPath()).toFile().getAbsolutePath();
componentToProviderMap = new HashMap<IComponent, AbstractComponentsProvider>();
boolean isNeedClean = !cleanDone && TalendCacheUtils.isSetCleanComponentCache();
cleanDone = true; // only check this parameter one time, or it will reinitialize things all the time...
isCreated = hasComponentFile(installLocation) && !isNeedClean;
ComponentsCache cache = ComponentManager.getComponentCache();
try {
if (isCreated) {
// if cache is created and empty, means we never loaded it before.
// if it was already loaded, then no need to go again, since it's a static variable, it's still in
// memory.
// it avoids to reload from disk again even more for commandline at each logon, since it's no use.
if (cache.getComponentEntryMap().isEmpty()) {
ComponentsCache loadCache = loadComponentResource(installLocation);
cache.getComponentEntryMap().putAll(loadCache.getComponentEntryMap());
}
} else {
cache.getComponentEntryMap().clear();
}
} catch (IOException e) {
ExceptionHandler.process(e);
cache.getComponentEntryMap().clear();
isCreated = false;
}
// TimeMeasure.step("initComponents", "loadComponentsFromProvider");
// 2.Load Component from extension point: component_definition
loadComponentsFromExtensions();
// TimeMeasure.step("initComponents", "loadComponentsFromExtension[joblets?]");
loadComponentsFromComponentsProviderExtension();
ComponentManager.saveResource(); // will save only if needed.
// TimeMeasure.step("initComponents", "loadComponentsFromProvider");
// 2.Load Component from extension point: component_definition
loadComponentsFromExtensions();
// TimeMeasure.step("initComponents", "loadComponentsFromExtension[joblets?]");
// init component name map, used to pick specified component immediately
initComponentNameMap();
ComponentManager.saveResource(); // will save only if needed.
// TimeMeasure.step("initComponents", "createCache");
log.debug(componentList.size() + " components loaded in " + (System.currentTimeMillis() - startTime) + " ms"); //$NON-NLS-1$ //$NON-NLS-2$
// init component name map, used to pick specified component immediately
initComponentNameMap();
// TimeMeasure.end("initComponents");
// TimeMeasure.display = false;
// TimeMeasure.displaySteps = false;
// TimeMeasure.measureActive = false;
// TimeMeasure.step("initComponents", "createCache");
log.debug(componentList.size() + " components loaded in " + (System.currentTimeMillis() - startTime) + " ms"); //$NON-NLS-1$ //$NON-NLS-2$
// TimeMeasure.end("initComponents");
// TimeMeasure.display = false;
// TimeMeasure.displaySteps = false;
// TimeMeasure.measureActive = false;
} finally {
isInitialising.set(false);
initialiseLock.unlock();
}
}
private boolean wait4InitialiseFinish() {
if (isInitialising.get()) {
try {
// wait for 10 min (10 * 60 seconds) by default
long timeout = 600L;
String timeoutStr = System.getProperty("studio.componentsFactory.init.timeout"); //$NON-NLS-1$
if (!StringUtils.isBlank(timeoutStr)) {
try {
timeout = Long.valueOf(timeoutStr);
} catch (Exception e) {
ExceptionHandler.process(e);
}
}
if (initialiseLock.tryLock(timeout, TimeUnit.SECONDS)) {
initialiseLock.unlock();
} else {
// may be track in dead lock, throw exception to try to break dead lock
throw new RuntimeException(Messages.getString("ComponentsFactory.init.waitForFinish.timeout")); //$NON-NLS-1$
}
// initialise successfully or not
return !isInitialising.get();
} catch (RuntimeException e) {
throw e;
} catch (InterruptedException e) {
throw new RuntimeException(e);
} catch (Exception e) {
ExceptionHandler.process(e);
}
}
// initialise failed, still need to initialise
return false;
}
protected void initComponentNameMap() {
@@ -729,7 +787,8 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public synchronized int size() {
public int size() {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -737,7 +796,8 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public synchronized IComponent get(String name) {
public IComponent get(String name) {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -757,7 +817,8 @@ public class ComponentsFactory implements IComponentsFactory {
* @see org.talend.core.model.components.IComponentsFactory#get(java.lang.String, java.lang.String)
*/
@Override
public synchronized IComponent get(String name, String paletteType) {
public IComponent get(String name, String paletteType) {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -772,6 +833,7 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public IComponent getJobletComponent(String name, String paletteType) {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -799,6 +861,7 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public void initializeComponents(IProgressMonitor monitor) {
this.monitor = monitor;
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -809,6 +872,7 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public void initializeComponents(IProgressMonitor monitor, boolean duringLogon) {
this.monitor = monitor;
wait4InitialiseFinish();
if (componentList == null) {
init(duringLogon);
}
@@ -822,12 +886,18 @@ public class ComponentsFactory implements IComponentsFactory {
* @see org.talend.core.model.components.IComponentsFactory#getComponents()
*/
@Override
public synchronized Set<IComponent> getComponents() {
public Set<IComponent> getComponents() {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
return componentList;
}
@Override
public boolean isInitialising() {
return isInitialising.get();
}
@Override
public Collection<IComponent> readComponents() {
@@ -840,7 +910,8 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public synchronized Map<String, Map<String, Set<IComponent>>> getComponentNameMap() {
public Map<String, Map<String, Set<IComponent>>> getComponentNameMap() {
wait4InitialiseFinish();
if (componentNameMap == null) {
init(false);
}
@@ -848,7 +919,8 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public synchronized List<IComponent> getCustomComponents() {
public List<IComponent> getCustomComponents() {
wait4InitialiseFinish();
if (customComponentList == null) {
init(false);
}
@@ -862,6 +934,7 @@ public class ComponentsFactory implements IComponentsFactory {
*/
@Override
public List<String> getSkeletons() {
wait4InitialiseFinish();
if (skeletonList == null) {
init(false);
}
@@ -900,6 +973,7 @@ public class ComponentsFactory implements IComponentsFactory {
jobletService.clearSparkStreamingJobletComponent();
}
}
isInitialising.set(false);
}
@Override

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Exchange Plug-in
Bundle-SymbolicName: org.talend.designer.components.exchange;singleton:=true
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Bundle-Activator: org.talend.designer.components.exchange.ExchangePlugin
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui,

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.1</version>
<version>7.1.2-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.components.exchange</artifactId>

View File

@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Components Libs Plug-in
Bundle-SymbolicName: org.talend.designer.components.libs
Bundle-Version: 7.1.1.qualifier
Bundle-Version: 7.1.2.qualifier
Require-Bundle: org.eclipse.core.runtime
Bundle-ActivationPolicy: lazy
Bundle-Vendor: .Talend SA.

View File

@@ -1,7 +1,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.talend.libraries</groupId>
<artifactId>checkArchive-1.1-20171121</artifactId>
<artifactId>checkArchive-1.1-20181130</artifactId>
<version>6.0.0</version>
<name>checkArchive</name>
<description>Dependence for tFileArchive and tFileUnAchive</description>

View File

@@ -5,10 +5,6 @@ import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.zip.GZIPInputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipException;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
import javax.crypto.Cipher;
import javax.crypto.CipherInputStream;
@@ -17,7 +13,10 @@ import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.PBEParameterSpec;
import org.apache.commons.compress.archivers.ArchiveEntry;
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
import org.apache.commons.compress.archivers.zip.ZipFile;
// import javax.crypto.Cipher;
@@ -36,8 +35,6 @@ public class IntegrityUtil {
zipFile = new ZipFile(file);
return true;
} catch (ZipException e) {
return false;
} catch (IOException e) {
return false;
} finally {
@@ -58,7 +55,6 @@ public class IntegrityUtil {
try {
zipFile = new ZipFile(file);
} catch (ZipException e) {
} catch (IOException e) {
} finally {
try {
@@ -72,27 +68,6 @@ public class IntegrityUtil {
}
}
/**
* Check the zip entry is valid
*
* @param input
* @return
*/
public static boolean isZipEntryValid(final ZipInputStream input) {
try {
ZipEntry entry = input.getNextEntry();
return true;
} catch (ZipException e) {
// TODO Auto-generated catch block
return false;
} catch (IOException e) {
return false;
} catch (Exception e) {
return false;
}
}
/**
* To check if the encrpted zip file is corrupted or not
*
@@ -101,18 +76,15 @@ public class IntegrityUtil {
* @return
*/
public static boolean isEncryptedZipValid(final File file, String password) {
ZipInputStream input = null;
ZipArchiveInputStream input = null;
InputStream target = null;
try {
target = new FileInputStream(file);
target = new CipherInputStream(target, createCipher(Cipher.DECRYPT_MODE, password));
input = new ZipInputStream(target);
ZipEntry entry = input.getNextEntry();
input = new ZipArchiveInputStream(target);
ArchiveEntry entry = input.getNextEntry();
return true;
} catch (ZipException e) {
// TODO Auto-generated catch block
return false;
} catch (IOException e) {
return false;
} catch (Exception e) {

View File

@@ -0,0 +1,50 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.talend.libraries</groupId>
<artifactId>commons-net-ftps-proxy</artifactId>
<version>3.6.1-talend-20190128</version>
<name>commons-net-talend</name>
<dependencies>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.6</version>
</dependency>
</dependencies>
<properties>
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
</properties>
<distributionManagement>
<snapshotRepository>
<id>talend_nexus_deployment</id>
<url>${talend.nexus.url}/nexus/content/repositories/TalendOpenSourceSnapshot/</url>
<snapshots><enabled>true</enabled></snapshots>
<releases><enabled>false</enabled></releases>
</snapshotRepository>
<repository>
<id>talend_nexus_deployment</id>
<url>${talend.nexus.url}/nexus/content/repositories/TalendOpenSourceRelease/</url>
<snapshots><enabled>false</enabled></snapshots>
<releases><enabled>true</enabled></releases>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -0,0 +1,309 @@
package org.talend.ftp;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.Inet6Address;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLException;
import javax.net.ssl.SSLSocket;
import org.apache.commons.net.ftp.FTPCmd;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.util.Base64;
public class HTTPProxyFTPSClient extends SSLSessionReuseFTPSClient {
/** Default PROT Command */
private static final String DEFAULT_PROT = "C";
private final String proxyHost;
private final int proxyPort;
private final String proxyUsername;
private final String proxyPassword;
private SSLContext context;
private String protectionLevel;
private String tunnelHost; // Save the host when setting up a tunnel (needed for EPSV)
private static final byte[] CRLF = { '\r', '\n' };
private final Base64 base64 = new Base64();
public HTTPProxyFTPSClient(boolean isImplicit, SSLContext context, String proxyHost, int proxyPort, String proxyUser,
String proxyPass) {
super(isImplicit, context);
this.proxyHost = proxyHost;
this.proxyPort = proxyPort;
this.proxyUsername = proxyUser;
this.proxyPassword = proxyPass;
this.tunnelHost = null;
this.context = context;
this.protectionLevel = DEFAULT_PROT;
}
/**
* Call execPROT from Parent class and stores current protection level
*
* @see org.apache.commons.net.ftp.FTPSClient#execPROT(String)
*/
@Override
public void execPROT(String prot) throws SSLException, IOException {
super.execPROT(prot);
this.protectionLevel = prot;
}
/**
* @see org.apache.commons.net.SocketClient#connect(java.lang.String, int)
*/
@Override
public void connect(String host, int port) throws IOException {
_socket_ = new Socket(proxyHost, proxyPort);
_input_ = _socket_.getInputStream();
_output_ = _socket_.getOutputStream();
try {
tunnelHandshake(host, port, _input_, _output_);
} catch (Exception e) {
throw new IOException("Could not connect to " + host + " using port " + port, e);
}
super._connectAction_();
}
/**
* Open ssl socket (if private protection level selected) using tunnel socket
*
* @see org.apache.commons.net.ftp.FTPSClient#_openDataConnection_(java.lang.String, java.lang.String)
*/
@Override
protected Socket _openDataConnection_(String command, String arg) throws IOException {
//Force local passive mode, active mode not supported by through proxy
if (getDataConnectionMode() != PASSIVE_LOCAL_DATA_CONNECTION_MODE) {
throw new IllegalStateException("Only passive connection mode supported using proxy");
}
final boolean isInet6Address = getRemoteAddress() instanceof Inet6Address;
String passiveHost;
// Try EPSV command first on IPv6 - and IPv4 if enabled.
// When using IPv4 with NAT it has the advantage
// to work with more rare configurations.
// E.g. if FTP server has a static PASV address (external network)
// and the client is coming from another internal network.
// In that case the data connection after PASV command would fail,
// while EPSV would make the client succeed by taking just the port.
boolean attemptEPSV = isUseEPSVwithIPv4() || isInet6Address;
if (attemptEPSV && epsv() == FTPReply.ENTERING_EPSV_MODE) {
_parseExtendedPassiveModeReply(_replyLines.get(0));
passiveHost = this.tunnelHost;
} else {
if (isInet6Address) {
return null; // Must use EPSV for IPV6
}
// If EPSV failed on IPV4, revert to PASV
if (pasv() != FTPReply.ENTERING_PASSIVE_MODE) {
return null;
}
_parsePassiveModeReply(_replyLines.get(0));
passiveHost = this.getPassiveHost();
}
return DEFAULT_PROT.equals(protectionLevel) ?
openPlainDataConnection(passiveHost, command, arg) : openEncryptedDataConnection(passiveHost, command, arg);
}
/**
* Create, configure and open SSLSocket via plain tunnel Socket
* @param passiveHost host returned from ftp server after sending PASV command
* @param command to execute
* @param arg for command
* @return SSLSocket using to Data transmit
* @throws IOException
*/
private Socket openEncryptedDataConnection(String passiveHost, String command, String arg) throws IOException {
Socket proxySocket = createTunnelSocket();
proxySocket.connect(new InetSocketAddress(proxyHost, proxyPort), getConnectTimeout());
tunnelHandshake(passiveHost, this.getPassivePort(), proxySocket.getInputStream(),
proxySocket.getOutputStream());
Socket socket = context.getSocketFactory().createSocket(proxySocket, passiveHost, this.getPassivePort(), true);
_prepareDataSocket_(socket);
configureDataSocket(socket);
if (isRestartOffsetIncorrect()) {
proxySocket.close();
socket.close();
return null;
}
if (!FTPReply.isPositivePreliminary(sendCommand(command, arg))) {
proxySocket.close();
socket.close();
return null;
}
if (socket instanceof SSLSocket) {
SSLSocket sslSocket = (SSLSocket) socket;
configureSSLDataSocket(sslSocket);
sslSocket.startHandshake();
}
return socket;
}
private Socket createTunnelSocket() throws IOException {
Socket proxySocket = new Socket();
configureDataSocket(proxySocket);
return proxySocket;
}
private void configureSSLDataSocket(SSLSocket sslSocket) {
sslSocket.setUseClientMode(getUseClientMode());
sslSocket.setEnableSessionCreation(getEnableSessionCreation());
// server mode
if (!getUseClientMode()) {
sslSocket.setNeedClientAuth(getNeedClientAuth());
sslSocket.setWantClientAuth(getWantClientAuth());
}
if (getEnabledCipherSuites() != null) {
sslSocket.setEnabledCipherSuites(getEnabledCipherSuites());
}
if (getEnabledProtocols() != null) {
sslSocket.setEnabledProtocols(getEnabledProtocols());
}
}
private void configureDataSocket(Socket socket) throws IOException {
if (getReceiveDataSocketBufferSize() > 0) {
socket.setReceiveBufferSize(getReceiveDataSocketBufferSize());
}
if (getSendDataSocketBufferSize() > 0) {
socket.setSendBufferSize(getSendDataSocketBufferSize());
}
if (getPassiveLocalIPAddress() != null) {
socket.bind(new InetSocketAddress(getPassiveLocalIPAddress(), 0));
}
}
/**
* @see org.apache.commons.net.ftp.FTPHTTPClient#_openDataConnection_(FTPCmd, String)
* @return Plain Socket using HTTP proxy
*/
private Socket openPlainDataConnection(String passiveHost, String command, String arg) throws IOException {
Socket socket = preparePlainDataTunnelSocket(passiveHost);
if (isRestartOffsetIncorrect()) {
socket.close();
return null;
}
if (!FTPReply.isPositivePreliminary(sendCommand(command, arg))) {
socket.close();
return null;
}
return socket;
}
/**
* Create, prepare and connect plain data transmit socket via tunnel proxy
*/
private Socket preparePlainDataTunnelSocket(String passiveHost) throws IOException {
Socket socket = _socketFactory_.createSocket(proxyHost, proxyPort);
InputStream is = socket.getInputStream();
OutputStream os = socket.getOutputStream();
tunnelHandshake(passiveHost, this.getPassivePort(), is, os);
return socket;
}
/**
* HTTP handshake for proxy
*/
private void tunnelHandshake(String host, int port, InputStream input, OutputStream output) throws IOException {
final String connectString = "CONNECT " + host + ":" + port + " HTTP/1.1";
final String hostString = "Host: " + host + ":" + port;
this.tunnelHost = host;
output.write(connectString.getBytes(StandardCharsets.UTF_8));
output.write(CRLF);
output.write(hostString.getBytes(StandardCharsets.UTF_8));
output.write(CRLF);
if (proxyUsername != null && proxyPassword != null) {
final String auth = proxyUsername + ":" + proxyPassword;
final String header =
"Proxy-Authorization: Basic " + base64.encodeToString(auth.getBytes(StandardCharsets.UTF_8));
output.write(header.getBytes(StandardCharsets.UTF_8));
}
output.write(CRLF);
output.flush();
List<String> response = new ArrayList<>();
BufferedReader reader = new BufferedReader(new InputStreamReader(input, getCharset()));
String responseLine;
while ((responseLine = reader.readLine()) != null && responseLine.length() > 0) {
response.add(responseLine);
}
int size = response.size();
if (size == 0) {
throw new IOException("No response from proxy");
}
String code;
String resp = response.get(0);
if (resp.startsWith("HTTP/") && resp.length() >= 12) {
code = resp.substring(9, 12);
} else {
throw new IOException("Invalid response from proxy: " + resp);
}
if (!"200".equals(code)) {
StringBuilder msg = new StringBuilder();
msg.append("HTTPTunnelConnector: connection failed\r\n");
msg.append("Response received from the proxy:\r\n");
for (String line : response) {
msg.append(line);
msg.append("\r\n");
}
throw new IOException(msg.toString());
}
}
private boolean isRestartOffsetIncorrect() throws IOException {
return (getRestartOffset() > 0) && !restart(getRestartOffset());
}
}

View File

@@ -0,0 +1,43 @@
package org.talend.ftp;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.net.Socket;
import java.util.Locale;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.SSLSessionContext;
import javax.net.ssl.SSLSocket;
import org.apache.commons.net.ftp.FTPSClient;
public class SSLSessionReuseFTPSClient extends FTPSClient {
public SSLSessionReuseFTPSClient(boolean isImplicit, SSLContext context) {
super(isImplicit, context);
}
@Override
protected void _prepareDataSocket_(final Socket socket) {
if (socket instanceof SSLSocket) {
final SSLSession session = ((SSLSocket) _socket_).getSession();
final SSLSessionContext context = session.getSessionContext();
try {
final Field sessionHostPortCache = context.getClass().getDeclaredField("sessionHostPortCache");
sessionHostPortCache.setAccessible(true);
final Object cache = sessionHostPortCache.get(context);
final Method putMethod = cache.getClass().getDeclaredMethod("put", Object.class, Object.class);
putMethod.setAccessible(true);
final Method getHostMethod = socket.getClass().getDeclaredMethod("getHost");
getHostMethod.setAccessible(true);
Object host = getHostMethod.invoke(socket);
final String key =
String.format("%s:%s", host, String.valueOf(socket.getPort())).toLowerCase(Locale.ROOT);
putMethod.invoke(cache, key, session);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}

View File

@@ -7,7 +7,7 @@
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<packaging>jar</packaging>
<version>2.4.1-talend</version>
<version>2.4.5-talend</version>
<name>json-lib</name>
<properties>

Some files were not shown because too many files have changed in this diff Show More