Compare commits

..

128 Commits

Author SHA1 Message Date
Dmytro Sylaiev
3b399cfdac 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
2018-12-18 10:19:36 +02:00
zwxue
36fe13c958 fix(TUP-21175): fix Junits. (#3064) 2018-12-18 14:11:15 +08:00
Tao Tao
9d9a32a7eb 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
2018-12-18 11:35:22 +08:00
hcyi
e067d98e0b fix(TUP-21356):talend-bigdata-launcher-1.2.0-20170410.jar not found when (#3076)
spark job launched from standard job by jobserver.
2018-12-14 19:16:45 +08:00
Chao MENG
16e45df096 fix(TUP-21461): Routine libraries can't be updated to pom.xml of routine (#3073)
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:15:23 +08:00
chmyga
e9b55cded6 fix(TDI-32185): fix limit for dynamic columns (#2468)
* fix(TDI-32185): fix limit for dynamic columns

* Add one line to limit

* fix(TDI-32185): fix limit for dynamic columns

* Add migration task to decrement limit for old jobs

* fix(TDI-32185): fix limit for dynamic columns

* Handle context variables in migration task

* fix(TDI-32185): fix limit for dynamic columns

* Fix issue for empty limit

* fix(TDI-32185): fix limit for dynamic columns

* Fix migration task

* fix(TDI-32185): fix limit for dynamic columns

* Fix migration task
2018-12-13 13:47:35 +02:00
hcyi
e2a08da5c2 fix(TUP-21167):Install Additional Packages has no available modules. (#3062) 2018-12-12 21:11:12 +08:00
jiezhang-tlnd
c8ed02cd6a add junit for(TUP-2136) (#3055) 2018-12-12 16:08:36 +08:00
kcoepeau
af88f68da4 fix(TBD-8089): Hive requiring user when not needed (#3061) 2018-12-11 08:21:34 +01:00
chmyga
0c8bebcc3e fix(TDI-41469): tFileUnarchive zip64 format error (#3026)
* 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-10 17:09:03 +02:00
zwxue
75eacb82ad fix(TUP-21261): force to reload sreenshot (#3051) 2018-12-10 10:42:57 +08:00
nrousseau
01afae2cf9 fix(TUP-21175) avoid exception during junit execution 2018-12-10 10:17:15 +08:00
Tao Tao
06a0e49aa1 bugfix(TUP-21356):"talend-bigdata-launcher-1.2.0-20170410.jar" not found (#3054)
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 10:04:30 +08:00
hwang-talend
1a1cc37f6b bugfix(TUP-21134):"Throw an error if the file already exist" is ticked (#3030)
#2052
2018-12-07 11:49:19 +08:00
Jane Ding
5332cdda92 fix(TUP-21138)Ubuntu18: Resources: Job which uses Resources run failed (#3046)
if its name contains uppercase letter
https://jira.talendforge.org/browse/TUP-21138
2018-12-06 10:43:25 +08:00
Romain Manni-Bucau
40b8104434 layout should rather use list than set, ensure it is typed on the code (#3038) 2018-12-05 20:23:19 +02:00
Jane Ding
91301b6fa3 fix(TUP-21245)faile to check JDBC connection with context Migrate from (#3034)
6.4.1 to 7.1.1
https://jira.talendforge.org/browse/TUP-21245
2018-12-05 14:58:57 +08:00
jiezhang-tlnd
94bb10031f fix(TUP-21326)Guess Schema has error if use existing connection in (#3032)
Joblet
2018-12-05 14:56:08 +08:00
Dmytro Sylaiev
37c11f688b 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-04 16:40:28 +02:00
jiezhang-tlnd
19f9498353 junit(TUP-21094) (#3021)
* junit(TUP-21094)

* add junit(TUP-21094)

* add junit(TUP-21094)

* junit(TUP-21094)
2018-12-04 15:29:05 +08:00
hwang-talend
68dcd32d14 bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet. (#3027)
* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.

* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.
2018-12-04 14:30:25 +08:00
hcyi
667e5d6ec3 fix(TUP-21042):Edit and update the used context group,will show double (#2864)
value and context view vanish.
2018-12-04 14:20:34 +08:00
zwxue
180ab51568 fix(TUP-21175):fix JUnit (#3039) 2018-12-04 10:54:07 +08:00
hcyi
16dfae34e9 fix(TUP-21160):refix JDBC connection will not commit even if autocommit (#3033)
is set to True.
2018-12-04 09:55:50 +08:00
Dmytro Sylaiev
6d41a51fb2 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
2018-12-03 16:35:04 +02:00
pyzhou
7505aaabe8 Pyzhou/tdi 41474 s3 check connection option (#3035)
* fix(TDI-41474):S3 check connection option.

* change EOF
2018-12-03 19:39:53 +08:00
kjwang-talend
0d1baec2c7 TUP-21298 get wrong result when logon main project and run job in reference project with same name (#3012)
* TUP-21298 get wrong result when logon main project and run job in
reference project with same name
https://jira.talendforge.org/browse/TUP-21298

* TUP-21298 get wrong result when logon main project and run job in
reference project with same name (Fix a link to editor problem)
https://jira.talendforge.org/browse/TUP-21298
2018-11-30 15:59:11 +08:00
zwxue
688e671c32 fix(TUP-21261):generate pom for save as of job. (#3023) 2018-11-30 15:33:21 +08:00
Jane Ding
d3361c4281 fix(TUP-21126)Not able to use routines from Reference project (#3024)
* fix(TUP-21126)Not able to use routines from Reference project
https://jira.talendforge.org/browse/TUP-21126

* fix(TUP-21126)Not able to use routines from Reference project
https://jira.talendforge.org/browse/TUP-21126
2018-11-30 11:05:35 +08:00
Tao Tao
35b86f26e8 feat(TUP-21109): Deprecate build of sources from Build job menu (#3022)
https://jira.talendforge.org/browse/TUP-21109
2018-11-29 15:04:48 +08:00
Tao Tao
814cf7599d bugfix(TUP-21216):Audit:Generate Report:NPE when do refresh (#3007)
https://jira.talendforge.org/browse/TUP-21216
2018-11-29 12:40:51 +08:00
zwxue
f1e5205ff5 fix(TUP-21252):tMap losing all links in testcase when we do some (#3013)
modification in the main job in the same component
2018-11-29 11:11:36 +08:00
Ivan Gonchar
b094d9555b feat: upgrade Tacokit runtime to 1.1.2 (#3020) 2018-11-29 09:56:53 +08:00
Mike Yan
7a564b7dbf fix(TESB-22833):CI builder NoClassDefFoundError error with routelet (#2996)
* fix(TESB-23792): Build data service failed in studio

* fix(TESB-22833):CI builder NoClassDefFoundError error with routelet
2018-11-28 11:17:09 +01:00
Dmytro Sylaiev
bc661de659 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
2018-11-28 11:09:35 +02:00
hwang-talend
86cf48ad2c Hwang/tup 21164 (#3004)
* 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 11:26:41 +08:00
Ivan Gonchar
a0fa43b4af Igonchar/tup 20921 remove prefixes (#3009)
* fix(igonchar/TUP-20921): remove schema prefixes from Layout instances

* fix(igonchar/TUP-20921): remove schema prefixes from TacokitDndHandler

* fix(igonchar/TUP-20921): remove schema prefixes from tests
2018-11-27 16:41:23 +02:00
jiezhang-tlnd
809ed05555 fix(TUP-21094)Job can not be run after the first time I set tELTMap and (#3000)
run the job
2018-11-27 15:54:28 +08:00
Tao Tao
bd87559333 bugfix(TUP-21203)D&D resource to Job: even not support it , but studio (#2998)
behavior like we support it

https://jira.talendforge.org/browse/TUP-21203
2018-11-27 15:38:26 +08:00
jiezhang-tlnd
b87e3d0d94 Jzhang/bugfix/tup 20880 repository share show warn dialog choice should also exists for local project (#2999)
* 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 10:22:03 +08:00
ypiel
40fe987857 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
2018-11-26 16:26:05 +01:00
jiezhang-tlnd
536d85b4da fix(TUP-20978)Version change back after add new item on page "Deployment (#2985)
* fix(TUP-20978)Version change back after add new item on page "Deployment
versioning"
https://jira.talendforge.org/browse/TUP-20978

* fix(TUP-20978)Version change back after add new item on page "Deployment

* fix(TUP-20978)Version change back after add new item on page "Deployment
versioning"
2018-11-26 17:28:39 +08:00
Ivan Gonchar
5ffc29ab92 Igonchar/tup 20926 second try (#2995)
* fix(TUP-20926): move metadata retrieval from SchemaActionParameter to SchemaElementParameter

* fix(TUP-20926): implement set schema after update action

* fix(TUP-20926): remove unusued import

* fix(TUP-20926): add unit-tests for SchemaElementParameter

* fix(TUP-20926): add mockito dependency

* fix(TUP-20926): create schema widget only for output schema

* fix(TUP-20926): allow to override SchemaElementParameter.getMetadata()

* fix(TUP-20926): create ListPropertyNode for input schema

* fix(TUP-20926): implement InputSchemaParameter

* fix(TUP-20926): modify SettingVisitor to create InputSchemaParameter for input schemas

* fix(TUP-20926): move InputSchemaCreation from SettingVisitor to Constructor

* fix(TUP-20926): move discover schema name to PropertyDefinitionDecorator.Conenction class

* fix(TUP-20926): extract OutputSchemaParameter

* fix(TUP-20926): move OutputSchema creation from SettingVisitor to OutputSchemaParameter

* fix(TUP-20926): move const to OutputSchemaParameter

* fix(TUP-20926): refactor canAddGuessSchema()

* fix(TUP-20926): fix OutputSchemaParameter.schemaDisplayName()

* fix(TUP-20926): get rid of TACOKIT_INPUT_SCHEMA field type

* fix(TUP-20926): fix according review comments

* Revert "fix(TUP-20926): get rid of TACOKIT_INPUT_SCHEMA field type"

This reverts commit 13cea83260.

* fix(TUP-20926): add Input schema value to Configuration in runtime
2018-11-23 16:34:40 +08:00
pyzhou
04e8a156c5 fix(TDI-41377):Remove jtds.jar from studio. (#2964) 2018-11-23 15:24:22 +08:00
jiezhang-tlnd
7ccd48ee16 fix(TUP-21145)use equals instead (#2988)
* fix(TUP-21145)use equals instead
2018-11-23 14:36:40 +08:00
Mike Yan
8583805ade fix(TESB-23792): Build data service failed in studio (#2847) 2018-11-23 10:58:05 +08:00
hwang-talend
0a0637cd03 bugfix(TUP-21118):Code view/test case still link last component even all (#2969)
bugfix(TUP-21118):Code view/test case still link last component even all job editor closed
2018-11-23 10:57:00 +08:00
hwang-talend
83aa70047d bugfix(TUP-21164):Context is not recognized as context variable in ELT (#2983)
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:50:14 +08:00
Jane Ding
4854be66a1 fix(TUP-21064)NPE happens when 'save as' routine (#2934)
fix(TUP-21064)NPE happens when 'save as' routine
https://jira.talendforge.org/browse/TUP-21064
2018-11-22 18:51:14 +08:00
Ivan Gonchar
74e5cec24e Revert "Igonchar/tup 20926 (#2914)" (#2986)
This reverts commit fa789f9d67.
2018-11-22 17:38:43 +08:00
kjwang-talend
3952520583 Kjwang/fix tup 20843 wrong output results (#2977)
* TUP-20843 Wrong output results when the name of the jobs in the main
project and the reference are same.

* TUP-20843 Wrong output results when the name of the jobs in the main
project and the reference are same.
https://jira.talendforge.org/browse/TUP-20843

* TUP-20843 Wrong output results when the name of the jobs in the main
project and the reference are same.
https://jira.talendforge.org/browse/TUP-20843

* TUP-20843 Wrong output results when the name of the jobs in the main
project and the reference are same.
https://jira.talendforge.org/browse/TUP-20843

* TUP-20843 Wrong output results when the name of the jobs in the main
project and the reference are same.
https://jira.talendforge.org/browse/TUP-20843
2018-11-22 17:28:02 +08:00
kjwang-talend
3a48cba47c Fix : TUP-21137 Security: jtds-1.3.1-patch.jar ntlmauth loaded from a (#2970)
path variable
https://jira.talendforge.org/browse/TUP-21137
2018-11-22 11:37:27 +08:00
hcyi
e7d04ca6fd fix(TUP-21160):JDBC connection will not commit even if autocommit is set (#2976)
to True.
2018-11-22 11:26:00 +08:00
jiezhang-tlnd
393a72f03c fix(TUP-21148)Can't save the changes of Connections (#2978)
* 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 10:44:09 +08:00
Ivan Gonchar
fa789f9d67 Igonchar/tup 20926 (#2914)
* fix(TUP-20926): move metadata retrieval from SchemaActionParameter to SchemaElementParameter

* fix(TUP-20926): implement set schema after update action

* fix(TUP-20926): remove unusued import

* fix(TUP-20926): add unit-tests for SchemaElementParameter

* fix(TUP-20926): add mockito dependency

* fix(TUP-20926): create schema widget only for output schema

* fix(TUP-20926): allow to override SchemaElementParameter.getMetadata()

* fix(TUP-20926): create ListPropertyNode for input schema

* fix(TUP-20926): implement InputSchemaParameter

* fix(TUP-20926): modify SettingVisitor to create InputSchemaParameter for input schemas

* fix(TUP-20926): move InputSchemaCreation from SettingVisitor to Constructor

* fix(TUP-20926): move discover schema name to PropertyDefinitionDecorator.Conenction class

* fix(TUP-20926): extract OutputSchemaParameter

* fix(TUP-20926): move OutputSchema creation from SettingVisitor to OutputSchemaParameter

* fix(TUP-20926): move const to OutputSchemaParameter

* fix(TUP-20926): refactor canAddGuessSchema()

* fix(TUP-20926): fix OutputSchemaParameter.schemaDisplayName()

* fix(TUP-20926): get rid of TACOKIT_INPUT_SCHEMA field type

* fix(TUP-20926): fix according review comments

* Revert "fix(TUP-20926): get rid of TACOKIT_INPUT_SCHEMA field type"

This reverts commit 13cea83260.

* fix(TUP-20926): add Input schema value to Configuration in runtime
2018-11-22 10:36:51 +08:00
zwxue
05e3a2c3a3 fix(TUP-20316):support JDBC for implicit context (#2974) 2018-11-22 09:52:38 +08:00
Roman
225344f897 feat(TDI-41297): mark as duplicated third party apps (#2901) 2018-11-21 10:36:23 +02:00
hwang-talend
4255af05fd Hwang/tup 21105 t db connection (#2953)
* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.

* bugfix(TUP-21105):tDBConnection(Snowflake) issue within joblet.
2018-11-20 17:06:22 +08:00
Dmytro Sylaiev
d574bd93f7 fix(TDI-31328): Add default datePattern to SVNLogInput locked schema (#2965) 2018-11-19 13:52:26 +02:00
ypiel
b942acc1f2 fix(TDI-41394) : tCreateTable vertica 9 support
* fix(TDI-41394) : tCreateTable vertica 9 support
* fix(TDI-41394) : remove .bak files
2018-11-19 11:35:26 +01:00
jiezhang-tlnd
fd71ea4de4 fix(TUP-20993)The prompt box title and icon are inconsistent (#2963)
fix(TUP-20993)The prompt box title and icon are inconsistent
https://jira.talendforge.org/browse/TUP-20993
2018-11-19 15:30:36 +08:00
pyzhou
8928e3cd64 fix(TDI-31797):Basic Run button donnot work (#2930) 2018-11-19 15:06:21 +08:00
Roman
d2c40ec47e feat(TDI-40805): add JDBC properties to Java api mode (#2952) 2018-11-16 11:49:05 +02:00
Ivan Gonchar
76ec69089f fix(TUP-21122): fix missing Table rows (#2928) 2018-11-16 11:37:24 +08:00
Tao Tao
25f77878c8 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
2018-11-15 17:35:48 +08:00
zwxue
6f3bf3a2a3 fix(TUP-19972):remove joblet cache when doing rename (#2944) 2018-11-15 17:35:17 +08:00
jiezhang-tlnd
67f77ed111 fix(TUP-21049)can't find other database in default list with Chinese and (#2924)
* 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-15 10:54:33 +08:00
hcyi
37824ceaa2 fix(TUP-21044);JDBC driver changed when load JDBC-Mysql8 to "Project Setting ---> Job setting ---> Stats&Logs". (#2883)
* 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 10:52:41 +08:00
jiezhang-tlnd
093f673719 fix(TUP-19429)Bad UX on Studio start when TAC is down (#2946)
* fix(TUP-19429)Bad UX on Studio start when TAC is down

* fix(TUP-19429)remove checkbox and rename "Cancel button" as "No button"
2018-11-15 10:28:27 +08:00
Jane Ding
8a28954d64 fix(TUP-21075)Problem of display in the tMap with Mojave (#2943)
https://jira.talendforge.org/browse/TUP-21075
2018-11-15 10:04:12 +08:00
wchen-talend
05cb3b9b86 fix(TUP-20979):OutOfMemoryError error when do build job (#2950)
JOB_GN_SFDC_LANCEUR_FLUX_DELTA_REG14.
2018-11-14 15:04:07 +08:00
wang wei
2e7a5a0241 fix(TDI-41188): map Snowflake Time type to Talend Date instead of Talend Integer (#2945) 2018-11-14 13:51:57 +08:00
Tao Tao
dacab576aa fix(TUP-20927)Automatic scrolling in execution console prevent upper log (#2929)
messages checking
2018-11-14 10:13:44 +08:00
Stéphane Bouchet
3040d26c50 TESB-24093 : context values can be overriten by MS. (#2948) 2018-11-13 16:43:24 +01:00
hwang-talend
8c1e7d9749 bugfix(TUP-21058):Snowflake ELTJDBCInput/Output (#2894)
bugfix(TUP-21058):Snowflake ELTJDBCInput/Output
2018-11-12 10:43:44 +08:00
hcyi
b765cb2cb2 fix(TUP-20561):Prompt message not clear enough when report generation (#2932)
fails because of DB configuration
2018-11-12 10:02:12 +08:00
Dmytro Sylaiev
22d7daceef fix(TDI-41330): Use sql TIME in setNull for SIQ (#2927) 2018-11-09 10:52:19 +02:00
zwxue
094a87c4e5 fix(TUP-21025):popup dialog for docker error. (#2925) 2018-11-08 14:37:40 +08:00
wchen-talend
86649f39f3 fix(TUP-20979):OutOfMemoryError error when do build job (#2899)
JOB_GN_SFDC_LANCEUR_FLUX_DELTA_REG14.
2018-11-08 10:13:12 +08:00
hcyi
94dc36b67c 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 17:42:02 +08:00
hcyi
efd9b7c6e6 fix(TUP-20561):Prompt message not clear enough when report generation (#2897)
fails because of DB configuration
2018-11-07 17:05:01 +08:00
Tao Tao
a60fcde6aa fix(TUP-20612)After change tdbInput from mysql to db2, find the needed jar will not change when click "table name". (#2880)
https://jira.talendforge.org/browse/TUP-20612
2018-11-07 17:04:14 +08:00
hcyi
c8b8b0e2f7 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.
2018-11-07 16:58:54 +08:00
Jane Ding
9d85e7c9ea fix(TUP-21055)Migration check executed at each start of studio (#2884)
* 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 10:32:10 +08:00
jiezhang-tlnd
f165fbeb76 fix(TUP-21017)ORACLE DB data viewer fail in context mode (#2913) 2018-11-07 10:26:44 +08:00
Dmytro Sylaiev
1e2811a1de fix(TDI-41320): Fix oracle 11 migration task use existing connection (#2902) 2018-11-06 15:45:25 +02:00
jzhao
d8fce2ae56 fix(TDI-41176):'File Json' > 'Input Json' metadata does not show parent values in Preview with JsonPath (#2820)
* 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-06 15:25:27 +08:00
Tao Tao
aac768f72e fix(TUP-21022)Project Setting->Shell Setting ->Ps1: unfriendly (#2904)
display of description
2018-11-06 12:28:16 +08:00
Jane Ding
666df92b92 fix(TUP-21075)Problem of display in the tMap with Mojave (#2900)
* 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 12:05:16 +08:00
msjian
cb7b17aef0 fix(TDQ-15627): when the current is DQ Perspective, need to refresh DQ (#2881)
Repository View
2018-11-05 16:36:48 +08:00
hwang-talend
a54a48a193 bugfix(TUP-6872):Code can be drag and the job become dirty (#2898)
bugfix(TUP-6872):Code can be drag and the job become dirty
2018-11-05 16:22:53 +08:00
hwang-talend
c4637848a0 bugfix(TUP-21030):Components don't change to Built-in mode (#2879)
* bugfix(TUP-21030):Components don't change to Built-in mode
2018-11-05 10:51:10 +08:00
Chao MENG
446be73490 fix(TUP-19760): Should disable Create button if Local connection is (#2893)
fix(TUP-19760): Should disable Create button if Local connection is Incomplete
https://jira.talendforge.org/browse/TUP-19760
2018-11-05 10:40:46 +08:00
hcyi
6bd795b2f5 fix(TUP-21054):Jars from db wizard not synchronized with component. (#2861) 2018-11-05 10:08:20 +08:00
chmyga
9255a2ecea fix(TUP-21026): empty schema in suggestable method (#2862)
* fix(TUP-21026): empty schema in suggestable method

* Add schema action parameter

* Add schema element parameter

* Set schema name equal to parameter name

* Set connection type as tagged value

* fix(TUP-21026): add dummy implemenation for SchemaElementParameter methods to fix errors
2018-11-02 13:57:44 +02:00
Tao Tao
665ab4ef55 Fixed(TUP-20927)Automatic scrolling in execution console prevent upper log messages checking (#2890)
https://jira.talendforge.org/browse/TUP-20927
2018-11-02 16:54:36 +08:00
Jane Ding
3ed4bbe422 fix(TUP-20913)Remote project:job run use old data if not run the child (#2888)
job first after change the resources item
https://jira.talendforge.org/browse/TUP-20913
2018-11-02 16:13:16 +08:00
jiezhang-tlnd
b5ef722bfb fix(TUP-20765)"Web-app Url" is read-only and empty after clicking "+"; (#2885) 2018-11-02 10:47:30 +08:00
Jane Ding
2c4764f5e2 fix(TUP-20413)Reload the library will throw NPE in import external jar. (#2882)
* fix(TUP-20413)Reload the library will throw NPE in import external jar.
https://jira.talendforge.org/browse/TUP-20413
Remove the button of reload the library

* fix(TUP-20413)Reload the library will throw NPE in import external jar.
https://jira.talendforge.org/browse/TUP-20413
Remove the button of reload the library
2018-11-02 10:45:44 +08:00
Tao Tao
044ed0ca33 Ttao/bugfix/tup 20905 edit resource page show ok (#2856)
* bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page.

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

*     bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page.

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

* bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page.

https://jira.talendforge.org/browse/TUP-20905
2018-11-01 18:02:55 +08:00
hwang-talend
b04c7085b0 bugfix(TUP-21041):ELT Maps generate incorrect SQL when sql contains (#2857)
bugfix(TUP-21041):ELT Maps generate incorrect SQL when sql contains schema.table.column1 + schema.table.column2
2018-11-01 14:24:19 +08:00
hwang-talend
6df68d8f30 bugfix(TUP-20915):Testcase: Deleted testcase is still in build-out (#2863)
bugfix(TUP-20915):Testcase: Deleted testcase is still in build-out file->sunfire-reports folder
2018-11-01 14:22:15 +08:00
hwang-talend
4948832847 Hwang/tup 20837 master (#2859)
* bugfix(TUP-20837):Job containing saleforce components takes too much
time to open
2018-11-01 14:16:37 +08:00
pyzhou
0f055deb2e fix(TDI-32967):tLogRow length do not support context (#2868) 2018-11-01 11:36:59 +08:00
jiezhang-tlnd
e6b28934a3 fix(TUP-21005)In studio Java Debugging of Routes fails (#2869) 2018-11-01 11:00:32 +08:00
Anas KHABALI
34c88151ff fix(TUP-21046) : Talend Component Kit guess schema should ignore lines not being json (#2865) 2018-10-30 16:12:15 +01:00
Roman
8093d8f8db fix(TDI-41162): correct file detail for FTP and FTPs mode (#2819)
* fix(TDI-41162): correct file detail for FTP mode

* fix(TDI-41162): change logic for matcher
2018-10-29 14:15:18 +02:00
Dmytro Sylaiev
42ef0e2196 fix(TDI-41276): Use correct SQLType for null Time (#2852)
* fix(TDI-41276): Use correct SQLType for null Time

* fix(TDI-41276): Fix codegen error
2018-10-29 12:02:05 +02:00
Jane Ding
2044170d62 fix(TUP-20913)Remote project:job run use old data if not run the child (#2858)
job first after change the resources item
https://jira.talendforge.org/browse/TUP-20913
2018-10-29 09:38:20 +08:00
hwang-talend
b1168f1492 bugfix(TUP-20693):Table selection widget - wrong generated code (#2818)
bugfix(TUP-20693):Table selection widget - wrong generated code
2018-10-26 15:43:23 +08:00
Jane Ding
c953807960 fix(TUP-20778)Reference Project - New context group variable not (#2849)
getting applied to the jobs
https://jira.talendforge.org/browse/TUP-20778
2018-10-26 11:30:38 +08:00
Chao MENG
9dd450642d fix(TUP-21039): "Apply context to children jobs" does not work for "grand son" job if Studio not restarted (#2848)
* fix(TUP-21039): "Apply context to children jobs" does not work for
"grand son" job if Studio not restarted
https://jira.talendforge.org/browse/TUP-21039

* fix(TUP-21039): "Apply context to children jobs" does not work for
"grand son" job if Studio not restarted
https://jira.talendforge.org/browse/TUP-21039
2018-10-26 10:16:24 +08:00
Chao MENG
9ebea0a67b Revert "bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page. (#2851)" (#2853)
This reverts commit eadb617982.
2018-10-25 19:18:50 +08:00
ttao-talendbj
eadb617982 bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page. (#2851)
* bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page.

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

*     bugfix(TUP-20905)Edit resource wizard show "Ok" when open the page.

    https://jira.talendforge.org/browse/TUP-20905
2018-10-25 19:16:26 +08:00
nrousseau
effd8ee069 chore(TUP-20636) fix wrong module name 2018-10-25 11:16:50 +08:00
Chao MENG
f6b2ca56e7 chore: resolve tacokit sdk plugin compile error in eclipse (#2846)
chore: resolve tacokit sdk plugin compile error in eclipse
2018-10-25 10:46:38 +08:00
ttao-talendbj
05d67fc5d3 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
2018-10-25 10:28:45 +08:00
wchen-talend
c3abb7253c fix(TUP-21010):Jar name on classpath should be based on mvn uri (#2832)
* fix(TUP-21010):Jar name on classpath should be based on mvn uri

* fix(TUP-21010):Jar name on classpath should be based on mvn uri
2018-10-23 14:16:00 +08:00
nrousseau
2275368f6d chore(TUP-7300) fix junits 2018-10-23 13:34:46 +08:00
zwxue
f7e8d452b7 fix(TUP-20977):update message (#2838) 2018-10-23 12:14:05 +08:00
pyzhou
ced343de11 Revert "fix(TDI-41258):align the mvn path of commons-logging" (#2835)
This reverts commit 901a104988.
2018-10-23 10:40:58 +08:00
Jane Ding
8dc906c82b For both route and standard job use Resource in repository, some words (#2830)
* For both route and standard job use Resource in repository, some words
need to be updated in wizard.

* For both route and standard job use Resource in repository, some words
need to be updated.
2018-10-23 10:19:09 +08:00
apoltavtsev
48bc805931 TESB-23870 Camel dependencies are not included to manifest of route's child jobs (#2831)
* TESB-23870 Camel dependencies are not included to manifest of route's child jobs

* Explicit check for Job type is added
2018-10-23 09:43:38 +08:00
pyzhou
034ea26970 Pyzhou/tdi 41258 align mvn path to official (#2827)
* fix(TDI-41258):align the mvn path of joda-time

* fix(TDI-41258):correct the mvn path commons-logging redshift

* fix(TDI-41258):align the mvn path of commons-logging
2018-10-23 09:43:00 +08:00
Dmytro Sylaiev
bb15ea4549 fix(TDI-41260): Change driver jar name oracle (#2829) 2018-10-22 18:01:00 +03:00
wang wei
ee65a2c321 fix(TDI-41251): Update jackson libraries to avoid CVE-2018-15758 (#2824)
* fix(TDI-41251): Update jackson libraries to avoid CVE-2018-15758

* fix(TDI-41251) update jackson libs
2018-10-20 13:46:39 +08:00
nrousseau
5ca85bb36d babili-export (#2825) 2018-10-20 11:06:01 +08:00
Jenkins Continuous Build server
b681eb6f18 Set version to 7.2.1 SNAPSHOT 2018-10-18 13:37:51 +02:00
621 changed files with 9412 additions and 12499 deletions

View File

@@ -1,64 +0,0 @@
---
version: 7.1.1
module: https://talend.poolparty.biz/coretaxonomy/42
product:
- https://talend.poolparty.biz/coretaxonomy/23
---
# TPS-4399
| Info | Value |
| ---------------- | ---------------- |
| 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
This is a self-contained patch.
**NOTE**: For information on how to obtain this patch, reach out to your Support contact at Talend.
## Fixed issues
This patch contains the following fixes:
- TPS-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
- 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
- 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/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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier">
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.qualifier"
provider-name=".Talend SA.">
<description url="http://www.talend.com/online/featuresdescription.html#repository-feature">
@@ -109,12 +109,6 @@
install-size="0"
version="0.0.0"/>
<plugin
id="org.talend.libraries.jdbc.jtds"
download-size="0"
install-size="0"
version="0.0.0"/>
<plugin
id="org.talend.libraries.jdbc.mysql"
download-size="0"

View File

@@ -4,7 +4,7 @@
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>7.1.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier">
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier">
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier"
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier">
version="7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.business.diagram</artifactId>

View File

@@ -45,8 +45,8 @@ public class BusinessModelsRepoViewLinker extends AbstractRepositoryEditorInputL
* java.lang.String)
*/
@Override
public boolean isRelation(IEditorInput editorInput, String repoNodeId) {
return super.isRelation(getRealEditorInput(editorInput), repoNodeId);
public boolean isRelation(IEditorInput editorInput, String repoNodeProjectTechLabel, String repoNodeId) {
return super.isRelation(getRealEditorInput(editorInput), repoNodeProjectTechLabel, repoNodeId);
}
private RepositoryEditorInput getRealEditorInput(IEditorInput editorInput) {

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.2.qualifier
Bundle-Version: 7.2.1.qualifier
Bundle-Localization: plugin
Require-Bundle: org.talend.core.repository,
org.eclipse.emf.codegen,

View File

@@ -506,14 +506,11 @@
if (inContext == null) {
inContext = <%=className%>.class.getClassLoader().getResourceAsStream("config/contexts/" + contextStr + ".properties");
}
if (inContext != null) {
if (inContext != null && context != null && context.isEmpty()) {
//defaultProps is in order to keep the original context value
if(context != null && context.isEmpty()) {
defaultProps.load(inContext);
context = new ContextProperties(defaultProps);
}
defaultProps.load(inContext);
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);
@@ -537,7 +534,7 @@
class ContextProcessing {
private void processContext_0() {
<%
for (int i = 1; i <= params.size(); i++) {
for (int i = 1; i < params.size(); i++) {
IContextParameter ctxParam = params.get(i-1);
if (i % maxContextInOneMethodToProcess == 0) {
/* close previous method and declare new */
@@ -1195,11 +1192,13 @@ if (execStat) {
} else {
type = "ftp";
}
if ("sftp".equals(type)) { %>
if ("ftp".equals(type)) { %>
((com.enterprisedt.net.ftp.FTPClient) obj_conn).quit();
<%} else if ("sftp".equals(type)) { %>
((com.jcraft.jsch.ChannelSftp) obj_conn).quit();
<%} else { %>
((org.apache.commons.net.ftp.FTPClient) obj_conn).disconnect();
<%}%>
<%} else { %>
((org.apache.commons.net.ftp.FTPSClient) obj_conn).disconnect();
<%}%>
}
<% } %>
} catch (java.lang.Exception e) {

View File

@@ -69,140 +69,145 @@ if(hasInput){
}
}
}
boolean hasValidInput = inputConn!=null;
if (hasValidInput) {
IMetadataTable metadata = null;
List<IMetadataTable> metadatas = node.getMetadataList();
boolean haveValidNodeMetadata = ((metadatas != null) && (metadatas.size() > 0) && (metadata = metadatas.get(0)) != null);
if (hasValidInput && haveValidNodeMetadata) {
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 (input_columnList!=null && !input_columnList.isEmpty()) {
// add incoming (not present) columns to enforcer for this comps
if (cid.contains("tDataStewardship") || cid.contains("tMarkLogic")){
%>
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;
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));
if (shouldCreateRuntimeSchemaForIncomingNode){
incomingEnforcer_<%=cid%>.createRuntimeSchema();
}
<%
}
} // column
// 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.
// 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.
int dynamicPos = -1;
for (int i = 0; i < input_columnList.size(); i++) {
if (input_columnList.get(i).getTalendType().equals("id_Dynamic")) {
dynamicPos = i;
break;
}
}
// 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);
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);
}
}
}
} // 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){
} // property
} // propInfo
%>
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%>);
}
}
<%
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%>);
}
}
<%
}
}
}
} // canStart

View File

@@ -62,8 +62,6 @@ 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%>");
<%
}
@@ -117,11 +115,10 @@ 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(dbName==null?dynamicField_<%=cid%>.name():dbName);
dynamicMetadata_<%=cid%>.setDbName(dynamicField_<%=cid%>.name());
// 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);
boolean talendEsbJob = talendEsbJobFactory || actAsConsumer || ProcessorUtilities.isEsbJob(process.getId(), process.getVersion());
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));
@@ -512,8 +512,6 @@ 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) {
@@ -545,7 +543,6 @@ 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);
<%
@@ -558,7 +555,6 @@ private class TalendException extends Exception {
<%
}
if(virtualNCatchNode!=null){
needCatchTalendException = true;
%>
<%=virtualNCatchNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
@@ -572,12 +568,31 @@ 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) {
//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
<%
if (process.getNodesOfType("tLogCatcher").size() > 0) {
%>
} 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.2-SNAPSHOT</version>
<version>7.2.1-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.codegen</artifactId>

View File

@@ -48,7 +48,6 @@ 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,11 +30,6 @@ 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;
@@ -144,119 +139,66 @@ 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) {
if (wait4InitialiseFinish()) {
return;
}
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 {
try {
initialiseLock.lock();
} catch (Exception e) {
throw new RuntimeException(e);
}
isInitialising.set(true);
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();
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());
}
} catch (IOException e) {
ExceptionHandler.process(e);
} else {
cache.getComponentEntryMap().clear();
isCreated = false;
}
loadComponentsFromComponentsProviderExtension();
// TimeMeasure.step("initComponents", "loadComponentsFromProvider");
// 2.Load Component from extension point: component_definition
loadComponentsFromExtensions();
// TimeMeasure.step("initComponents", "loadComponentsFromExtension[joblets?]");
ComponentManager.saveResource(); // will save only if needed.
// init component name map, used to pick specified component immediately
initComponentNameMap();
// 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();
} catch (IOException e) {
ExceptionHandler.process(e);
cache.getComponentEntryMap().clear();
isCreated = false;
}
}
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;
loadComponentsFromComponentsProviderExtension();
// TimeMeasure.step("initComponents", "loadComponentsFromProvider");
// 2.Load Component from extension point: component_definition
loadComponentsFromExtensions();
// TimeMeasure.step("initComponents", "loadComponentsFromExtension[joblets?]");
ComponentManager.saveResource(); // will save only if needed.
// init component name map, used to pick specified component immediately
initComponentNameMap();
// 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;
}
protected void initComponentNameMap() {
@@ -787,8 +729,7 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public int size() {
wait4InitialiseFinish();
public synchronized int size() {
if (componentList == null) {
init(false);
}
@@ -796,8 +737,7 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public IComponent get(String name) {
wait4InitialiseFinish();
public synchronized IComponent get(String name) {
if (componentList == null) {
init(false);
}
@@ -817,8 +757,7 @@ public class ComponentsFactory implements IComponentsFactory {
* @see org.talend.core.model.components.IComponentsFactory#get(java.lang.String, java.lang.String)
*/
@Override
public IComponent get(String name, String paletteType) {
wait4InitialiseFinish();
public synchronized IComponent get(String name, String paletteType) {
if (componentList == null) {
init(false);
}
@@ -833,7 +772,6 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public IComponent getJobletComponent(String name, String paletteType) {
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -861,7 +799,6 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public void initializeComponents(IProgressMonitor monitor) {
this.monitor = monitor;
wait4InitialiseFinish();
if (componentList == null) {
init(false);
}
@@ -872,7 +809,6 @@ public class ComponentsFactory implements IComponentsFactory {
@Override
public void initializeComponents(IProgressMonitor monitor, boolean duringLogon) {
this.monitor = monitor;
wait4InitialiseFinish();
if (componentList == null) {
init(duringLogon);
}
@@ -886,18 +822,12 @@ public class ComponentsFactory implements IComponentsFactory {
* @see org.talend.core.model.components.IComponentsFactory#getComponents()
*/
@Override
public Set<IComponent> getComponents() {
wait4InitialiseFinish();
public synchronized Set<IComponent> getComponents() {
if (componentList == null) {
init(false);
}
return componentList;
}
@Override
public boolean isInitialising() {
return isInitialising.get();
}
@Override
public Collection<IComponent> readComponents() {
@@ -910,8 +840,7 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public Map<String, Map<String, Set<IComponent>>> getComponentNameMap() {
wait4InitialiseFinish();
public synchronized Map<String, Map<String, Set<IComponent>>> getComponentNameMap() {
if (componentNameMap == null) {
init(false);
}
@@ -919,8 +848,7 @@ public class ComponentsFactory implements IComponentsFactory {
}
@Override
public List<IComponent> getCustomComponents() {
wait4InitialiseFinish();
public synchronized List<IComponent> getCustomComponents() {
if (customComponentList == null) {
init(false);
}
@@ -934,7 +862,6 @@ public class ComponentsFactory implements IComponentsFactory {
*/
@Override
public List<String> getSkeletons() {
wait4InitialiseFinish();
if (skeletonList == null) {
init(false);
}
@@ -973,7 +900,6 @@ 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.2.qualifier
Bundle-Version: 7.2.1.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.2-SNAPSHOT</version>
<version>7.2.1-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.2.qualifier
Bundle-Version: 7.2.1.qualifier
Require-Bundle: org.eclipse.core.runtime
Bundle-ActivationPolicy: lazy
Bundle-Vendor: .Talend SA.

View File

@@ -1,50 +0,0 @@
<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

@@ -1,309 +0,0 @@
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

@@ -1,43 +0,0 @@
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.5-talend</version>
<version>2.4.1-talend</version>
<name>json-lib</name>
<properties>

View File

@@ -15,7 +15,6 @@
*/
package net.sf.json.util;
import java.math.BigDecimal;
import net.sf.json.JSONArray;
import net.sf.json.JSONException;
import net.sf.json.JSONNull;
@@ -415,7 +414,7 @@ public class JSONTokener {
}
try{
return createNumber(s);
return NumberUtils.createNumber(s);
}catch( Exception e ){
return s;
}
@@ -436,26 +435,6 @@ public class JSONTokener {
return s;
}
/**
* This method has been added to fix https://jira.talendforge.org/browse/TDI-42689
*
* @param s The String representation of the number
* @return The Number instance
*/
private Number createNumber(String s){
boolean isDecimal = s.indexOf('.') != -1;
if(isDecimal){
Double d = Double.valueOf(s);
if(Double.POSITIVE_INFINITY == Math.abs(d)){
return new BigDecimal(s);
}
return d;
}
return NumberUtils.createNumber(s);
}
/**
* Look at the next character in the source string.
*

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