Compare commits
189 Commits
ypiel/TDI-
...
patch/TPS-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1e2e506e3b | ||
|
|
97c790e2f5 | ||
|
|
5b06de4df9 | ||
|
|
48d1297a8b | ||
|
|
7b5b26f325 | ||
|
|
d866f8a853 | ||
|
|
17a2e919fc | ||
|
|
d760cbd25e | ||
|
|
7e6bab7819 | ||
|
|
35a9fead7e | ||
|
|
2a67ced722 | ||
|
|
576d7e63f9 | ||
|
|
7b9f8948df | ||
|
|
c5fd7d97d4 | ||
|
|
8321757d44 | ||
|
|
9892e8a86d | ||
|
|
afb2687746 | ||
|
|
14c248bc10 | ||
|
|
af0b7a2d3b | ||
|
|
84a5fa74db | ||
|
|
21f53c14c2 | ||
|
|
3c3ddcf4f3 | ||
|
|
0e63ab14c7 | ||
|
|
50a6c0096c | ||
|
|
152e672b12 | ||
|
|
5bff796d45 | ||
|
|
ecb8c2d693 | ||
|
|
e2ac795f4c | ||
|
|
78d977871b | ||
|
|
3bf8e16503 | ||
|
|
118731263c | ||
|
|
72232409b8 | ||
|
|
43ea3e1628 | ||
|
|
b832982551 | ||
|
|
d35f3d2589 | ||
|
|
7d2f9c40eb | ||
|
|
791ced6856 | ||
|
|
cbe2bb000d | ||
|
|
3dba3ac322 | ||
|
|
97502bfae4 | ||
|
|
e4d56a9c76 | ||
|
|
2d8a6ad376 | ||
|
|
d6faaab7d5 | ||
|
|
77a502e480 | ||
|
|
f2980de168 | ||
|
|
a999d64f4c | ||
|
|
9173316f02 | ||
|
|
a080f9ff63 | ||
|
|
6f1190ee4d | ||
|
|
545b864bfd | ||
|
|
eca54ac7ca | ||
|
|
4218e443c4 | ||
|
|
63a0a09d99 | ||
|
|
3e0973ff19 | ||
|
|
5391b48920 | ||
|
|
112625f8f7 | ||
|
|
1732c6f9b5 | ||
|
|
9e4f5bb1dc | ||
|
|
d6431794d7 | ||
|
|
7ba8c9a37a | ||
|
|
13f391bc87 | ||
|
|
b5469fb531 | ||
|
|
31b8b5467c | ||
|
|
c6901ce17d | ||
|
|
a613d635d7 | ||
|
|
1deaf892c8 | ||
|
|
27540097e4 | ||
|
|
e7d0282538 | ||
|
|
6541771b5c | ||
|
|
22a24f13be | ||
|
|
3861eeaa7a | ||
|
|
a54e0e72a3 | ||
|
|
2c25ae3771 | ||
|
|
f6511ae89f | ||
|
|
19eca3dfec | ||
|
|
5f89ab04b2 | ||
|
|
70f464f593 | ||
|
|
a4c2535692 | ||
|
|
58d6ec8ac2 | ||
|
|
57a92b3e84 | ||
|
|
0f24c04458 | ||
|
|
f7d399692b | ||
|
|
3782b860b4 | ||
|
|
c020bb15e9 | ||
|
|
e222af6665 | ||
|
|
c78077f09e | ||
|
|
af94813a99 | ||
|
|
ef2aff872f | ||
|
|
a6b2275a32 | ||
|
|
2334c578a1 | ||
|
|
e128252b66 | ||
|
|
547ad1d694 | ||
|
|
71c6234cab | ||
|
|
6f02dd7443 | ||
|
|
3e9834bd80 | ||
|
|
031689f083 | ||
|
|
bad2301bee | ||
|
|
3038b140a3 | ||
|
|
eefa078591 | ||
|
|
66d8e597f3 | ||
|
|
54b17eea2c | ||
|
|
c47775c2f0 | ||
|
|
9d8b79465f | ||
|
|
e2dc1e9a00 | ||
|
|
e962f9cd2f | ||
|
|
6bb84e0372 | ||
|
|
074c4e9042 | ||
|
|
53f33e7a02 | ||
|
|
f505cd58cd | ||
|
|
f03218164a | ||
|
|
12ead4619e | ||
|
|
88d64fbe8e | ||
|
|
be36d6f345 | ||
|
|
dbc6d113ea | ||
|
|
9d6d0b5f2f | ||
|
|
73e8e28e56 | ||
|
|
bb12e394f8 | ||
|
|
1557474f25 | ||
|
|
91f19609e8 | ||
|
|
e3a0772610 | ||
|
|
cb7bc645ce | ||
|
|
a1095d8d2e | ||
|
|
724a82dde4 | ||
|
|
d692eb0088 | ||
|
|
3170a61736 | ||
|
|
34c380bb33 | ||
|
|
6ae9750c4f | ||
|
|
3891599573 | ||
|
|
e556a39c4e | ||
|
|
db14446448 | ||
|
|
b2c2e65b0a | ||
|
|
88f328b9b6 | ||
|
|
1fc8ef0894 | ||
|
|
1a1698e27b | ||
|
|
69f3e4b340 | ||
|
|
56af81bdbc | ||
|
|
5a2441b2f2 | ||
|
|
2d9998f886 | ||
|
|
95a920cf88 | ||
|
|
697a49294d | ||
|
|
55af9efbfc | ||
|
|
75a05ec18d | ||
|
|
8038722fa7 | ||
|
|
8b0692e2d6 | ||
|
|
f9fb319f79 | ||
|
|
5ffae2364b | ||
|
|
ec1da68a4e | ||
|
|
ed5135c814 | ||
|
|
17309e5abc | ||
|
|
06178fbc2e | ||
|
|
c6a11aa5ff | ||
|
|
42335629c4 | ||
|
|
5441f05bfd | ||
|
|
82eedbeb27 | ||
|
|
5f3fcc1f69 | ||
|
|
5249e19a8a | ||
|
|
bf34aae7ad | ||
|
|
9b4ca1d33f | ||
|
|
bd8a39cf01 | ||
|
|
cc6697b350 | ||
|
|
8f62485600 | ||
|
|
82243d59ac | ||
|
|
2502d31aaf | ||
|
|
df2d7343ec | ||
|
|
bc660975e5 | ||
|
|
9fe8679535 | ||
|
|
11efa75ac6 | ||
|
|
a0fd5cdae5 | ||
|
|
ee76694e1c | ||
|
|
7dbb3020dd | ||
|
|
3b3be3a38e | ||
|
|
7bebb2dd41 | ||
|
|
69bec6798c | ||
|
|
b1f6d21099 | ||
|
|
a623cac57f | ||
|
|
718889c5ca | ||
|
|
8bcf305d3d | ||
|
|
f50a2d9148 | ||
|
|
3a6c61c3d6 | ||
|
|
206463a376 | ||
|
|
081cb65784 | ||
|
|
771a3b472d | ||
|
|
a032ac99d6 | ||
|
|
7717b3e202 | ||
|
|
ffa3316b40 | ||
|
|
615e5bd5e3 | ||
|
|
85a693f6e2 | ||
|
|
f11620e9f2 | ||
|
|
516e4a8fa6 |
66
PATCH_RELEASE_NOTE.md
Normal file
66
PATCH_RELEASE_NOTE.md
Normal file
@@ -0,0 +1,66 @@
|
||||
---
|
||||
version: 7.2.1
|
||||
module: https://talend.poolparty.biz/coretaxonomy/42
|
||||
product:
|
||||
- https://talend.poolparty.biz/coretaxonomy/23
|
||||
---
|
||||
|
||||
# TPS-5130
|
||||
|
||||
| Info | Value |
|
||||
| ---------------- | ---------------- |
|
||||
| Patch Name | Patch\_20220309\_TPS-5130\_v1-7.2.1 |
|
||||
| Release Date | 2022-03-09 |
|
||||
| Target Version | 20190620\_1446-V7.2.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:
|
||||
|
||||
- [7.2.1]File mask in tftpget component are not working (TDI-46333)
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Consider the following requirements for your system:
|
||||
|
||||
- Talend Studio 7.2.1 must be installed.
|
||||
|
||||
## Installation
|
||||
|
||||
### Installing the patch using Software update
|
||||
|
||||
1) Logon TAC and switch to Configuration->Software Update, then enter the correct values and save referring to the documentation: https://help.talend.com/reader/f7Em9WV_cPm2RRywucSN0Q/j9x5iXV~vyxMlUafnDejaQ
|
||||
|
||||
2) Switch to Software update page, where the new patch will be listed. The patch can be downloaded from here into the nexus repository.
|
||||
|
||||
3) On Studio Side: Logon Studio with remote mode, on the logon page the Update button is displayed: click this button to install the patch.
|
||||
|
||||
### Installing the patch using Talend Studio
|
||||
|
||||
1) Create a folder named "patches" under your studio installer directory and copy the patch .zip file to this folder.
|
||||
|
||||
2) Restart your studio: a window pops up, then click OK to install the patch, or restart the commandline and the patch will be installed automatically.
|
||||
|
||||
### Installing the patch using Commandline
|
||||
|
||||
Execute the following commands:
|
||||
|
||||
1. Talend-Studio-win-x86_64.exe -nosplash -application org.talend.commandline.CommandLine -consoleLog -data commandline-workspace startServer -p 8002 --talendDebug
|
||||
2. initRemote {tac_url} -ul {TAC login username} -up {TAC login password}
|
||||
3. checkAndUpdate -tu {TAC login username} -tup {TAC login password}
|
||||
|
||||
## Affected files for this patch <!-- if applicable -->
|
||||
|
||||
The following files are installed by this patch:
|
||||
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tFTPDelete/tFTPDelete\_main.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tFTPFileList/tFTPFileList\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tFTPGet/tFTPGet\_begin.javajet
|
||||
- {Talend\_Studio\_path}/plugins/org.talend.designer.components.localprovider\_7.2.1.20190614\_0309/components/tFTPTruncate/tFTPTruncate\_main.javajet
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.designer.feature" label="Designer Feature" version="8.0.1.qualifier" provider-name=".Talend SA.">
|
||||
<feature id="org.talend.designer.feature" label="Designer Feature" version="8.8.8.qualifier" provider-name=".Talend SA.">
|
||||
<description url="http://www.talend.com/online/featuresdescription.html#designer-feature">Complete description about this feature at http://www.talend.com/online/featuresdescription.html#designer-feature</description>
|
||||
<copyright url="http://www.talend.com/online/copyright.txt">Copyright Talend 2006, 2007</copyright>
|
||||
<license>The licence are describe in branding feature</license>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.fragment.jars.di.feature"
|
||||
label="Fragment Jars in DI"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
[Enter Feature Description here.]
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.fragment.jars.di.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.gmf.feature"
|
||||
label="Gmf"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
GMF
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.gmf.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.rcp.branding.tos.feature" label="Tos branding feature" version="8.0.1.qualifier" provider-name=".Talend SA." plugin="org.talend.rcp.branding.tos">
|
||||
<feature id="org.talend.rcp.branding.tos.feature" label="Tos branding feature" version="8.8.8.qualifier" provider-name=".Talend SA." plugin="org.talend.rcp.branding.tos">
|
||||
<description url="http://www.example.com/description">[Enter Feature Description here.]</description>
|
||||
<copyright url="http://www.example.com/copyright">[Enter Copyright Description here.]</copyright>
|
||||
<license>[Enter License Description here.]</license>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp.branding.tos.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.rcp.branding.tos.test.feature" label="Test feature for TOS" version="8.0.1.qualifier">
|
||||
<feature id="org.talend.rcp.branding.tos.test.feature" label="Test feature for TOS" version="8.8.8.qualifier">
|
||||
<description url="http://www.example.com/description">[Enter Feature Description here.]</description>
|
||||
<copyright url="http://www.example.com/copyright">[Enter Copyright Description here.]</copyright>
|
||||
<license url="http://www.example.com/license">[Enter License Description here.]</license>
|
||||
@@ -16,7 +16,6 @@
|
||||
<import plugin="org.talend.repository" version="0.0.0" match="greaterOrEqual"/>
|
||||
<import plugin="org.talend.utils" version="0.0.0" match="greaterOrEqual"/>
|
||||
</requires>
|
||||
<plugin id="org.talend.common.ui.runtime.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.commons.runtime.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.commons.ui.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.core.repository.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
@@ -44,14 +43,11 @@
|
||||
<plugin id="org.talend.migrationTool.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.model.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.generic.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.json.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.items.importexport.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.items.importexport.ui.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.localprovider.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.metadata.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.sqlbuilder.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.presentation.onboarding.resource.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.view.di.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.repository.view.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
|
||||
<plugin id="org.talend.testutils" download-size="0" install-size="0" version="0.0.0" unpack="false"/>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp.branding.tos.test.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.repository.feature" label="Repository Feature" version="8.0.1.qualifier" provider-name=".Talend SA.">
|
||||
<feature id="org.talend.repository.feature" label="Repository Feature" version="8.8.8.qualifier" provider-name=".Talend SA.">
|
||||
<description url="http://www.talend.com/online/featuresdescription.html#repository-feature">Complete description about this feature at http://www.talend.com/online/featuresdescription.html#repository-feature</description>
|
||||
<copyright url="http://www.talend.com/online/copyright.txt">Copyright Talend 2006, 2007</copyright>
|
||||
<license>The licence are describe in branding feature</license>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.repository.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.azurestorage.feature"
|
||||
label="Azure Storage"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Azure Storage
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.azurestorage.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.googledrive.feature"
|
||||
label="Google Drive"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Google drive component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.googledrive.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.jdbc.feature"
|
||||
label="JDBC_feature"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
[Enter Feature Description here.]
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.jdbc.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.jira.feature"
|
||||
label="Jira"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Jira component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.jira.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.marketo.feature"
|
||||
label="Marketo"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Marketo component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.marketo.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.marklogic.feature"
|
||||
label="Marklogic"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Marklogic component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.marklogic.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.netsuite.feature"
|
||||
label="Netsuite"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Netsuite
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.netsuite.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.salesforce.feature"
|
||||
label="Salesforce"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Salesforce component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.salesforce.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.snowflake.feature"
|
||||
label="SNOWFLAKE_feature"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Snowflake
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.snowflake.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.studio.components.tcompv0.splunk.feature"
|
||||
label="Splunk"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
Splunk component
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.studio.components.tcompv0.splunk.feature</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<feature
|
||||
id="org.talend.tos.components.feature"
|
||||
label="Components-feature"
|
||||
version="8.0.1.qualifier">
|
||||
version="8.8.8.qualifier">
|
||||
|
||||
<description url="http://www.example.com/description">
|
||||
[Enter Feature Description here.]
|
||||
@@ -164,7 +164,7 @@
|
||||
install-size="0"
|
||||
version="0.0.0"
|
||||
unpack="false"/>
|
||||
|
||||
|
||||
<plugin
|
||||
id="org.talend.designer.filemultischemas"
|
||||
download-size="0"
|
||||
@@ -248,12 +248,5 @@
|
||||
install-size="0"
|
||||
version="0.0.0"
|
||||
unpack="false"/>
|
||||
|
||||
<plugin
|
||||
id="org.talend.designer.esb.components.rs.consumer"
|
||||
download-size="0"
|
||||
install-size="0"
|
||||
version="0.0.0"
|
||||
unpack="false"/>
|
||||
|
||||
</feature>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.components.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.tos.core.feature" label="Feature" version="8.0.1.qualifier">
|
||||
<feature id="org.talend.tos.core.feature" label="Feature" version="8.8.8.qualifier">
|
||||
<description url="http://www.example.com/description">[Enter Feature Description here.]</description>
|
||||
<copyright url="http://www.example.com/copyright">[Enter Copyright Description here.]</copyright>
|
||||
<license url="http://www.example.com/license">[Enter License Description here.]</license>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.core.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.tos.feature" label="Tos feature" version="8.0.1.qualifier" provider-name=".Talend SA.">
|
||||
<feature id="org.talend.tos.feature" label="Tos feature" version="8.8.8.qualifier" provider-name=".Talend SA.">
|
||||
<description url="http://www.example.com/description">[Enter Feature Description here.]</description>
|
||||
<copyright url="http://www.example.com/copyright">[Enter Copyright Description here.]</copyright>
|
||||
<license>[Enter License Description here.]</license>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.feature</artifactId>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<feature id="org.talend.tos.libraries.feature" label="Libraries_feature" version="8.0.1.qualifier">
|
||||
<feature id="org.talend.tos.libraries.feature" label="Libraries_feature" version="8.8.8.qualifier">
|
||||
<description url="http://www.example.com/description">[Enter Feature Description here.]</description>
|
||||
<copyright url="http://www.example.com/copyright">[Enter Copyright Description here.]</copyright>
|
||||
<license url="http://www.example.com/license">[Enter License Description here.]</license>
|
||||
@@ -46,5 +46,4 @@
|
||||
<plugin id="org.talend.libraries.slf4j" download-size="0" install-size="0" version="0.0.0"/>
|
||||
<plugin id="org.talend.libraries.xml" download-size="0" install-size="0" version="0.0.0"/>
|
||||
<plugin id="org.talend.libraries.zmq" download-size="0" install-size="0" version="0.0.0"/>
|
||||
<plugin id="org.talend.libraries.esb" download-size="0" install-size="0" version="0.0.0"/>
|
||||
</feature>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.tos.libraries.feature</artifactId>
|
||||
|
||||
@@ -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: 8.0.1.qualifier
|
||||
Bundle-Version: 8.8.8.qualifier
|
||||
Bundle-Activator: org.talend.designer.abstractmap.MapPlugin
|
||||
Require-Bundle: org.eclipse.core.runtime,
|
||||
org.talend.core,
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.abstractmap</artifactId>
|
||||
|
||||
@@ -2,7 +2,7 @@ prefs.configuration.title=\u30DE\u30C3\u30D7\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3
|
||||
prefs.configuration.LINK_STYLE=\u30C7\u30D5\u30A9\u30EB\u30C8\u30DE\u30C3\u30D4\u30F3\u30B0\u30EA\u30F3\u30AF\u306E\u8868\u793A:
|
||||
prefs.configuration.LINK_STYLE.AUTO=\u81EA\u52D5
|
||||
prefs.configuration.LINK_STYLE.BEZIER_CURVE=\u66F2\u7DDA
|
||||
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA(\u9AD8\u901F)
|
||||
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA\uFF08\u9AD8\u901F\uFF09
|
||||
DraggingInfosPopup.draggingEntry={0}\u30A8\u30F3\u30C8\u30EA\u30FC\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u3044\u307E\u3059\u3002
|
||||
DraggingInfosPopup.dropInvalid=\n<< \u7121\u52B9\u306A\u30C9\u30ED\u30C3\u30D7 >>\n
|
||||
DraggingInfosPopup.draggingEntries={0}\u30A8\u30F3\u30C8\u30EA\u30FC\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u3044\u307E\u3059\u3002
|
||||
|
||||
@@ -13,10 +13,6 @@
|
||||
package org.talend.designer.abstractmap.managers;
|
||||
|
||||
import org.apache.log4j.Level;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.commons.ui.runtime.exception.ExceptionHandler;
|
||||
import org.talend.designer.abstractmap.ui.dnd.DraggingInfosPopup;
|
||||
import org.talend.designer.abstractmap.ui.properties.LINK_STYLE;
|
||||
|
||||
@@ -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: 8.0.1.qualifier
|
||||
Bundle-Version: 8.8.8.qualifier
|
||||
Bundle-Vendor: .Talend SA.
|
||||
Require-Bundle: org.eclipse.core.runtime,
|
||||
org.talend.core,
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.alfrescooutput</artifactId>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
AlfrescoOutputManager.failedLoadModel=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u304B\u3089\u30E2\u30C7\u30EB\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u518D\u521D\u671F\u5316\u4E2D
|
||||
AlfrescoOutputManager.failedLoadModel=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u304B\u3089\u30E2\u30C7\u30EB\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u518D\u521D\u671F\u5316\u4E2D,
|
||||
AlfrescoOutputManager.schemaError.title=\u30B9\u30AD\u30FC\u30DE\u306E\u30A8\u30E9\u30FC
|
||||
AlfrescoOutputManager.schemaError.msg=\u6700\u521D\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u540C\u671F\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
||||
AlfrescoOutputModelManager.alreadyAdded=\u3053\u306E\u30E2\u30C7\u30EB\u306F\u65E2\u306B\u8FFD\u52A0\u6E08\u307F\u3067\u3059\u3002
|
||||
|
||||
@@ -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: 8.0.1.qualifier
|
||||
Bundle-Version: 8.8.8.qualifier
|
||||
Bundle-Localization: plugin
|
||||
Require-Bundle: org.talend.core.repository,
|
||||
org.eclipse.emf.codegen,
|
||||
|
||||
@@ -7,6 +7,7 @@ bin.includes = plugin.xml,\
|
||||
jet_stub/,\
|
||||
plugin.properties,\
|
||||
plugin_de.properties,\
|
||||
plugin_en.properties,\
|
||||
plugin_es.properties,\
|
||||
plugin_fr.properties,\
|
||||
plugin_ja.properties,\
|
||||
|
||||
@@ -137,7 +137,7 @@
|
||||
}
|
||||
%>
|
||||
currentComponent="<%=node.getUniqueName() %>";
|
||||
|
||||
|
||||
<%
|
||||
connSet = new HashSet<IConnection>();
|
||||
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MAIN));
|
||||
@@ -155,17 +155,6 @@
|
||||
//about performance monitor, no way to support more than one job catcher component, also that is not necessary
|
||||
final String subprocessName4Catcher = logstashCurrent ? jobCatcherNodes.get(0).getDesignSubjobStartNode().getUniqueName() : null;
|
||||
|
||||
if(logstashCurrent) {
|
||||
String currentLabel = ElementParameterParser.getValue(node, "__LABEL__");
|
||||
if(currentLabel==null || "".equals(currentLabel) || "__UNIQUE_NAME__".equals(currentLabel) || cid.endsWith(NodeUtil.getLabel(node))) {
|
||||
//not generate the unnecessary statement if label is default one
|
||||
} else {
|
||||
%>
|
||||
cLabel="<%=NodeUtil.getLabel(node)%>";
|
||||
<%
|
||||
}
|
||||
}
|
||||
|
||||
if ((codePart.equals(ECodePart.BEGIN))&&(stat || logstashCurrent)&&connSet.size()>0) {
|
||||
if(containsTPartitioner) {
|
||||
%>
|
||||
|
||||
@@ -56,9 +56,8 @@
|
||||
String jobClassPackageFolder = codeGenArgument.getCurrentProjectName().toLowerCase() + '/' + jobFolderName;
|
||||
|
||||
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));//log4j enable
|
||||
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
|
||||
boolean isLog4j1Enabled = !isLog4j2Enabled;//log4j1 enable
|
||||
String MDC_CLASS = "org.slf4j.MDC";
|
||||
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
|
||||
boolean isLog4j1Enabled = !isLog4j2Enabled;//log4j1 enable
|
||||
|
||||
boolean exist_tParallelize = false;
|
||||
List<? extends INode> tParallelizeList = process.getNodesOfType("tParallelize");
|
||||
@@ -224,7 +223,7 @@
|
||||
public boolean useDatastax(INode node){
|
||||
String dbVersion = ElementParameterParser.getValue(node, "__DB_VERSION__");
|
||||
String apiType = ElementParameterParser.getValue(node, "__API_TYPE__");
|
||||
return "CASSANDRA_2_2".equals(dbVersion) || "CASSANDRA_3_0".equals(dbVersion) || "CASSANDRA_4_0".equals(dbVersion) || ("CASSANDRA_2_0_0".equals(dbVersion) && "DATASTAX".equals(apiType));
|
||||
return "CASSANDRA_2_2".equals(dbVersion) || "CASSANDRA_3_0".equals(dbVersion) || ("CASSANDRA_2_0_0".equals(dbVersion) && "DATASTAX".equals(apiType));
|
||||
}
|
||||
}
|
||||
%>
|
||||
@@ -322,11 +321,6 @@
|
||||
globalMap.put(GLOBAL_CONNECTION_POOL_KEY, connectionPool);
|
||||
}
|
||||
<%}%>
|
||||
|
||||
private final static java.util.Properties jobInfo = new java.util.Properties();
|
||||
private final static java.util.Map<String,String> mdcInfo = new java.util.HashMap<>();
|
||||
private final static java.util.concurrent.atomic.AtomicLong subJobPidCounter = new java.util.concurrent.atomic.AtomicLong();
|
||||
|
||||
|
||||
public static void main(String[] args){
|
||||
final <%=className %> <%=className %>Class = new <%=className %>();
|
||||
@@ -340,42 +334,6 @@
|
||||
|
||||
System.exit(exitCode);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private void getjobInfo() {
|
||||
final String TEMPLATE_PATH = "src/main/templates/jobInfo_template.properties";
|
||||
final String BUILD_PATH = "../jobInfo.properties";
|
||||
final String path = this.getClass().getResource("").getPath();
|
||||
if(path.lastIndexOf("target") > 0) {
|
||||
final java.io.File templateFile = new java.io.File(
|
||||
path.substring(0, path.lastIndexOf("target")).concat(TEMPLATE_PATH));
|
||||
if (templateFile.exists()) {
|
||||
readJobInfo(templateFile);
|
||||
return;
|
||||
}
|
||||
}
|
||||
readJobInfo(new java.io.File(BUILD_PATH));
|
||||
}
|
||||
|
||||
private void readJobInfo(java.io.File jobInfoFile){
|
||||
|
||||
if(jobInfoFile.exists()) {
|
||||
try (java.io.InputStream is = new java.io.FileInputStream(jobInfoFile)) {
|
||||
jobInfo.load(is);
|
||||
} catch (IOException e) {
|
||||
<%if(isLog4jEnabled){%>
|
||||
log.debug("Read jobInfo.properties file fail: " + e.getMessage());
|
||||
<%}%>
|
||||
|
||||
}
|
||||
}
|
||||
<%if(isLog4jEnabled){%>
|
||||
log.info(String.format("Project name: %s\tJob name: %s\tGIT Commit ID: %s\tTalend Version: %s",
|
||||
projectName,jobName,jobInfo.getProperty("gitCommitId"), "<%=System.getProperties().getProperty("talend.studio.version")%>"));
|
||||
<%}%>
|
||||
}
|
||||
|
||||
<%
|
||||
if (isTestContainer) {
|
||||
@@ -557,34 +515,8 @@
|
||||
org.apache.logging.log4j.core.config.Configurator.setLevel(org.apache.logging.log4j.LogManager.getRootLogger().getName(), log.getLevel());
|
||||
<%}%>
|
||||
}
|
||||
|
||||
getjobInfo();
|
||||
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Start.");
|
||||
<%}%>
|
||||
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
java.util.Set<Object> jobInfoKeys = jobInfo.keySet();
|
||||
for(Object jobInfoKey: jobInfoKeys) {
|
||||
<%=MDC_CLASS%>.put("_" + jobInfoKey.toString(), jobInfo.get(jobInfoKey).toString());
|
||||
}
|
||||
<%=MDC_CLASS%>.put("_pid", pid);
|
||||
<%=MDC_CLASS%>.put("_rootPid", rootPid);
|
||||
<%=MDC_CLASS%>.put("_fatherPid", fatherPid);
|
||||
<%=MDC_CLASS%>.put("_projectName", projectName);
|
||||
<%=MDC_CLASS%>.put("_startTimestamp",java.time.ZonedDateTime.now(java.time.ZoneOffset.UTC ).format( java.time.format.DateTimeFormatter.ISO_INSTANT ));
|
||||
<%=MDC_CLASS%>.put("_jobRepositoryId","<%=process.getId() %>");
|
||||
<%=MDC_CLASS%>.put("_compiledAtTimestamp","<%=java.time.ZonedDateTime.now(java.time.ZoneOffset.UTC ).format( java.time.format.DateTimeFormatter.ISO_INSTANT )%>");
|
||||
|
||||
java.lang.management.RuntimeMXBean mx = java.lang.management.ManagementFactory.getRuntimeMXBean();
|
||||
String[] mxNameTable = mx.getName().split("@"); //$NON-NLS-1$
|
||||
if (mxNameTable.length == 2) {
|
||||
<%=MDC_CLASS%>.put("_systemPid", mxNameTable[0]);
|
||||
} else {
|
||||
<%=MDC_CLASS%>.put("_systemPid", String.valueOf(java.lang.Thread.currentThread().getId()));
|
||||
}
|
||||
|
||||
<%
|
||||
}%>
|
||||
|
||||
<%
|
||||
INode jobCatcherNode = null;
|
||||
@@ -710,26 +642,14 @@
|
||||
pid = TalendString.getAsciiRandomString(6);
|
||||
}
|
||||
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
<%=MDC_CLASS%>.put("_pid", pid);
|
||||
<%}%>
|
||||
|
||||
if (rootPid==null) {
|
||||
rootPid = pid;
|
||||
}
|
||||
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
<%=MDC_CLASS%>.put("_rootPid", rootPid);
|
||||
<%}%>
|
||||
|
||||
if (fatherPid==null) {
|
||||
fatherPid = pid;
|
||||
}else{
|
||||
isChildJob = true;
|
||||
}
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
<%=MDC_CLASS%>.put("_fatherPid", fatherPid);
|
||||
<%}%>
|
||||
|
||||
<%
|
||||
if (stats) {
|
||||
@@ -963,13 +883,7 @@
|
||||
}
|
||||
%>
|
||||
//Resume: jobStart
|
||||
resumeUtil.addLog("JOB_STARTED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","","","",resumeUtil.convertToJsonText(context,ContextProperties.class,parametersToEncrypt));
|
||||
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
<%=MDC_CLASS%>.put("_context", contextStr);
|
||||
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Started.");
|
||||
mdcInfo.putAll(<%=MDC_CLASS%>.getCopyOfContextMap());
|
||||
<%}%>
|
||||
resumeUtil.addLog("JOB_STARTED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","","","",resumeUtil.convertToJsonText(context,parametersToEncrypt));
|
||||
|
||||
<%
|
||||
if (stats) {
|
||||
@@ -1180,10 +1094,6 @@ this.globalResumeTicket = false;//to run others jobs
|
||||
runningThreadCount.add(1);
|
||||
new Thread(){
|
||||
public void run() {
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
mdcInfo.forEach(<%=MDC_CLASS%>::put);
|
||||
<% } %>
|
||||
|
||||
java.util.Map threadRunResultMap = new java.util.HashMap();
|
||||
threadRunResultMap.put("errorCode", null);
|
||||
threadRunResultMap.put("status", "");
|
||||
@@ -1246,15 +1156,9 @@ this.globalResumeTicket = false;//to run others jobs
|
||||
if (!componentName.equals("tJobStructureCatcher") && !componentName.equals("tLogCatcher") && !componentName.equals("tFlowMeterCatcher") && !componentName.equals("tAssertCatcher") && !componentName.equals("tStatCatcher") && !componentName.equals("tAsyncIn")) {
|
||||
%>
|
||||
<%=createCallProcess(rootNode, className, false) %>
|
||||
<%
|
||||
if (process.getNodesOfType("tStatCatcher").size() > 0) {
|
||||
%>
|
||||
<%=statsErrorHandlingAfterMainCall(rootNode, process.getNodesOfType("tStatCatcher"))%>
|
||||
<%
|
||||
}
|
||||
}
|
||||
}
|
||||
}// end if(isRunInMultiThread)
|
||||
<% }
|
||||
}
|
||||
}// end if(isRunInMultiThread)
|
||||
%>
|
||||
|
||||
this.globalResumeTicket = true;//to run tPostJob
|
||||
@@ -1388,15 +1292,6 @@ if (execStat) {
|
||||
returnCode = errorCode.intValue();
|
||||
}
|
||||
resumeUtil.addLog("JOB_ENDED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","" + returnCode,"","","");
|
||||
resumeUtil.flush();
|
||||
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
|
||||
<%=MDC_CLASS%>.remove("_subJobName");
|
||||
<%=MDC_CLASS%>.remove("_subJobPid");
|
||||
<%=MDC_CLASS%>.remove("_systemPid");
|
||||
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Finished - status: " + status + " returnCode: " + returnCode );
|
||||
<%}%>
|
||||
|
||||
return returnCode;
|
||||
|
||||
@@ -1512,27 +1407,16 @@ if (execStat) {
|
||||
Object obj_cluster;
|
||||
Object obj_conn;
|
||||
<% for (INode cassandraDbNode : cassandraComponentsList) {
|
||||
String dbVersionCassandra = ElementParameterParser.getValue(cassandraDbNode, "__DB_VERSION__");
|
||||
if((new API_selector()).useDatastax(cassandraDbNode)) {
|
||||
if("CASSANDRA_4_0".equals(dbVersionCassandra)) {
|
||||
%>
|
||||
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");if(obj_conn != null) {
|
||||
((com.datastax.oss.driver.api.core.CqlSession) obj_conn).close();
|
||||
}
|
||||
<%
|
||||
} else {
|
||||
%>
|
||||
obj_cluster = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
|
||||
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");
|
||||
if(obj_conn != null) {
|
||||
((com.datastax.driver.core.Session) obj_conn).close();
|
||||
}
|
||||
if(obj_cluster != null) {
|
||||
((com.datastax.driver.core.Cluster) obj_cluster).close();
|
||||
}
|
||||
<%
|
||||
}
|
||||
} else { %>
|
||||
if((new API_selector()).useDatastax(cassandraDbNode)) { %>
|
||||
obj_cluster = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
|
||||
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");
|
||||
if(obj_conn != null) {
|
||||
((com.datastax.driver.core.Session) obj_conn).close();
|
||||
}
|
||||
if(obj_cluster != null) {
|
||||
((com.datastax.driver.core.Cluster) obj_cluster).close();
|
||||
}
|
||||
<% } else { %>
|
||||
obj_conn = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
|
||||
if(obj_conn!=null) {
|
||||
((me.prettyprint.hector.api.Cluster) obj_conn).getConnectionManager().shutdown();
|
||||
|
||||
@@ -42,10 +42,10 @@ public class CLASS
|
||||
|
||||
//List< ? extends IConnection> onSubJobErrorConns = rootNode.getOutgoingConnections(EConnectionType.ON_SUBJOB_ERROR);
|
||||
//if(onSubJobErrorConns!=null){
|
||||
// for(IConnection conn : onSubJobErrorConns) {
|
||||
// for(IConnection conn : onSubJobErrorConns) {
|
||||
// toReturn += createCallProcess(conn.getTarget(), className, isMultiThread);
|
||||
// }
|
||||
//}
|
||||
//}
|
||||
if(isMultiThread){
|
||||
toReturn += "\n}catch (java.lang.Error e_" + rootNode.getUniqueName() + ") {\n";
|
||||
toReturn += "globalMap.put(\""+rootNode.getUniqueName()+ "_SUBPROCESS_STATE\", -1);\n";
|
||||
@@ -55,20 +55,7 @@ public class CLASS
|
||||
toReturn += "\n}";
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
public String statsErrorHandlingAfterMainCall(INode rootNode, List<? extends INode> statsNodes) {
|
||||
String catchErrorReturn = "catch (Error error_" + rootNode.getUniqueName() + " ) {\n";
|
||||
catchErrorReturn+="end = System.currentTimeMillis();\n";
|
||||
for (INode statCatcherNode : statsNodes) {
|
||||
catchErrorReturn += statCatcherNode.getUniqueName() + ".addMessage(\"failure\", (end-startTime));\n";
|
||||
catchErrorReturn += "try {\n " + statCatcherNode.getDesignSubjobStartNode().getUniqueName() + "Process(globalMap);\n";
|
||||
catchErrorReturn += "} catch (Exception e_" + statCatcherNode.getUniqueName() + ") {\n";
|
||||
catchErrorReturn += "e_" + statCatcherNode.getUniqueName() + ".printStackTrace();\n}\n";
|
||||
}
|
||||
catchErrorReturn+= "throw error_" + rootNode.getUniqueName() + ";\n}\n";
|
||||
return catchErrorReturn;
|
||||
}
|
||||
|
||||
|
||||
public String generate(Object argument) {
|
||||
return "";
|
||||
}
|
||||
|
||||
@@ -170,8 +170,16 @@ class IndexedRecordToRowStructGenerator {
|
||||
if (columnName.equals(dynamicColName)) {
|
||||
%>
|
||||
java.util.Map<String, Object> dynamicValue_<%=cid%> = (java.util.Map<String, Object>) <%=codeVarSchemaEnforcer%>.get(<%=i%>);
|
||||
org.apache.avro.Schema dynSchema_<%=cid%> = ((org.talend.codegen.enforcer.OutgoingDynamicSchemaEnforcer) <%=codeVarSchemaEnforcer%>).getDynamicFieldsSchema();
|
||||
for (org.apache.avro.Schema.Field dynamicField_<%=cid%> : dynSchema_<%=cid%>.getFields()){
|
||||
String name = dynamicField_<%=cid%>.name();
|
||||
if("true".equals(dynamicField_<%=cid%>.getProp("ENABLE_SPECIAL_TABLENAME"))){
|
||||
dynamicValue_<%=cid%>.put(dynamicField_<%=cid%>.getProp("talend.field.dbColumnName"), dynamicValue_<%=cid%>.get(name));
|
||||
dynamicValue_<%=cid%>.remove(name);
|
||||
}
|
||||
}
|
||||
for (java.util.Map.Entry<String, Object> dynamicValueEntry_<%=cid%> : dynamicValue_<%=cid%>.entrySet()) {
|
||||
<%=codeVarDynamic%>.addColumnValue(dynamicValueEntry_<%=cid%>.getValue());
|
||||
<%=codeVarDynamic%>.setColumnValue(<%=codeVarDynamic%>.getIndex(dynamicValueEntry_<%=cid%>.getKey()), dynamicValueEntry_<%=cid%>.getValue());
|
||||
}
|
||||
<%=codeVarRowStruct%>.<%=dynamicColName%> = <%=codeVarDynamic%>;
|
||||
<%
|
||||
|
||||
@@ -36,15 +36,6 @@
|
||||
boolean stats = codeGenArgument.isStatistics();
|
||||
boolean trace = codeGenArgument.isTrace();
|
||||
boolean isRunInMultiThread = codeGenArgument.getIsRunInMultiThread();
|
||||
|
||||
boolean exportTypeSpringBoot = false;
|
||||
if (process instanceof org.talend.core.model.process.IProcess2) {
|
||||
org.talend.core.model.process.IProcess2 p2 = (org.talend.core.model.process.IProcess2) process;
|
||||
if (p2.getProperty() != null && p2.getProperty().getAdditionalProperties() != null) {
|
||||
exportTypeSpringBoot = "REST_MS".equals(p2.getProperty().getAdditionalProperties().get(org.talend.core.runtime.process.TalendProcessArgumentConstant.ARG_BUILD_TYPE));
|
||||
}
|
||||
}
|
||||
|
||||
List<IContextParameter> params = new ArrayList<IContextParameter>();
|
||||
params=process.getContextManager().getDefaultContext().getContextParameterList();
|
||||
String className = process.getName();
|
||||
@@ -150,8 +141,7 @@ for (INode node : process.getNodesOfType("tRESTClient")) {
|
||||
}
|
||||
}
|
||||
|
||||
boolean isChildRouteJob = !process.getNodesOfType("tRouteInput").isEmpty();
|
||||
boolean talendEsbJobFactory = actAsProvider || isChildRouteJob;
|
||||
boolean talendEsbJobFactory = actAsProvider || !process.getNodesOfType("tRouteInput").isEmpty();
|
||||
boolean talendEsbJob = talendEsbJobFactory || actAsConsumer || ProcessorUtilities.isEsbJob(process);
|
||||
|
||||
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));//log4j enable
|
||||
@@ -255,11 +245,6 @@ if(isRunInMultiThread){
|
||||
|
||||
<%//uft-8 is for temp file, for example: tSortRow, tMap. Because they need keep reversibility.%>
|
||||
private final static String utf8Charset = "UTF-8";
|
||||
|
||||
<%
|
||||
if(!exportTypeSpringBoot || isChildRouteJob){
|
||||
%>
|
||||
|
||||
//contains type for every context property
|
||||
public class PropertiesWithType extends java.util.Properties {
|
||||
private static final long serialVersionUID = 1L;
|
||||
@@ -280,16 +265,9 @@ if(!exportTypeSpringBoot || isChildRouteJob){
|
||||
return propertyTypes.get(key);
|
||||
}
|
||||
}
|
||||
<%
|
||||
}
|
||||
%>
|
||||
|
||||
// create and load default properties
|
||||
private java.util.Properties defaultProps = new java.util.Properties();
|
||||
|
||||
<%
|
||||
if(!exportTypeSpringBoot){
|
||||
%>
|
||||
|
||||
// create application properties with default
|
||||
public class ContextProperties extends PropertiesWithType {
|
||||
|
||||
@@ -355,10 +333,6 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
|
||||
}
|
||||
%>
|
||||
}
|
||||
|
||||
<%
|
||||
}
|
||||
%>
|
||||
protected ContextProperties context = new ContextProperties(); // will be instanciated by MS.
|
||||
public ContextProperties getContext() {
|
||||
return this.context;
|
||||
@@ -369,10 +343,6 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
|
||||
public Integer errorCode = null;
|
||||
private String currentComponent = "";
|
||||
<%
|
||||
// is necessary? avoid some compiler issue as var name not found? TODO consider remove it, also the currentComponent above
|
||||
%>
|
||||
private String cLabel = null;
|
||||
<%
|
||||
//tParallelize will wrap globalMap with synchronizedMap
|
||||
if(isRunInMultiThread || NodeUtil.containsMultiThreadComponent(process)){
|
||||
%>
|
||||
@@ -627,10 +597,7 @@ private class TalendException extends Exception {
|
||||
|
||||
private java.util.Map<String, Object> globalMap = null;
|
||||
private Exception e = null;
|
||||
|
||||
private String currentComponent = null;
|
||||
private String cLabel = null;
|
||||
|
||||
private String virtualComponentName = null;
|
||||
|
||||
public void setVirtualComponentName (String virtualComponentName){
|
||||
@@ -642,11 +609,6 @@ private class TalendException extends Exception {
|
||||
this.globalMap = globalMap;
|
||||
this.e = e;
|
||||
}
|
||||
|
||||
private TalendException(Exception e, String errorComponent, String errorComponentLabel, final java.util.Map<String, Object> globalMap) {
|
||||
this(e, errorComponent, globalMap);
|
||||
this.cLabel = errorComponentLabel;
|
||||
}
|
||||
|
||||
public Exception getException() {
|
||||
return this.e;
|
||||
@@ -706,15 +668,6 @@ private class TalendException extends Exception {
|
||||
<%
|
||||
boolean needCatchTalendException = false;
|
||||
|
||||
if(enableLogStash) {
|
||||
%>
|
||||
if(enableLogStash) {
|
||||
<%=jobCatcherNode.getUniqueName() %>.addJobExceptionMessage(currentComponent, cLabel, null, e);
|
||||
<%=jobCatcherNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
|
||||
}
|
||||
<%
|
||||
}
|
||||
|
||||
if (process.getNodesOfType("tLogCatcher").size() > 0) {
|
||||
List<INode> logCatchers = (List<INode>)process.getNodesOfType("tLogCatcher");
|
||||
for (INode logCatcher : logCatchers) {
|
||||
@@ -725,7 +678,7 @@ private class TalendException extends Exception {
|
||||
<%
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
INode virtualNCatchNode = null;
|
||||
boolean hasRealCatchNode = false;
|
||||
for (INode logCatcher : logCatchers) {
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
TalendException te = new TalendException(e, currentComponent, cLabel, globalMap);
|
||||
TalendException te = new TalendException(e, currentComponent, globalMap);
|
||||
<%
|
||||
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
|
||||
%>
|
||||
|
||||
@@ -30,10 +30,6 @@ boolean containsTPartitioner = node.getProcess().getNodesOfType("tPartitioner").
|
||||
boolean isRunJob = "tRunJob".equals(node.getComponent().getName());
|
||||
IProcess process = node.getProcess();
|
||||
|
||||
final boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));
|
||||
final boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
|
||||
final String MDC_CLASS = "org.slf4j.MDC";
|
||||
|
||||
boolean isTestContainer=ProcessUtils.isTestContainer(process);
|
||||
String className = process.getName();
|
||||
if (isTestContainer) {
|
||||
@@ -195,11 +191,8 @@ for (IConnection iterateConn : iterateConnSet) { //1
|
||||
}
|
||||
|
||||
|
||||
public void run() {
|
||||
<% if(isLog4jEnabled && isLog4j2Enabled) { %>
|
||||
mdcInfo.forEach(<%=MDC_CLASS%>::put);
|
||||
<% } %>
|
||||
|
||||
public void run() {
|
||||
|
||||
java.util.Map threadRunResultMap = new java.util.HashMap();
|
||||
threadRunResultMap.put("errorCode", null);
|
||||
threadRunResultMap.put("status", "");
|
||||
@@ -207,7 +200,6 @@ for (IConnection iterateConn : iterateConnSet) { //1
|
||||
|
||||
this.isRunning = true;
|
||||
String currentComponent = "";
|
||||
String cLabel = null;
|
||||
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
|
||||
<%
|
||||
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
this.errorCode = localErrorCode;
|
||||
}
|
||||
}
|
||||
pool.setErrorThread(this, new TalendException(e, currentComponent, cLabel, globalMap));
|
||||
pool.setErrorThread(this, new TalendException(e, currentComponent, globalMap));
|
||||
//pool.setErrorThread(this,e);
|
||||
pool.stopAllThreads();
|
||||
}finally{
|
||||
@@ -117,7 +117,7 @@
|
||||
} catch (InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
} catch (java.lang.Exception te) {
|
||||
throw new TalendException(te, currentComponent, cLabel, globalMap);
|
||||
throw new TalendException(te, currentComponent, globalMap);
|
||||
}
|
||||
<%
|
||||
}else{
|
||||
@@ -228,7 +228,7 @@
|
||||
<%
|
||||
}
|
||||
%>
|
||||
TalendException te = new TalendException(e, currentComponent, cLabel, globalMap);
|
||||
TalendException te = new TalendException(e, currentComponent, globalMap);
|
||||
<%
|
||||
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
|
||||
%>
|
||||
|
||||
@@ -32,8 +32,6 @@
|
||||
boolean stat = codeGenArgument.isStatistics();
|
||||
boolean containsTPartitioner = subTree.getRootNode().getProcess().getNodesOfType("tPartitioner").size() > 0 ? true : false;
|
||||
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(subTree.getRootNode().getProcess(), "__LOG4J_ACTIVATE__"));
|
||||
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(subTree.getRootNode().getProcess(), "__LOG4J2_ACTIVATE__"));//log4j2 enable
|
||||
String MDC_CLASS = "org.slf4j.MDC";
|
||||
%>
|
||||
|
||||
<%
|
||||
@@ -1595,7 +1593,6 @@ public static class <%=conn.getName() %>Struct<%=templateOrigin %> implements ro
|
||||
}
|
||||
}
|
||||
%>
|
||||
|
||||
<% if (subTree.isMethodSizeNeeded()){ %>
|
||||
/**
|
||||
* Start of Function: <%=subTree.getName() %>Process.
|
||||
@@ -1606,12 +1603,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
|
||||
globalMap.put("<%=subTree.getName() %>_SUBPROCESS_STATE", 0);
|
||||
|
||||
final boolean execStat = this.execStat;
|
||||
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
|
||||
mdcInfo.forEach(<%=MDC_CLASS%>::put);
|
||||
<%=MDC_CLASS%>.put("_subJobName", "<%=subTree.getName() %>");
|
||||
<%=MDC_CLASS%>.put("_subJobPid", "<%=getAsciiRandomString(6)%>_" + subJobPidCounter.getAndIncrement());
|
||||
<%}%>
|
||||
|
||||
<%
|
||||
boolean isParallelize = false;
|
||||
for (INode node : subTree.getNodes()) {
|
||||
@@ -1650,7 +1641,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
|
||||
|
||||
this.isRunning = true;
|
||||
String currentComponent = "";
|
||||
String cLabel = null;
|
||||
<%
|
||||
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
|
||||
%>
|
||||
@@ -1684,7 +1674,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
|
||||
int iterateLoop = 0;
|
||||
<%}%>
|
||||
String currentComponent = "";
|
||||
String cLabel = null;
|
||||
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
|
||||
|
||||
try {
|
||||
|
||||
@@ -93,25 +93,7 @@ public class CLASS
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
// copy from routine TalendString
|
||||
private static String getAsciiRandomString(int length) {
|
||||
java.security.SecureRandom random = new java.security.SecureRandom();
|
||||
int cnt = 0;
|
||||
StringBuilder builder = new StringBuilder();
|
||||
char ch;
|
||||
int end = 'z' + 1;
|
||||
int start = ' ';
|
||||
while (cnt < length) {
|
||||
ch = (char) (random.nextInt(end - start) + start);
|
||||
if (Character.isLetterOrDigit(ch)) {
|
||||
builder.append(ch);
|
||||
cnt++;
|
||||
}
|
||||
}
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
|
||||
public String generate(Object argument) {
|
||||
return "";
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.codegen</artifactId>
|
||||
|
||||
@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
|
||||
CodeGenerator.JET.TimeOut=JET initialisation Time Out
|
||||
CodeGenerator.newLine=\n\n\n\n
|
||||
CodeGenerator.Node.NotFound=Node not found in current process
|
||||
CodeGenerator.Components.NotFound={0}: Component is missing: {1}; use -D{2}=false in your studio or commandline to skip this check, and a warning message will be logged.
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=method not implemented: org.talend.designer.codegen.JavaRoutineSynchronizer line:49
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=method not implemented: org.talend.designer.codegen.JavaRoutineSynchronizer line:58
|
||||
JetSkeletonManager.unableLoad=unable to load skeleton update cache file
|
||||
|
||||
@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
|
||||
CodeGenerator.JET.TimeOut=D\u00E9lai d'initialisation JET d\u00E9pass\u00E9
|
||||
CodeGenerator.newLine=\n\n\n\n
|
||||
CodeGenerator.Node.NotFound=N\u0153ud introuvable dans le processus courant
|
||||
CodeGenerator.Components.NotFound={0}\u00A0: Le composant est manquant\u00A0: {1}; utilisez -D{2}=false dans votre Studio ou CommandLine pour ignorer cette v\u00E9rification. Un message d'avertissement sera enregistr\u00E9 dans les logs.
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=M\u00E9thode non impl\u00E9ment\u00E9e : org.talend.designer.codegen.JavaRoutineSynchronizer line:49
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=M\u00E9thode non impl\u00E9ment\u00E9e : org.talend.designer.codegen.JavaRoutineSynchronizer line:58
|
||||
JetSkeletonManager.unableLoad=Impossible de charger le fichier de cache de la mise \u00E0 jour du squelette
|
||||
|
||||
@@ -10,12 +10,11 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
|
||||
CodeGenerator.JET.TimeOut=JET\u306E\u521D\u671F\u5316\u51E6\u7406\u304C\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8\u3057\u307E\u3057\u305F
|
||||
CodeGenerator.newLine=\n\n\n\n
|
||||
CodeGenerator.Node.NotFound=\u73FE\u5728\u306E\u30D7\u30ED\u30BB\u30B9\u306B\u30CE\u30FC\u30C9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
|
||||
CodeGenerator.Components.NotFound={0}: \u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u304C\u6B20\u843D\u3057\u3066\u3044\u307E\u3059: {1}\u3002Studio\u3067 -D{2}=false\u3092\u4F7F\u3046\u3068\u3053\u306E\u30C1\u30A7\u30C3\u30AF\u304C\u30B9\u30AD\u30C3\u30D7\u3055\u308C\u3001\u8B66\u544A\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u30ED\u30B0\u30D5\u30A1\u30A4\u30EB\u306B\u8A18\u9332\u3055\u308C\u307E\u3059\u3002
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=\u30E1\u30BD\u30C3\u30C9\u304C\u5B9F\u88C5\u3055\u308C\u3066\u3044\u307E\u305B\u3093\\: org.talend.designer.codegen.JavaRoutineSynchronizer line\\:49
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=\u30E1\u30BD\u30C3\u30C9\u304C\u5B9F\u88C5\u3055\u308C\u3066\u3044\u307E\u305B\u3093\\: org.talend.designer.codegen.JavaRoutineSynchronizer line\\:58
|
||||
JetSkeletonManager.unableLoad=\u30B9\u30B1\u30EB\u30C8\u30F3\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
|
||||
JetSkeletonManager.unableSave=\u30B9\u30B1\u30EB\u30C8\u30F3\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
|
||||
JetSkeletonManager.updateProblem=\u30B9\u30B1\u30EB\u30C8\u30F3\u6C38\u7D9A\u30C7\u30FC\u30BF\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u6642\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
|
||||
JetSkeletonManager.unableLoad=\u30B9\u30B1\u30EB\u30C8\u30F3\u66F4\u65B0\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
|
||||
JetSkeletonManager.unableSave=\u30B9\u30B1\u30EB\u30C8\u30F3\u66F4\u65B0\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
|
||||
JetSkeletonManager.updateProblem=\u30B9\u30B1\u30EB\u30C8\u30F3\u6C38\u7D9A\u30C7\u30FC\u30BF\u66F4\u65B0\u6642\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F,
|
||||
EmfEmittersPersistence.CodeGen.DataMissing=\u30B3\u30FC\u30C9\u751F\u6210\u306E\u30C7\u30FC\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002\u5B8C\u5168\u306A\u30B3\u30FC\u30C9\u751F\u6210\u3092\u958B\u59CB\u3057\u3066\u3044\u307E\u3059\u3002
|
||||
CodeGeneratorEmittersPoolFactory.PersitentData.Error=\u6301\u7D9A\u30C7\u30FC\u30BF\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093:
|
||||
CodeGeneratorEmittersPoolFactory.JETEmitters.NoPresent=JETEmitter \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u5B58\u5728\u3057\u307E\u305B\u3093\u3001\u5168\u4F53\u306E\u518D\u521D\u671F\u5316\u304C\u5FC5\u8981\u3067\u3059\u3002
|
||||
@@ -29,14 +28,14 @@ CodeGeneratorEmittersPoolFactory.initialException=\u521D\u671F\u5316\u4E2D\u306B
|
||||
CodeGeneratorEmittersPoolFactory.initMessage=\u751F\u6210\u30A8\u30F3\u30B8\u30F3\u306E\u521D\u671F\u5316\u4E2D...
|
||||
CodeGeneratorEmittersPoolFactory.jetEmitterInitialException=JetEmitter\u306E\u521D\u671F\u5316\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
|
||||
CodeGeneratorEmittersPoolFactory.operationCanceled=\u64CD\u4F5C\u306F\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F
|
||||
CodeGeneratorEmittersPoolFactory.updatePaletteForEditors=\u30D1\u30EC\u30C3\u30C8\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
|
||||
CodeGeneratorEmittersPoolFactory.updatePaletteForEditors=\u30D1\u30EC\u30C3\u30C8\u3092\u66F4\u65B0
|
||||
CodeGeneratorService.invalidLanguage1=\u7121\u52B9\u306A\u8A00\u8A9E\u30BF\u30A4\u30D7\u3067\u3059\u3002
|
||||
CodeGeneratorService.invalidLanguage2=\u7121\u52B9\u306A\u8A00\u8A9E\u30BF\u30A4\u30D7\u3067\u3059\u3002
|
||||
CodeGenInit.addMarkers=\u30EF\u30FC\u30AF\u30B9\u30DA\u30FC\u30B9\u306B\u30DE\u30FC\u30AB\u30FC\u3092\u8FFD\u52A0\u4E2D
|
||||
CodeGenInit.createProject={0}\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u4F5C\u6210
|
||||
CodeGenInit.deleteProject={0}\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664
|
||||
CodeGenInit.initTemplate=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u521D\u671F\u5316
|
||||
CodeGenInit.removeLink=\u30EA\u30F3\u30AF\u3055\u308C\u305F\u30EA\u30BD\u30FC\u30B9\u3092\u524A\u9664
|
||||
CodeGenInit.removeLink=\u30EA\u30F3\u30AF\u3055\u308C\u305F\u30EA\u30BD\u30FC\u30B9\u306E\u524A\u9664
|
||||
CodeGenInit.saveWorkspace=\u30EF\u30FC\u30AF\u30B9\u30DA\u30FC\u30B9\u306E\u4FDD\u5B58\u4E2D
|
||||
DocumentRootImpl.mixed= (\u4E21\u7528:
|
||||
NodesSubTree.enableParallel=__ENABLE_PARALLEL__
|
||||
@@ -45,7 +44,7 @@ TalendJetEmitter.compileFail= \u30B3\u30F3\u30D1\u30A4\u30EB\u5931\u6557: {0} :
|
||||
TalendJetEmitter.exception=\u4F8B\u5916
|
||||
JetFilesProviderManager.unableLoad={0}\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
|
||||
ComponentsFactory.afterSystemComponent=\u30B7\u30B9\u30C6\u30E0\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u5F8C
|
||||
ComponentsFactory.componentNotFound=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093:
|
||||
ComponentsFactory.componentNotFound=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093 \\:
|
||||
ComponentsFactory.load.components=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30ED\u30FC\u30C9...
|
||||
ComponentsFactory.parentNotRecompiled=\u8B66\u544A: *.inc.javajet\u306E\u89AA\u306F\u518D\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
|
||||
ComponentsFactory.loadComponents.missingFolder=\u30D7\u30E9\u30B0\u30A4\u30F3"{1}"\u306B\u30D5\u30A9\u30EB\u30C0\u30FC"{0}"\u304C\u3042\u308A\u307E\u305B\u3093\u3002
|
||||
@@ -58,8 +57,8 @@ ComponentsPreferencePage.configuration.LINK_STYLE=\u30C7\u30D5\u30A9\u30EB\u30C8
|
||||
ComponentsPreferencePage.rowLimit=\u884C\u6570\u5236\u9650
|
||||
ComponentsPreferencePage.WarningMsg=Talend Open Studio\u3092\u518D\u8D77\u52D5\u3057\u3066\u3001\u62E1\u5F35\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30ED\u30FC\u30C9\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
|
||||
ComponentsPreferencePage.WarningTitle=\u8B66\u544A
|
||||
ComponentsPreferencePage.directoryFieldLabel=\u30E6\u30FC\u30B6\u30FC\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0:
|
||||
ComponentsPreferencePage.notValidDirectory=\u3053\u308C\u3092\u9078\u629E\u3059\u308B\u3068\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u30CD\u30B9\u30C8\u3055\u308C\u307E\u3059\u3002\u3053\u308C\u306F\u63A8\u5968\u3055\u308C\u307E\u305B\u3093\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
|
||||
ComponentsPreferencePage.directoryFieldLabel=\u30E6\u30FC\u30B6\u30FC\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0 \\:
|
||||
ComponentsPreferencePage.notValidDirectory=\u3053\u308C\u3092\u9078\u629E\u3059\u308B\u3068\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u30CD\u30B9\u30C8\u3055\u308C\u307E\u3059\u3002\u3053\u308C\u306F\u63A8\u5968\u3055\u308C\u307E\u305B\u3093\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?,
|
||||
ComponentsPreferencePage.installComponentsFailure=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306B\u5931\u6557\u3057\u307E\u3057\u305F
|
||||
ComponentsProviderManager.unableLoad=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D7\u30ED\u30D0\u30A4\u30C0\u306E\u30ED\u30FC\u30C9\u304C\u3067\u304D\u307E\u305B\u3093
|
||||
ComponenttRunJobPreferencePage.label=tRunJob\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u5F8C\u3001\u5BFE\u5FDC\u30B8\u30E7\u30D6\u3092\u8868\u793A\u3057\u306A\u3044\u3002
|
||||
@@ -76,7 +75,7 @@ XsdValidationCacheManager.unableLoadxsd=XSD\u30D0\u30EA\u30C7\u30FC\u30B7\u30E7\
|
||||
XsdValidationCacheManager.unableSavexsd=XSD\u30D0\u30EA\u30C7\u30FC\u30B7\u30E7\u30F3\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
|
||||
prefs.configuration.LINK_STYLE.AUTO=\u81EA\u52D5
|
||||
prefs.configuration.LINK_STYLE.BEZIER_CURVE=\u66F2\u7DDA
|
||||
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA(\u9AD8\u901F)
|
||||
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA\uFF08\u9AD8\u901F\uFF09
|
||||
FAMILY.AS400=AS400
|
||||
FAMILY.Access=\u30A2\u30AF\u30BB\u30B9
|
||||
FAMILY.Alfresco=Alfresco
|
||||
@@ -88,7 +87,7 @@ FAMILY.Connections=\u63A5\u7D9A
|
||||
FAMILY.Custom_Code=\u30AB\u30B9\u30BF\u30E0\u30B3\u30FC\u30C9
|
||||
FAMILY.DB2=DB2
|
||||
FAMILY.DB_Generic=\u6C4E\u7528ODBC
|
||||
FAMILY.DB_JDBC=\u30B8\u30A7\u30CD\u30EA\u30C3\u30AFJDBC
|
||||
FAMILY.DB_JDBC=\u6C4E\u7528JDBC
|
||||
FAMILY.DB_SCD=DB SCD
|
||||
FAMILY.Data_Quality=\u30C7\u30FC\u30BF\u30AF\u30AA\u30EA\u30C6\u30A3
|
||||
FAMILY.Data_Privacy=\u30C7\u30FC\u30BF\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC
|
||||
|
||||
@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=\u8FDB\u7A0B\u5F97\u5230\u751F\u6210\u8282\u70B9
|
||||
CodeGenerator.JET.TimeOut=JET \u521D\u59CB\u5316\u8D85\u65F6
|
||||
CodeGenerator.newLine=\n\n\n\n
|
||||
CodeGenerator.Node.NotFound=\u5728\u5F53\u524D
|
||||
CodeGenerator.Components.NotFound={0}: \u7EC4\u4EF6\u7F3A\u5931: {1}; \u5728 Studio \u6216\u547D\u4EE4\u884C\u4E2D\u4F7F\u7528 -D{2}=false \u53EF\u8DF3\u8FC7\u6B64\u9879\u68C0\u67E5\uFF0C\u540C\u65F6\u89E6\u53D1\u8B66\u544A\u6D88\u606F\u3002
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=\u65B9\u6CD5\u672A\u5B9E\u65BD\uFF1Aorg.talend.designer.codegen.JavaRoutineSynchronizer line:49
|
||||
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=\u65B9\u6CD5\u672A\u5B9E\u65BD\uFF1Aorg.talend.designer.codegen.JavaRoutineSynchronizer line:58
|
||||
JetSkeletonManager.unableLoad=\u65E0\u6CD5\u52A0\u8F7D\u4E3B\u5E72\u66F4\u65B0\u7F13\u5B58\u6587\u4EF6
|
||||
|
||||
@@ -66,7 +66,6 @@ import org.talend.designer.codegen.model.CodeGeneratorEmittersPoolFactory;
|
||||
import org.talend.designer.codegen.model.CodeGeneratorInternalTemplatesFactoryProvider;
|
||||
import org.talend.designer.codegen.proxy.JetProxy;
|
||||
import org.talend.designer.core.generic.model.Component;
|
||||
import org.talend.designer.core.model.components.DummyComponent;
|
||||
import org.talend.designer.runprocess.ProcessorUtilities;
|
||||
|
||||
/**
|
||||
@@ -846,25 +845,6 @@ public class CodeGenerator implements ICodeGenerator {
|
||||
IComponentFileNaming componentFileNaming = ComponentsFactoryProvider.getFileNamingInstance();
|
||||
|
||||
IComponent component = node.getComponent();
|
||||
if (component instanceof DummyComponent) {
|
||||
if (((DummyComponent) component).isMissingComponent()) {
|
||||
String processName = "";
|
||||
try {
|
||||
IProcess proc = node.getProcess();
|
||||
processName = proc.getName() + " " + proc.getVersion();
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
if (IProcess.ERR_ON_COMPONENT_MISSING) {
|
||||
throw new CodeGeneratorException(Messages.getString("CodeGenerator.Components.NotFound", processName,
|
||||
component.getName(), IProcess.PROP_ERR_ON_COMPONENT_MISSING));
|
||||
}
|
||||
if (ECodePart.BEGIN.equals(part)) {
|
||||
log.warn(Messages.getString("CodeGenerator.Components.NotFound", processName, component.getName(),
|
||||
IProcess.PROP_ERR_ON_COMPONENT_MISSING));
|
||||
}
|
||||
}
|
||||
}
|
||||
// some code unification to handle all component types the same way.
|
||||
String templateURI = component.getTemplateFolder() + TemplateUtil.DIR_SEP
|
||||
+ componentFileNaming.getJetFileName(component.getTemplateNamePrefix(), language.getExtension(), part);
|
||||
|
||||
@@ -152,9 +152,7 @@ public class CodeGeneratorService implements ICodeGeneratorService {
|
||||
ComponentsFactoryProvider.getInstance().resetCache();
|
||||
ILibraryManagerService librairesManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault().getService(
|
||||
ILibraryManagerService.class);
|
||||
//TUP-31721: The generated studio index will include every possible values with TP_ALL license .
|
||||
//Studio 8 will not re-generate the index after applying patch and installing any component.
|
||||
librairesManagerService.clearCache(false);
|
||||
librairesManagerService.clearCache();
|
||||
CorePlugin.getDefault().getLibrariesService().syncLibraries();
|
||||
Job job = CodeGeneratorEmittersPoolFactory.initialize();
|
||||
// achen modify to record ctrl+shift+f3 is pressed to fix bug 0006107
|
||||
|
||||
@@ -46,7 +46,6 @@ import org.talend.commons.exception.BusinessException;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.commons.utils.io.FilesUtils;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.ILibraryManagerService;
|
||||
import org.talend.core.language.LanguageManager;
|
||||
import org.talend.core.model.component_cache.ComponentsCache;
|
||||
import org.talend.core.model.components.AbstractComponentsProvider;
|
||||
@@ -91,8 +90,6 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
|
||||
private static Set<IComponent> customComponentList = new HashSet<>(); // user/exchange/tck components
|
||||
|
||||
private static Map<IComponent, File> customComponentFolderMap = new HashMap<IComponent, File>();
|
||||
|
||||
private IProgressMonitor monitor;
|
||||
|
||||
private SubMonitor subMonitor;
|
||||
@@ -135,7 +132,6 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
componentList.clear();
|
||||
skeletonList.clear();
|
||||
customComponentList.clear();
|
||||
customComponentFolderMap.clear();
|
||||
|
||||
boolean needRegenerate = false;
|
||||
if (CodeGeneratorActivator.getDefault().getBundle().getBundleContext().getProperty("osgi.dev") != null) {
|
||||
@@ -173,8 +169,6 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
initComponentNameMap();
|
||||
|
||||
isInitializing.set(false);
|
||||
// sync custom component libs after init
|
||||
syncCustomComponentLibs();
|
||||
// TimeMeasure.step("initComponents", "createCache");
|
||||
log.info(componentList.size() + " components loaded in " + (System.currentTimeMillis() - startTime) + " ms"); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
|
||||
@@ -374,7 +368,6 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
} else {
|
||||
componentList.add(currentComp);
|
||||
customComponentList.add(currentComp);
|
||||
customComponentFolderMap.put(currentComp, currentFolder);
|
||||
}
|
||||
} catch (MissingMainXMLComponentFileException e) {
|
||||
log.trace(currentFolder.getName() + " is not a " + getCodeLanguageSuffix() + " component", e); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
@@ -394,23 +387,6 @@ public class ComponentsFactory implements IComponentsFactory {
|
||||
}
|
||||
}
|
||||
|
||||
private void syncCustomComponentLibs() {
|
||||
try {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(ILibraryManagerService.class)) {
|
||||
ILibraryManagerService libraryService = GlobalServiceRegister.getDefault()
|
||||
.getService(ILibraryManagerService.class);
|
||||
if (libraryService != null) {
|
||||
customComponentFolderMap.forEach((component, componentFolder) -> libraryService
|
||||
.deployLibsFromCustomComponents(componentFolder, component.getModulesNeeded()));
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
} finally {
|
||||
customComponentFolderMap.clear();
|
||||
}
|
||||
}
|
||||
|
||||
private void loadComponentsFromFolder(String pathSource, AbstractComponentsProvider provider) {
|
||||
// Changed by Marvin Wang on Feb.22 for bug TDI-19166, caz the test ConnectionManagerTest maybe get the null
|
||||
// context.
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
package org.talend.designer.codegen.components.model;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.talend.core.model.components.IComponent;
|
||||
import org.talend.core.ui.component.ComponentsFactoryProvider;
|
||||
@@ -46,7 +45,6 @@ public class UserComponentsTokenCollector extends AbstractTokenCollector {
|
||||
public JSONObject collect() throws Exception {
|
||||
JSONObject object = new JSONObject();
|
||||
List<IComponent> customComponents = ComponentsFactoryProvider.getInstance().getCustomComponents();
|
||||
customComponents = filterOutComponents(customComponents);
|
||||
JSONArray customComponentsArray = new JSONArray();
|
||||
if (customComponents != null) {
|
||||
for (int i = 0; i < customComponents.size(); i++) {
|
||||
@@ -57,9 +55,4 @@ public class UserComponentsTokenCollector extends AbstractTokenCollector {
|
||||
return object;
|
||||
}
|
||||
|
||||
private List<IComponent> filterOutComponents(List<IComponent> customComponents) {
|
||||
customComponents = customComponents.stream().filter(comp ->!"tTaCoKitGuessSchema".equals(comp.getName())).collect(Collectors.toList());
|
||||
return customComponents;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -55,9 +55,6 @@ public enum EInternalTemplate {
|
||||
CAMEL_RUNIF("camel_run_if", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
CAMEL_SPECIALLINKS("camel_speciallinks", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
MICROSERVICE_APP("microservice_app", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
MICROSERVICE_APP_MS_CONTEXT_PROPERTIES("microservice_app_ms_context_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
MICROSERVICE_APP_CONTEXT_PROPERTIES("microservice_app_context_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
MICROSERVICE_APP_PROPERTIES("microservice_app_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
|
||||
HEADER_ADDITIONAL("header_additional", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
|
||||
|
||||
|
||||
@@ -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: 8.0.1.qualifier
|
||||
Bundle-Version: 8.8.8.qualifier
|
||||
Bundle-Activator: org.talend.designer.components.exchange.ExchangePlugin
|
||||
Require-Bundle: org.eclipse.core.runtime,
|
||||
org.eclipse.ui,
|
||||
|
||||
@@ -8,6 +8,7 @@ bin.includes = META-INF/,\
|
||||
model/,\
|
||||
content/,\
|
||||
plugin_de.properties,\
|
||||
plugin_en.properties,\
|
||||
plugin_fr.properties,\
|
||||
plugin_it.properties,\
|
||||
plugin_ja.properties,\
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tdi-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<version>8.8.8-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.designer.components.exchange</artifactId>
|
||||
|
||||
@@ -14,13 +14,13 @@ DownloadedExtensionsComposite.DownloadDate=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\
|
||||
DownloadedExtensionsComposite.OperateStatus=\u30B9\u30C6\u30FC\u30BF\u30B9\u64CD\u4F5C
|
||||
DownloadedExtensionsComposite.installOperateStatus=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
|
||||
DownloadedExtensionsComposite.installedOperateStatus=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u307F
|
||||
DownloadedExtensionsComposite.updateOperateStatus=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
|
||||
DownloadedExtensionsComposite.updateOperateStatus=\u66F4\u65B0
|
||||
MyExtensionsComposite.ExtensionName=Extension\u540D
|
||||
MyExtensionsComposite.Version=\u30D0\u30FC\u30B8\u30E7\u30F3
|
||||
MyExtensionsComposite.UploadDate=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u65E5\u4ED8
|
||||
MyExtensionsComposite.AddNewExtensionTitle=\u65B0\u898FExtension\u8FFD\u52A0
|
||||
MyExtensionsComposite.UpLoadNewVersionOperateStatus=\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
|
||||
MyExtensionsComposite.UpdateOperateStatus=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
|
||||
MyExtensionsComposite.UpdateOperateStatus=\u66F4\u65B0
|
||||
MyExtensionsComposite.ModifyOperateStatus=\u5909\u66F4
|
||||
MyExtensionsComposite.DeleteOperateStatus=\u524A\u9664
|
||||
MyExtensionsComposite.Form.Return=\u623B\u308A\u5024
|
||||
@@ -45,7 +45,7 @@ MyExtensionsComposite.Form.Upload.Browse.SelectFile=\u30A2\u30C3\u30D7\u30ED\u30
|
||||
MyExtensionsComposite.Form.DeleteExtensionTile=Extension\u524A\u9664
|
||||
MyExtensionsComposite.Form.DeleteExtensionMessage=\u3053\u306E\u62E1\u5F35\u5B50\u3092\u524A\u9664\u3057\u307E\u3059\u304B?
|
||||
MyExtensionsComposite.Form.UploadExtension=Extension\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
|
||||
MyExtensionsComposite.Form.UpdateExtension=Extension\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
|
||||
MyExtensionsComposite.Form.UpdateExtension=Extension\u66F4\u65B0
|
||||
MyExtensionsComposite.Form.ModifyExtension=Extension\u4FEE\u6B63
|
||||
Exchange.logon.error=Exchange\u30E6\u30FC\u30B6\u30FC\u304C\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u521D\u671F\u8A2D\u5B9A\u3092\u4F7F\u7528\u3057\u3066\u767B\u9332\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
||||
RefreshJob.FindExtensions.Title=\u53D6\u5F97\u53EF\u80FD\u306Aextensions
|
||||
@@ -76,8 +76,8 @@ DownloadComponenentsAction_failureTitle=\u5931\u6557
|
||||
DownloadComponenentsAction_failureMessage=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8{0}\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u304C\u59A5\u5F53\u304B\u3054\u78BA\u8A8D\u304F\u3060\u3055\u3044\u3002
|
||||
DownloadComponenentsAction.installExchange=Exchange\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
|
||||
DownloadComponenentsAction.DownloadTaskTitle=Exchange\u304B\u3089\u30D5\u30A1\u30A4\u30EB\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9
|
||||
DownloadComponenentsAction.DownloadTaskName=\u30D5\u30A1\u30A4\u30EB\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D URL:
|
||||
DownloadComponenentsAction.ReloadPalette=\u30D1\u30EC\u30C3\u30C8\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8...
|
||||
DownloadComponenentsAction.DownloadTaskName=\u30D5\u30A1\u30A4\u30EB\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D URL \\:
|
||||
DownloadComponenentsAction.ReloadPalette=\u30D1\u30EC\u30C3\u30C8\u306E\u66F4\u65B0...
|
||||
DownloadComponenentsAction.DownloadFailure=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u5931\u6557\u3002
|
||||
DownloadComponenentsAction.DownloadFailureTip=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u8A2D\u5B9A\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002
|
||||
DownloadComponenentsAction.installComponentsTitle=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
|
||||
@@ -85,17 +85,17 @@ ExchangeWebService.insertionExtensionSuccessful=Extension\u306E\u30A4\u30F3\u30B
|
||||
ExchangeWebService.downloadingExtensionSuccessful=Extension\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u6210\u529F\u3002
|
||||
ExchangeWebService.deleteExtensionSuccessful=Extension\u524A\u9664\u6210\u529F\u3002
|
||||
ExchangeWebService.insertReviewSuccessful=Review\u633F\u5165\u6210\u529F\u3002
|
||||
ExchangeWebService.updateRevisionSuccessful=\u30EA\u30D3\u30B8\u30E7\u30F3\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u6210\u529F\u3002
|
||||
ExchangeWebService.updateRevisionSuccessful=\u30EA\u30D3\u30B8\u30E7\u30F3\u66F4\u65B0\u6210\u529F\u3002
|
||||
ExchangeWebService.insertionRevisionSuccessful=\u30EA\u30D3\u30B8\u30E7\u30F3\u633F\u5165\u6210\u529F\u3002
|
||||
ImportExchangeDialog.dialogTitle=Talend Exchange \u304B\u3089\u9805\u76EE\u306E\u9078\u629E
|
||||
ImportExchangeDialog.WARNING=\u8B66\u544A
|
||||
ImportExchangeDialog.NOTSELECTWARNING=\u30C6\u30FC\u30D6\u30EB\u304B\u3089\u9805\u76EE\u3092\uFF11\u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044...
|
||||
ImportExchangeDialog.downloadProgressBar=\u9805\u76EE\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D\u3067\u3059\u3002\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044!
|
||||
ImportExchangeDialog.EXTENSION_NAME=\u62E1\u5F35\u5B50\u540D
|
||||
ImportExchangeDialog.NOTSELECTWARNING=\u30C6\u30FC\u30D6\u30EB\u304B\u3089\u30A2\u30A4\u30C6\u30E0\u3092\uFF11\u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044...
|
||||
ImportExchangeDialog.downloadProgressBar=\u30A2\u30A4\u30C6\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044!
|
||||
ImportExchangeDialog.EXTENSION_NAME=Extension\u540D
|
||||
ImportExchangeDialog.AUTHOR_NAME=\u4F5C\u6210\u8005\u540D
|
||||
ImportExchangeDialog.LATEST_REVISION=\u6700\u65B0\u30EA\u30D3\u30B8\u30E7\u30F3
|
||||
ImportExchangeDialog.EXTENSION_DESCRIPTION=\u62E1\u5F35\u306E\u8AAC\u660E
|
||||
ImportExchangeDialog.download.extensions=\u62E1\u5F35\u6A5F\u80FD\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002
|
||||
ImportExchangeDialog.REFRESH_BUTTON=\u66F4\u65B0
|
||||
ImportExchangeDialog.REFRESHING_PROGRESSBAR=\u66F4\u65B0\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002
|
||||
ImportExchangeDialog.REFRESHING_PROGRESSBAR=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002
|
||||
ImportExchangeDialog.OPERATION_CANCELLED=\u64CD\u4F5C\u306F\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F
|
||||
|
||||
@@ -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: 8.0.1.qualifier
|
||||
Bundle-Version: 8.8.8.qualifier
|
||||
Require-Bundle: org.eclipse.core.runtime
|
||||
Bundle-ActivationPolicy: lazy
|
||||
Bundle-Vendor: .Talend SA.
|
||||
|
||||
@@ -8,6 +8,14 @@
|
||||
<version>1.0.0</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
|
||||
@@ -6,6 +6,14 @@
|
||||
<name>NetSuite_Management</name>
|
||||
<version>1.0.3</version>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.talend</groupId>
|
||||
|
||||
@@ -6,6 +6,14 @@
|
||||
<name>Netsuite_Client</name>
|
||||
<version>1.0.0</version>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<dependencies>
|
||||
</dependencies>
|
||||
|
||||
|
||||
@@ -7,6 +7,15 @@
|
||||
<version>1.0.1-20190326</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>com.microsoft.azure</groupId>
|
||||
<artifactId>adal4j</artifactId>
|
||||
<version>1.6.6-20220707</version>
|
||||
<version>1.6.4-20211021</version>
|
||||
<packaging>jar</packaging>
|
||||
<name>adal4j</name>
|
||||
<description>
|
||||
@@ -94,7 +94,7 @@
|
||||
<dependency>
|
||||
<groupId>com.nimbusds</groupId>
|
||||
<artifactId>oauth2-oidc-sdk</artifactId>
|
||||
<version>6.5</version>
|
||||
<version>9.7</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.nimbusds</groupId>
|
||||
@@ -104,12 +104,12 @@
|
||||
<dependency>
|
||||
<groupId>com.google.code.gson</groupId>
|
||||
<artifactId>gson</artifactId>
|
||||
<version>2.8.9</version>
|
||||
<version>2.8.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.34</version>
|
||||
<version>1.7.25</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-codec</groupId>
|
||||
|
||||
@@ -40,7 +40,6 @@ import java.util.Collections;
|
||||
import java.util.Map;
|
||||
|
||||
import com.nimbusds.oauth2.sdk.ParseException;
|
||||
import com.nimbusds.oauth2.sdk.http.CommonContentTypes;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPRequest;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPResponse;
|
||||
import org.slf4j.Logger;
|
||||
@@ -138,7 +137,7 @@ class AdalOAuthRequest extends HTTPRequest {
|
||||
HttpHelper.configureAdditionalHeaders(conn, params);
|
||||
conn.setDoOutput(true);
|
||||
conn.setRequestProperty("Content-Type",
|
||||
CommonContentTypes.APPLICATION_URLENCODED.toString());
|
||||
HTTPContentType.ApplicationURLEncoded.contentType);
|
||||
|
||||
if (this.getQuery() != null) {
|
||||
try(final OutputStreamWriter writer = new OutputStreamWriter(
|
||||
|
||||
@@ -37,7 +37,6 @@ import com.nimbusds.oauth2.sdk.ParseException;
|
||||
import com.nimbusds.oauth2.sdk.SerializeException;
|
||||
import com.nimbusds.oauth2.sdk.TokenErrorResponse;
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientAuthentication;
|
||||
import com.nimbusds.oauth2.sdk.http.CommonContentTypes;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPRequest;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPResponse;
|
||||
import com.nimbusds.oauth2.sdk.util.URLUtils;
|
||||
@@ -146,7 +145,7 @@ class AdalTokenRequest {
|
||||
* @return
|
||||
* @throws SerializeException
|
||||
*/
|
||||
AdalOAuthRequest toOAuthRequest() throws SerializeException {
|
||||
AdalOAuthRequest toOAuthRequest() throws SerializeException, ParseException {
|
||||
|
||||
if (this.uri == null) {
|
||||
throw new SerializeException("The endpoint URI is not specified");
|
||||
@@ -155,7 +154,7 @@ class AdalTokenRequest {
|
||||
final AdalOAuthRequest httpRequest = new AdalOAuthRequest(
|
||||
HTTPRequest.Method.POST, this.uri, headerMap, this.proxy,
|
||||
this.sslSocketFactory);
|
||||
httpRequest.setContentType(CommonContentTypes.APPLICATION_URLENCODED);
|
||||
httpRequest.setContentType(HTTPContentType.ApplicationURLEncoded.contentType);
|
||||
final Map<String, List<String>> params = this.grant.toParameters();
|
||||
httpRequest.setQuery(URLUtils.serializeParameters(params));
|
||||
if (this.clientAuth != null) {
|
||||
|
||||
@@ -28,12 +28,9 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.mail.internet.ContentType;
|
||||
|
||||
import com.nimbusds.oauth2.sdk.SerializeException;
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientAuthentication;
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientAuthenticationMethod;
|
||||
import com.nimbusds.oauth2.sdk.http.CommonContentTypes;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPRequest;
|
||||
import com.nimbusds.oauth2.sdk.id.ClientID;
|
||||
import com.nimbusds.oauth2.sdk.util.URLUtils;
|
||||
@@ -60,15 +57,15 @@ class ClientAuthenticationPost extends ClientAuthentication {
|
||||
if (httpRequest.getMethod() != HTTPRequest.Method.POST)
|
||||
throw new SerializeException("The HTTP request method must be POST");
|
||||
|
||||
ContentType ct = httpRequest.getContentType();
|
||||
String ct = String.valueOf(httpRequest.getEntityContentType());
|
||||
|
||||
if (ct == null)
|
||||
throw new SerializeException("Missing HTTP Content-Type header");
|
||||
|
||||
if (!ct.match(CommonContentTypes.APPLICATION_URLENCODED))
|
||||
if (!ct.equals(HTTPContentType.ApplicationURLEncoded.contentType))
|
||||
throw new SerializeException(
|
||||
"The HTTP Content-Type header must be "
|
||||
+ CommonContentTypes.APPLICATION_URLENCODED);
|
||||
+ HTTPContentType.ApplicationURLEncoded.contentType);
|
||||
|
||||
Map<String, List<String>> params = httpRequest.getQueryParameters();
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
package com.microsoft.aad.adal4j;
|
||||
|
||||
/**
|
||||
* Enum containing HTTP Content-Type header values
|
||||
*/
|
||||
enum HTTPContentType {
|
||||
|
||||
ApplicationURLEncoded("application/x-www-form-urlencoded; charset=UTF-8"),
|
||||
ApplicationJSON("application/json; charset=UTF-8");
|
||||
|
||||
public final String contentType;
|
||||
|
||||
HTTPContentType(String contentType) {
|
||||
this.contentType = contentType;
|
||||
}
|
||||
}
|
||||
@@ -37,18 +37,7 @@
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>log4j</groupId>
|
||||
<artifactId>log4j</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>ch.qos.reload4j</groupId>
|
||||
<artifactId>reload4j</artifactId>
|
||||
<version>1.2.22</version>
|
||||
</dependency>
|
||||
<!-- Spring 3 dependencies -->
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
|
||||
@@ -52,8 +52,8 @@ public class AdalOAuthRequestTest extends AbstractAdalTests {
|
||||
assertNotNull(request);
|
||||
}
|
||||
|
||||
|
||||
@Test(expectedExceptions = IOException.class, expectedExceptionsMessageRegExp = "Couldn't parse Content-Type header: Invalid Content-Type value: In Content-Type string <invalid-content>, expected '/', got null")
|
||||
@Test(expectedExceptions = IOException.class, expectedExceptionsMessageRegExp =
|
||||
"Couldn't parse Content-Type header: Invalid Content-Type value: Invalid content type string")
|
||||
public void testCreateResponseContentTypeParsingFailure()
|
||||
throws Exception {
|
||||
|
||||
|
||||
@@ -33,7 +33,6 @@ import com.nimbusds.oauth2.sdk.*;
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientAuthentication;
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientSecretPost;
|
||||
import com.nimbusds.oauth2.sdk.auth.Secret;
|
||||
import com.nimbusds.oauth2.sdk.http.CommonContentTypes;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPResponse;
|
||||
import com.nimbusds.oauth2.sdk.id.ClientID;
|
||||
import com.nimbusds.oauth2.sdk.util.JSONObjectUtils;
|
||||
@@ -77,7 +76,7 @@ public class AdalTokenRequestTest extends AbstractAdalTests {
|
||||
"\"correlation_id\":\"3a...95a\"," +
|
||||
"\"claims\":\"" + claims + "\"}";
|
||||
httpResponse.setContent(content);
|
||||
httpResponse.setContentType(CommonContentTypes.APPLICATION_JSON);
|
||||
httpResponse.setContentType(HTTPContentType.ApplicationJSON.contentType);
|
||||
|
||||
EasyMock.expect(request.toOAuthRequest()).andReturn(adalOAuthHttpRequest).times(1);
|
||||
EasyMock.expect(adalOAuthHttpRequest.send()).andReturn(httpResponse).times(1);
|
||||
@@ -131,7 +130,7 @@ public class AdalTokenRequestTest extends AbstractAdalTests {
|
||||
@Test
|
||||
public void testToOAuthRequestNonEmptyCorrelationId()
|
||||
throws MalformedURLException, SerializeException,
|
||||
URISyntaxException {
|
||||
URISyntaxException, ParseException {
|
||||
final ClientAuthentication ca = new ClientSecretPost(
|
||||
new ClientID("id"), new Secret("secret"));
|
||||
final AuthorizationGrant ag = new AuthorizationCodeGrant(
|
||||
@@ -155,7 +154,7 @@ public class AdalTokenRequestTest extends AbstractAdalTests {
|
||||
@Test
|
||||
public void testToOAuthRequestNullCorrelationId_NullClientAuth()
|
||||
throws MalformedURLException, SerializeException,
|
||||
URISyntaxException {
|
||||
URISyntaxException, ParseException {
|
||||
final AuthorizationGrant ag = new AuthorizationCodeGrant(
|
||||
new AuthorizationCode("code"),
|
||||
new URI("http://my.redirect.com"));
|
||||
|
||||
@@ -33,7 +33,6 @@ import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
import com.nimbusds.oauth2.sdk.auth.ClientAuthentication;
|
||||
import com.nimbusds.oauth2.sdk.http.CommonContentTypes;
|
||||
import com.nimbusds.oauth2.sdk.http.HTTPResponse;
|
||||
import org.easymock.Capture;
|
||||
import org.easymock.EasyMock;
|
||||
@@ -196,7 +195,7 @@ public class DeviceCodeFlowTest {
|
||||
"\"correlation_id\":\"ff60101b-cb23-4a52-82cb-9966f466327a\"}";
|
||||
|
||||
httpResponse.setContent(content);
|
||||
httpResponse.setContentType(CommonContentTypes.APPLICATION_JSON);
|
||||
httpResponse.setContentType(HTTPContentType.ApplicationJSON.contentType);
|
||||
|
||||
EasyMock.expect(request.toOAuthRequest()).andReturn(adalOAuthHttpRequest).times(1);
|
||||
EasyMock.expect(adalOAuthHttpRequest.send()).andReturn(httpResponse).times(1);
|
||||
|
||||
@@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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.components.lib</groupId>
|
||||
<artifactId>azure-utils</artifactId>
|
||||
<version>1.0.3</version>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://github.com/Talend/tdi-studio-se/blob/master/main/plugins/org.talend.designer.components.libs/libs_src/azure-utils/LICENSE</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<source>8</source>
|
||||
<target>8</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<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>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.microsoft.azure</groupId>
|
||||
<artifactId>msal4j</artifactId>
|
||||
<version>1.10.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.minidev</groupId>
|
||||
<artifactId>json-smart</artifactId>
|
||||
<version>2.4.7</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
@@ -0,0 +1,39 @@
|
||||
package org.talend.components.azure.runtime.token;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.Set;
|
||||
|
||||
import com.microsoft.aad.msal4j.ClientCredentialFactory;
|
||||
import com.microsoft.aad.msal4j.ClientCredentialParameters;
|
||||
import com.microsoft.aad.msal4j.ConfidentialClientApplication;
|
||||
import com.microsoft.aad.msal4j.IAuthenticationResult;
|
||||
import com.microsoft.aad.msal4j.IClientCredential;
|
||||
|
||||
public class AzureActiveDirectoryTokenGetter {
|
||||
|
||||
private final String authority;
|
||||
private final String clientId;
|
||||
private final String clientSecret;
|
||||
private static final String RESOURCE = "https://storage.azure.com/";
|
||||
|
||||
public AzureActiveDirectoryTokenGetter(String tenantId, String clientId, String clientSecret) {
|
||||
this.authority = "https://login.microsoftonline.com/" + tenantId;
|
||||
this.clientId = clientId;
|
||||
this.clientSecret = clientSecret;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an active directory token will be used for connection
|
||||
*/
|
||||
public String retrieveAccessToken() throws Exception {
|
||||
IClientCredential credential = ClientCredentialFactory.createFromSecret(clientSecret);
|
||||
ConfidentialClientApplication confidentialClientApplication = ConfidentialClientApplication.builder(clientId, credential)
|
||||
.authority(authority).build();
|
||||
|
||||
Set<String> scopes = Collections.singleton(RESOURCE + "/.default"); //for azure storage scope should ends with ".default"
|
||||
ClientCredentialParameters parameters = ClientCredentialParameters.builder(scopes).build();
|
||||
|
||||
IAuthenticationResult result = confidentialClientApplication.acquireToken(parameters).get();
|
||||
return result.accessToken();
|
||||
}
|
||||
}
|
||||
@@ -6,6 +6,14 @@
|
||||
<name>talend-bonita-client</name>
|
||||
<version>1.0.1</version>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
<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.components</groupId>
|
||||
<artifactId>checkArchive</artifactId>
|
||||
<version>1.2-20210901</version>
|
||||
<name>checkArchive</name>
|
||||
<description>Dependence for tFileArchive and tFileUnAchive</description>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
<java.source.version>1.8</java.source.version>
|
||||
</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>
|
||||
|
||||
<dependencies>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress -->
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-compress</artifactId>
|
||||
<version>1.21</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/main/java</directory>
|
||||
</resource>
|
||||
</resources>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.3.2</version>
|
||||
<configuration>
|
||||
<source>${java.source.version}</source>
|
||||
<target>${java.source.version}</target>
|
||||
<showDeprecation>true</showDeprecation>
|
||||
<showWarnings>true</showWarnings>
|
||||
<compilerArgument>-XDignore.symbol.file</compilerArgument>
|
||||
<fork>true</fork>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@@ -0,0 +1,184 @@
|
||||
package org.talend.archive;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.zip.GZIPInputStream;
|
||||
|
||||
import javax.crypto.Cipher;
|
||||
import javax.crypto.CipherInputStream;
|
||||
import javax.crypto.SecretKey;
|
||||
import javax.crypto.SecretKeyFactory;
|
||||
import javax.crypto.spec.PBEKeySpec;
|
||||
import javax.crypto.spec.PBEParameterSpec;
|
||||
|
||||
import org.apache.commons.compress.archivers.ArchiveEntry;
|
||||
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
|
||||
import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
|
||||
import org.apache.commons.compress.archivers.zip.ZipFile;
|
||||
|
||||
// import javax.crypto.Cipher;
|
||||
|
||||
public class IntegrityUtil {
|
||||
|
||||
/**
|
||||
* Is used to check if the zip file is corrupted/destroyed
|
||||
*
|
||||
* @param file
|
||||
* @return
|
||||
*/
|
||||
public static boolean isZipValid(final File file) {
|
||||
ZipFile zipFile = null;
|
||||
|
||||
try {
|
||||
zipFile = new ZipFile(file);
|
||||
|
||||
return true;
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
} finally {
|
||||
try {
|
||||
if (zipFile != null) {
|
||||
zipFile.close();
|
||||
zipFile = null;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void validate(final File file) {
|
||||
ZipFile zipFile = null;
|
||||
|
||||
try {
|
||||
zipFile = new ZipFile(file);
|
||||
|
||||
} catch (IOException e) {
|
||||
} finally {
|
||||
try {
|
||||
if (zipFile != null) {
|
||||
zipFile.close();
|
||||
zipFile = null;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* To check if the encrpted zip file is corrupted or not
|
||||
*
|
||||
* @param file
|
||||
* @param password
|
||||
* @return
|
||||
*/
|
||||
public static boolean isEncryptedZipValid(final File file, String password) {
|
||||
ZipArchiveInputStream input = null;
|
||||
InputStream target = null;
|
||||
try {
|
||||
target = new FileInputStream(file);
|
||||
target = new CipherInputStream(target, createCipher(Cipher.DECRYPT_MODE, password));
|
||||
input = new ZipArchiveInputStream(target);
|
||||
ArchiveEntry entry = input.getNextEntry();
|
||||
return true;
|
||||
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
} catch (Exception e) {
|
||||
return false;
|
||||
} finally {
|
||||
try {
|
||||
if (input != null) {
|
||||
input.close();
|
||||
input = null;
|
||||
}
|
||||
if (target != null) {
|
||||
target.close();
|
||||
target = null;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Used to check tar.gz/.tgz/.gz file is corrupted/destroyed
|
||||
*
|
||||
* @param fileName
|
||||
* @return
|
||||
*/
|
||||
public static boolean isGZIPValid(final String fileName) {
|
||||
GZIPInputStream inputStream = null;
|
||||
InputStream is = null;
|
||||
try {
|
||||
is = new FileInputStream(new File(fileName));
|
||||
inputStream = new GZIPInputStream(is);
|
||||
return true;
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
}finally {
|
||||
try {
|
||||
if (inputStream != null) {
|
||||
inputStream.close();
|
||||
inputStream = null;
|
||||
} else if(is != null) {
|
||||
is.close();
|
||||
is = null;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Used to check tar.tar file is corrupted/destroyed
|
||||
*
|
||||
* @param fileName
|
||||
* @return
|
||||
*/
|
||||
public static boolean isTarValid(final String fileName) {
|
||||
TarArchiveInputStream inputStream = null;
|
||||
InputStream is = null;
|
||||
try {
|
||||
is = new FileInputStream(new File(fileName));
|
||||
inputStream = new TarArchiveInputStream(is);
|
||||
return inputStream.canReadEntryData(inputStream.getNextEntry());
|
||||
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
}finally {
|
||||
try {
|
||||
if (inputStream != null) {
|
||||
inputStream.close();
|
||||
inputStream = null;
|
||||
} else if(is != null) {
|
||||
is.close();
|
||||
is = null;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param mode
|
||||
* @param password
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
public static Cipher createCipher(int mode, String password) throws Exception {
|
||||
String alg = "PBEWithSHA1AndDESede"; // BouncyCastle has better algorithms
|
||||
PBEKeySpec keySpec = new PBEKeySpec(password.toCharArray());
|
||||
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(alg);
|
||||
SecretKey secretKey = keyFactory.generateSecret(keySpec);
|
||||
|
||||
Cipher cipher = Cipher.getInstance("PBEWithSHA1AndDESede");
|
||||
cipher.init(mode, secretKey, new PBEParameterSpec("saltsalt".getBytes(), 2000));
|
||||
|
||||
return cipher;
|
||||
}
|
||||
}
|
||||
@@ -7,10 +7,18 @@
|
||||
|
||||
<name>commons-net-talend</name>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
<slf4.version>1.7.34</slf4.version>
|
||||
<slf4.version>1.7.25</slf4.version>
|
||||
<lombok.version>1.18.12</lombok.version>
|
||||
</properties>
|
||||
|
||||
@@ -32,7 +40,7 @@
|
||||
<dependency>
|
||||
<groupId>commons-net</groupId>
|
||||
<artifactId>commons-net</artifactId>
|
||||
<version>3.9.0</version>
|
||||
<version>3.6</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
||||
@@ -7,6 +7,13 @@
|
||||
|
||||
<name>Cyberark-wrapper</name>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
|
||||
@@ -9,6 +9,15 @@
|
||||
|
||||
<name>talend-copy</name>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<groupId>net.sf.json-lib</groupId>
|
||||
<artifactId>json-lib</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>2.4.8-talend</version>
|
||||
<version>2.4.6-talend</version>
|
||||
<name>json-lib</name>
|
||||
|
||||
<properties>
|
||||
@@ -230,9 +230,9 @@
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>ch.qos.reload4j</groupId>
|
||||
<artifactId>reload4j</artifactId>
|
||||
<version>1.2.22</version>
|
||||
<groupId>log4j</groupId>
|
||||
<artifactId>log4j</artifactId>
|
||||
<version>1.2.14</version>
|
||||
<scope>runtime</scope>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
|
||||
@@ -10,6 +10,14 @@
|
||||
<name>Marketo SOAP API SDK</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>Apache License, Version 2.0</name>
|
||||
<url>https://www.talendforge.org/modules/licenses/APACHE_v2.txt</url>
|
||||
<distribution>may be downloaded from the Maven repository</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<talend.nexus.url>https://artifacts-oss.talend.com</talend.nexus.url>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user