Compare commits

...

50 Commits

Author SHA1 Message Date
Chao MENG
e0c4d177e1 chore: update plugin timestamp (#5402) 2022-06-23 16:53:48 +08:00
Liu Xinquan
29d3ce507f fix(TDQ-20360) snowflake jdbc connection context mode issue (#5391) 2022-06-17 16:37:59 +08:00
hzhao-talendbj
503077af62 Add localized files (#5385) (#5386)
Co-authored-by: jenkins-git <jenkins-git@talend.com>

Co-authored-by: Xuwei ZHU <xzhu@talend.com>
Co-authored-by: jenkins-git <jenkins-git@talend.com>
2022-06-16 17:53:53 +08:00
AlixMetivier
155beefd6b feat(TBD-13824): Spark 3.2.x standalone GA (#5322) 2022-06-16 12:07:50 +03:00
jiezhang-tlnd
a068fcdf66 feat(TUP-35192)Hide the Debug->Modules from show view (#5368)
https://jira.talendforge.org/browse/TUP-35192
2022-06-16 16:55:03 +08:00
Liu Xinquan
81ec0e7368 fix(TDQ-20360) snowflake jdbc connection context mode issue (#5378) 2022-06-16 15:07:12 +08:00
hcyi
f30930d483 fix(TUP-35508):Better to improve context prompt for JDBC. (#5370)
* fix(TUP-35508):Better to improve context prompt for JDBC.

* fix(TUP-35508):Better to improve context prompt for JDBC.
2022-06-14 15:06:14 +08:00
qiongli
c4abb4e764 fix(TDQ-20442):Split 'handelDQComponents()' so as to handle 2 DQ components(#5352) 2022-06-10 10:27:51 +08:00
Jane Ding
c66b0b1101 feat(TUP-33085):Add Icon(s) to open Help (#5328)
* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085

* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085

* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085

* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085
fix(TUP-35782):[bug] button 'Online help' can't work for some TCK
components
https://jira.talendforge.org/browse/TUP-35782

* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085

* feat(TUP-33085):Add Icon(s) to open Help
https://jira.talendforge.org/browse/TUP-33085
2022-06-09 17:55:55 +08:00
Emmanuel GALLOIS
287d7733bc feat(TDI-48010): bump component-runtime to 1.45.2 (#5327)
* feat(TDI-48010): bump component-runtime to 1.45.0
* feat(TDI-48010): bump component-runtime to 1.45.1
2022-06-09 10:11:42 +02:00
Oleksandr Zhelezniak
5bcbdc1ca9 feat(TDI-48013): jackson align (#5347)
* bump version of Jackson libraries to 2.13.2 and 2.13.2.2
2022-06-09 10:06:11 +03:00
jiezhang-tlnd
74f6189a58 fix(TUP-35826)link path generated is not correct for tRunjob (#5364) 2022-06-09 12:27:32 +08:00
jiezhang-tlnd
dc66db4b77 fix(TUP-35539)Netsuite parent node show as Items missing parent node (#5332)
* fix(TUP-35539)Netsuite: parent node show as "Items missing parent node
(Deprecated)" after import or do delete the datastore directly
https://jira.talendforge.org/browse/TUP-35539

* export dataset need with datastore

* format code

* handle reference project case

* handle import issue

* improve code

* improve code

* improve code
2022-06-09 10:01:23 +08:00
msjian
52224ab37c fix(TDQ-20476) :add jboss-marshalling-2.0.12.Final.jar to build to fix run analysis get error (#5353) 2022-06-08 16:21:58 +08:00
jiezhang-tlnd
a0423027d2 fix(TUP-35683)doc use job for route, joblet for routelet (#5357)
https://jira.talendforge.org/browse/TUP-35683
2022-06-08 15:16:16 +08:00
bhe-talendbj
c0359b5b78 feat(TUP-33929): remove duplicated sub modules from parent (#5235)
* feat(TUP-33929): remove duplicated sub modules from parent

* feat(TUP-33929): refactor

* feat(TUP-33929): add logs for profile mode
2022-06-08 11:06:58 +08:00
jiezhang-tlnd
239b697b01 feat(TUP-34931)Support Sybase 17 (#5236)
* feat(TUP-34931)Support Sybase 17

* add library needed
2022-06-08 09:49:56 +08:00
hcyi
0142e33068 feat(TUP-34855):Setup custom JKS for job signature from GUI. (#5305)
* feat(TUP-34855):Setup custom JKS for job signature from GUI.

* feat(TUP-34855):hide password in mvn command

* feat(TUP-34855):Setup custom JKS for job signature from GUI
2022-06-02 10:52:15 +08:00
jiezhang-tlnd
0451c982ab feat(TUP-28853)tRunjob is ok, need handle joblet (#5269)
* feat(TUP-28853)tRunjob is ok, need handle joblet

* generation document is ok from standard process

* format code

* improve performance

* format code

* improve performance

* format code

* improve performance

* handle latest version

* handle route process

* format code

* format code
2022-05-31 17:02:22 +08:00
sbliu
a221cab814 chore(TUP-35684) upgrade xmlbeans. (#5339) 2022-05-31 16:12:32 +08:00
bhe-talendbj
f649cdaa0d chore(TUP-35685): upgrade database driver version (#5330) 2022-05-31 11:38:43 +08:00
Chao MENG
f6f1ff0c8e feat(TUP-33655): Improve Git pull & Merge if current branch and target (#5307)
branch are on different monthly update.
https://jira.talendforge.org/browse/TUP-33655
2022-05-31 10:11:57 +08:00
Oleksandr Zhelezniak
85e0d731ec fix(TDI-45946): greenplum mapping (#5278)
* add TIMESTAMP WITH TIME ZONE
* add TIME WITH TIME ZONE
2022-05-30 16:16:33 +03:00
sbliu
8d0e77ffd7 fix(TUP-35598) fix OutOfMemoryError: Metaspace (#5333) 2022-05-30 16:39:01 +08:00
hzhao-talendbj
d2ce5eb839 Add localized files (#5336) (#5337)
Co-authored-by: jenkins-git <jenkins-git@talend.com>

Co-authored-by: Alexiane Yvonet <ayvonet@talend.com>
Co-authored-by: jenkins-git <jenkins-git@talend.com>
2022-05-30 15:57:25 +08:00
bhe-talendbj
cac1899508 fix(TUP-35518): fix dropdownlist of context (#5286) 2022-05-26 16:07:23 +08:00
sbliu
c3710b0199 chore(TUP-35445) upgrade guava to 30.0-jre (#5325) 2022-05-26 11:24:34 +08:00
Zhiwei Xue
48baa99ee7 fix(TUP-31233):Routine pom is not updated after installed the required (#5309)
* fix(TUP-31233):Routine pom is not updated after installed the required
jar of user routine

* fix(TUP-31233):Routine pom is not updated after installed the required
jar of user routine
2022-05-25 18:05:00 +08:00
Chao MENG
a2a2fdc4c1 fix(TUP-35616): Problems on the \ processing on the password field after TUP-32821 (#5319)
* fix(TUP-35616): Problems on the \ processing on the password field after
TUP-32821
https://jira.talendforge.org/browse/TUP-35616

* Update ElementParameterParser.java

* fix(TUP-35616): Problems on the \ processing on the password field after
TUP-32821
https://jira.talendforge.org/browse/TUP-35616

* fix(TUP-35616): Problems on the \ processing on the password field after
TUP-32821
https://jira.talendforge.org/browse/TUP-35616

* fix(TUP-35616): Problems on the \ processing on the password field after
TUP-32821
https://jira.talendforge.org/browse/TUP-35616
2022-05-19 19:25:10 +08:00
hzhao-talendbj
73375cda48 801 loc translate fr 2022 05 19 (#5321)
* Add localized files (#5316)

Co-authored-by: jenkins-git <jenkins-git@talend.com>

* Add localized files (#5317)

Co-authored-by: jenkins-git <jenkins-git@talend.com>

Co-authored-by: tsasada-talend <51699524+tsasada-talend@users.noreply.github.com>
Co-authored-by: jenkins-git <jenkins-git@talend.com>
Co-authored-by: jzhangbj <jzhang@talend.com>
2022-05-19 18:44:41 +08:00
hcyi
c49e6af190 fix(TUP-35607):should no prompt for analysis when DB connection have context group with Multiple db set (#5310)
* fix(TUP-35607):should no prompt for analysis when DB connection have
context group with Multiple db set

* fix(TUP-35607):should no prompt for analysis when DB connection have
context group with Multiple db set

* fix(TUP-35607):should no prompt for analysis when DB connection have
context group with Multiple db set
2022-05-19 17:47:15 +08:00
Jane Ding
a2c9fb3308 fix(TUP-33119):SuggestionValues.Item label is received at runtime (#5303)
instead of id when used inside table
https://jira.talendforge.org/browse/TUP-33119
2022-05-17 17:44:03 +08:00
Jane Ding
812a94119c Revert "fix(TUP-33119):SuggestionValues.Item label is received at runtime (#5139)" (#5301)
This reverts commit 9d2f2d25ae.
2022-05-16 15:51:20 +08:00
Emmanuel GALLOIS
f26a582453 feat(TDI-47911): bump component-runtime to 1.44.3 (#5274) 2022-05-13 09:55:36 +02:00
Liu Xinquan
7228acdfaf Revert "chore(TDQ-20339) improve mvn path: org.talend.libraries.jfreechart (#5283)" (#5298)
This reverts commit ed91d67ccc.
2022-05-13 11:42:25 +08:00
bhe-talendbj
09c48442c1 fix(TUP-35541): replace log4j-1.x (#5290) 2022-05-13 10:37:44 +08:00
Jane Ding
af128c8734 fix(TUP-35538):failed to run job when studio is Chinese on R04 (#5295)
* fix(TUP-35538):failed to run job when studio is Chinese on R04
https://jira.talendforge.org/browse/TUP-35538

* fix(TUP-35538):failed to run job when studio is Chinese on R04
https://jira.talendforge.org/browse/TUP-35538
2022-05-13 10:29:02 +08:00
hzhao-talendbj
a7bfec2ca6 Add localized files (#5287) (#5289)
Co-authored-by: jenkins-git <jenkins-git@talend.com>

Co-authored-by: tsasada-talend <51699524+tsasada-talend@users.noreply.github.com>
Co-authored-by: jenkins-git <jenkins-git@talend.com>
2022-05-12 21:04:27 +08:00
Chao MENG
063fff3ba9 Cmeng/feat/tup 33928 tmc update 8 (#5249)
* feat(TUP-33928): Controlled Studio Updates from TMC
https://jira.talendforge.org/browse/TUP-33928
2022-05-12 18:58:16 +08:00
Chao MENG
8f899d61c5 feat(TUP-32821): Credential property value in json format in tck (#5243)
framework
https://jira.talendforge.org/browse/TUP-32821
2022-05-12 18:35:15 +08:00
Liu Xinquan
ed91d67ccc chore(TDQ-20339) improve mvn path: org.talend.libraries.jfreechart (#5283) 2022-05-12 17:18:24 +08:00
hcyi
0eae9a3add feat(TUP-34889):Support to prompt Context on Metadata Connection (#5253)
* feat(TUP-34889):Support to prompt Context on Metadata Connection

* feat(TUP-34889):Support to prompt Context on Metadata Connection

* feat(TUP-34889):Support to prompt Context on Metadata Connection

* feat(TUP-34889):active the prompt when export as context

* feat(TUP-34889):improve for Support to prompt Context on Metadata
Connection

* feat(TUP-34889):add junits and improve.

* feat(TUP-34889):update messages

* feat(TUP-34889):fix bug TUP-35369

* feat(TUP-34889): fix a bug .

* feat(TUP-34889):fix bug TUP-35503 and TUP-35504

* feat(TUP-34889):improve if multiple context group but not prompt .
2022-05-12 17:08:25 +08:00
Jane Ding
9d2f2d25ae fix(TUP-33119):SuggestionValues.Item label is received at runtime (#5139)
instead of id when used inside table
https://jira.talendforge.org/browse/TUP-33119
2022-05-11 10:38:15 +08:00
Jane Ding
9c6a4cfd9c fix(TUP-35315):Redshift SSO support driver 2.x (#5241)
* feat(TUP-35069):Upgrade Redshift driver to v2.x
https://jira.talendforge.org/browse/TUP-35069

* feat(TUP-35069):Upgrade Redshift driver to v2.x
https://jira.talendforge.org/browse/TUP-35069

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
fix(TUP-35356):[Bug] Redshiftsso can not check pass and throw error log
"java.lang.NoClassDefFoundError: com/amazonaws/auth/AWSCredentials"

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
fix(TUP-35356):[Bug] Redshiftsso can not check pass and throw error log
"java.lang.NoClassDefFoundError: com/amazonaws/auth/AWSCredentials"

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
fix(TUP-35356):[Bug] Redshiftsso can not check pass and throw error log
"java.lang.NoClassDefFoundError: com/amazonaws/auth/AWSCredentials"

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
fix(TUP-35411):[Bug] When create redshift sso use driver 2, studio can
not load the properties ok.

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
fix(TUP-35424):[Bug] studio throw NPE error log when save tredshiftsso
component to a built-in metadata.

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315

* fix(TUP-35315):Redshift SSO support driver 2.x
https://jira.talendforge.org/browse/TUP-35315
2022-05-11 10:36:12 +08:00
Zhiwei Xue
5c9555669a fix(TUP-35219):Nullpointer exception with building job on (#5246)
commandline-script mode
2022-05-09 10:11:04 +08:00
Zhiwei Xue
4a9f849581 fix(TUP-34109):[7.3.1] slow project export compared to studio 6.5.1 (#5202) 2022-05-09 10:08:17 +08:00
hcyi
767fb94ff3 fix(TUP-35248):Context password exposed when hovering over context on Talend 8 (#5264)
* fix(TUP-35248):Context password exposed when hovering over context on
Talend 8

* fix(TUP-35248):add junits
2022-05-06 15:56:28 +08:00
hzhao-talendbj
1543d95ed5 Add localized files (#5272) (#5273)
Co-authored-by: jenkins-git <jenkins-git@talend.com>

Co-authored-by: tsasada-talend <51699524+tsasada-talend@users.noreply.github.com>
Co-authored-by: jenkins-git <jenkins-git@talend.com>
2022-05-06 09:43:44 +08:00
Chao MENG
9401dfdfa2 fix(TUP-35048): Job takes about 30-60 minutes to build in Studio (#5222)
* fix(TUP-35048): Job takes about 30-60 minutes to build in Studio
https://jira.talendforge.org/browse/TUP-35048

* fix(TUP-35048): Job takes about 30-60 minutes to build in Studio
https://jira.talendforge.org/browse/TUP-35048

Add junit
2022-05-05 17:28:20 +08:00
sbliu
8f794d57eb Add localized files (#5268)
Co-authored-by: Alexiane Yvonet <ayvonet@talend.com>
Co-authored-by: tsasada-talend <51699524+tsasada-talend@users.noreply.github.com>
2022-04-28 18:33:44 +08:00
99 changed files with 2654 additions and 647 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 600 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 B

View File

@@ -121,7 +121,7 @@ ModelSelectionDialog.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30D7\u30ED\u30D1\u30C6\u3
ModelSelectionDialog.ViewSchema=\u30B9\u30AD\u30FC\u30DE\u3092\u8868\u793A\u3057\u307E\u3059(\u8AAD\u307F\u53D6\u308A\u5C02\u7528)\u3002
ModelSelectionDialog.newViewSchema=\u30B9\u30AD\u30FC\u30DE\u3092\u8868\u793A
ModelSelectionDialog.ViewQuery=\u30AF\u30A8\u30EA\u30FC\u3046\u3092\u8868\u793A\u3057\u307E\u3059(\u8AAD\u307F\u53D6\u308A\u5C02\u7528)\u3002
ModelSelectionDialog.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u63A5\u7D9A\u3092\u66F4\u65B0\u3057\u307E\u3059\u3002
ModelSelectionDialog.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u3002
SSLConfirmDialog.KeyStore=KeyStore\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044
SSLConfirmDialog.TrustStore=TrustStore\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044
SSLConfirmDialog.Password=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044

View File

@@ -39,6 +39,10 @@ public enum EImage implements IImage {
EDIT_ICON("/icons/write_obj.gif"), //$NON-NLS-1$
READ_ICON("/icons/read_obj.gif"), //$NON-NLS-1$
QUESTION_ICON("/icons/question.gif"), //$NON-NLS-1$
HELP_ICON("/icons/help.png"), //$NON-NLS-1$
CREATE_CONNECTION_ICON("/icons/connection.gif"), //$NON-NLS-1$
RESET_DBTYPES_ICON("/icons/reset_dbtypes.jpg"), //$NON-NLS-1$

View File

@@ -64,6 +64,8 @@ public class CommonsPlugin implements BundleActivator {
private static ServiceTracker proxyTracker;
private static Boolean isDebugP2 = null;
public static boolean isWorkbenchCreated() {
return isWorkbenchCreated;
}
@@ -126,6 +128,17 @@ public class CommonsPlugin implements BundleActivator {
}
}
public static boolean isDebugP2() {
try {
if (isDebugP2 == null) {
isDebugP2 = Boolean.getBoolean("talend.studio.lite.p2.debug");
}
return isDebugP2;
} catch (Exception e) {
return false;
}
}
public static boolean isDebugMode() {
return Boolean.getBoolean("talendDebug") //$NON-NLS-1$
|| ArrayUtils.contains(Platform.getApplicationArgs(), TalendDebugHandler.TALEND_DEBUG);

View File

@@ -46,6 +46,12 @@ public interface ITaCoKitService {
boolean isTaCoKitType(Object repoType);
Object getDatastoreFromDataset(Object repositoryViewObject);
String getParentItemIdFromItem(Object Item);
boolean isValueSelectionParameter(Object parameter);
public static ITaCoKitService getInstance() {
BundleContext bc = FrameworkUtil.getBundle(ITaCoKitService.class).getBundleContext();
Collection<ServiceReference<ITaCoKitService>> tacokitServices = Collections.emptyList();

View File

@@ -116,7 +116,7 @@ ModelSelectionDialog.Option=\u30AA\u30D7\u30B7\u30E7\u30F3
ModelSelectionDialog.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30D7\u30ED\u30D1\u30C6\u30A3\u306B\u5909\u66F4\u3057\u307E\u3059\u3002
ModelSelectionDialog.ViewSchema=\u30B9\u30AD\u30FC\u30DE\u3092\u8868\u793A\u3057\u307E\u3059(\u8AAD\u307F\u53D6\u308A\u5C02\u7528)\u3002
ModelSelectionDialog.ViewQuery=\u30AF\u30A8\u30EA\u30FC\u3046\u3092\u8868\u793A\u3057\u307E\u3059(\u8AAD\u307F\u53D6\u308A\u5C02\u7528)\u3002
ModelSelectionDialog.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u63A5\u7D9A\u3092\u66F4\u65B0\u3057\u307E\u3059\u3002
ModelSelectionDialog.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u3002
FileStep2.previewFailure=\u30D7\u30EC\u30D3\u30E5\u30FC\u30A8\u30E9\u30FC\u3002\u4E00\u90E8\u306E\u8A2D\u5B9A\u3092\u5909\u66F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\u6CE8: \u30D7\u30EC\u30D3\u30E5\u30FC\u30A8\u30E9\u30FC\u306F\u4E00\u822C\u7684\u306B\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u8A2D\u5B9A\u306E\u8AA4\u308A\u304C\u539F\u56E0\u3067\u3059\u3002
StateComposite.FLL_DB_INFOR=DB\u60C5\u5831\u3092\u5165\u529B
StateComposite.HELP_MESSAGE=\u30D8\u30EB\u30D7\u30E1\u30C3\u30BB\u30FC\u30B8

View File

@@ -10,7 +10,7 @@
<dbType type="BOOL" ignoreLen="true" ignorePre="true" />
<dbType type="BOX" ignoreLen="true" ignorePre="true" />
<dbType type="BPCHAR" ignoreLen="true" ignorePre="true" />
<dbType type="BYTEA" ignoreLen="true" ignorePre="true" />
<dbType type="BYTEA" ignoreLen="true" ignorePre="true" />
<dbType type="CHAR" defaultLength="50" ignorePre="true"/>
<dbType type="CHARACTER" defaultLength="50" ignorePre="true"/>
<dbType type="CID" ignoreLen="true" ignorePre="true" />
@@ -36,7 +36,7 @@
<dbType type="LINE" ignoreLen="true" ignorePre="true" />
<dbType type="LSEG" ignoreLen="true" ignorePre="true" />
<dbType type="MACADDR" ignoreLen="true" ignorePre="true" />
<dbType type="MONEY" ignoreLen="true" ignorePre="true" />
<dbType type="MONEY" ignoreLen="true" ignorePre="true" />
<dbType type="NAME" ignoreLen="true" ignorePre="true" />
<dbType type="NUMERIC" defaultLength="20" defaultPrecision="10"/>
<dbType type="DECIMAL" defaultLength="20" defaultPrecision="10"/>
@@ -46,7 +46,7 @@
<dbType type="POINT" ignoreLen="true" ignorePre="true" />
<dbType type="POLYGON" ignoreLen="true" ignorePre="true"/>
<dbType type="REFCURSOR" ignoreLen="true" ignorePre="true" />
<dbType type="RELTIME" ignoreLen="true" ignorePre="true" />
<dbType type="RELTIME" ignoreLen="true" ignorePre="true" />
<dbType type="REGCLASS" ignoreLen="true" ignorePre="true" />
<dbType type="REGOPER" ignoreLen="true" ignorePre="true" />
<dbType type="REGOPERATOR" ignoreLen="true" ignorePre="true" />
@@ -60,12 +60,14 @@
<dbType type="TIME" ignorePre="true" />
<dbType type="TINTERVAL" ignoreLen="true" ignorePre="true" />
<dbType type="TIMESTAMPTZ" ignoreLen="true" ignorePre="true" />
<dbType type="TIMESTAMP WITH TIME ZONE" ignoreLen="true" ignorePre="true" />
<dbType type="TIMESTAMP" ignorePre="true" />
<dbType type="TIMETZ" ignoreLen="true" ignorePre="true" />
<dbType type="VARBIT" ignoreLen="true" ignorePre="true" />
<dbType type="TIME WITH TIME ZONE" ignoreLen="true" ignorePre="true" />
<dbType type="VARBIT" ignoreLen="true" ignorePre="true" />
<dbType type="VARCHAR" defaultLength="200" ignorePre="true" />
<dbType type="XID" ignoreLen="true" ignorePre="true" />
<dbType type="_ABSTIME" ignoreLen="true" ignorePre="true" />
<dbType type="_ACLITEM" ignoreLen="true" ignorePre="true" />
<dbType type="_BIT" ignoreLen="true" ignorePre="true" />
@@ -119,38 +121,40 @@
<language name="java">
<talendToDbTypes><!-- Adviced mappings -->
<talendType type="id_List"/>
<talendType type="id_Boolean">
<talendType type="id_Boolean">
<dbType type="BOOL" default="true" />
<dbType type="BOOLEAN" />
<dbType type="BOOLEAN" />
</talendType>
<talendType type="id_Byte">
<talendType type="id_Byte">
</talendType>
<talendType type="id_byte[]">
<dbType type="BIT" default="true" />
<dbType type="VARBIT" />
<dbType type="BIT VARYING" />
<dbType type="BIT VARYING" />
</talendType>
<talendType type="id_Character">
<dbType type="CHAR" default="true" />
<dbType type="CHARACTER" />
<dbType type="BPCHAR" />
<dbType type="VARCHAR" />
<dbType type="TEXT" />
<dbType type="TEXT" />
</talendType>
<talendType type="id_Date">
<dbType type="DATE" default="true" />
<dbType type="DATE" default="true" />
<dbType type="ABSTIME" />
<dbType type="TIMETZ" />
<dbType type="TIME WITH TIME ZONE" />
<dbType type="TIME" />
<dbType type="TIMESTAMPTZ" />
<dbType type="TIMESTAMP WITH TIME ZONE" />
<dbType type="TIMESTAMP" />
<dbType type="INTERVAL" />
<dbType type="TINTERVAL" />
<dbType type="RELTIME" />
<dbType type="RELTIME" />
</talendType>
<talendType type="id_BigDecimal">
<dbType type="NUMERIC" default="true" />
<dbType type="DECIMAL" />
<dbType type="DECIMAL" />
<dbType type="FLOAT4" />
<dbType type="REAL" />
<dbType type="FLOAT8"/>
@@ -161,8 +165,8 @@
<dbType type="REAL" />
<dbType type="FLOAT8" default="true" />
<dbType type="NUMERIC" />
<dbType type="DECIMAL" />
<dbType type="DOUBLE PRECISION"/>
<dbType type="DECIMAL" />
<dbType type="DOUBLE PRECISION"/>
</talendType>
<talendType type="id_Float">
<dbType type="FLOAT4" default="true" />
@@ -170,7 +174,7 @@
<dbType type="REAL" />
<dbType type="NUMERIC" />
<dbType type="DECIMAL" />
<dbType type="DOUBLE PRECISION"/>
<dbType type="DOUBLE PRECISION"/>
</talendType>
<talendType type="id_Integer">
<dbType type="INT2" />
@@ -180,7 +184,7 @@
<dbType type="INT8" />
<dbType type="BIGINT" />
<dbType type="BIGSERIAL" />
<dbType type="INTEGER" />
<dbType type="INTEGER" />
</talendType>
<talendType type="id_Long">
<dbType type="INT2" />
@@ -188,8 +192,8 @@
<dbType type="SERIAL" />
<dbType type="INT8" default="true" />
<dbType type="BIGINT" />
<dbType type="BIGSERIAL" />
<dbType type="SMALLINT" />
<dbType type="BIGSERIAL" />
<dbType type="SMALLINT" />
</talendType>
<talendType type="id_Object">
<dbType type="_POINT" />
@@ -210,26 +214,26 @@
<dbType type="_TIMESTAMPTZ" />
<dbType type="_TIMESTAMP" />
<dbType type="_TINTERVAL" />
<dbType type="_XID" />
<dbType type="ACLITEM" />
<dbType type="BYTEA" />
<dbType type="_XID" />
<dbType type="ACLITEM" />
<dbType type="BYTEA" />
<dbType type="CID" />
<dbType type="CIDR" />
<dbType type="CIRCLE" />
<dbType type="INET" />
<dbType type="CIRCLE" />
<dbType type="INET" />
<dbType type="MACADDR" />
<dbType type="MONEY" />
<dbType type="MONEY" />
<dbType type="OID" />
<dbType type="PATH" />
<dbType type="POLYGON" />
<dbType type="POLYGON" />
<dbType type="REFCURSOR" />
<dbType type="REGCLASS" />
<dbType type="REGOPER" />
<dbType type="REGOPERATOR" />
<dbType type="REGPROC" />
<dbType type="REGPROCEDURE" />
<dbType type="REGTYPE" />
<dbType type="SMGR" />
<dbType type="REGTYPE" />
<dbType type="SMGR" />
<dbType type="TID" />
<dbType type="XID" />
<dbType type="_CHAR" />
@@ -239,7 +243,7 @@
<dbType type="BIGINT" />
<dbType type="BIT VARYING" />
<dbType type="_VARBIT" />
<dbType type="_BIT" />
<dbType type="_BIT" />
<dbType type="_BOOL" />
<dbType type="BOOLEAN" />
<dbType type="BOX" />
@@ -276,7 +280,7 @@
<dbType type="OIDVECTOR" />
<dbType type="_OIDVECTOR" />
<dbType type="_PATH" />
<dbType type="POINT" default="true" />
<dbType type="POINT" default="true" />
</talendType>
<talendType type="id_Short">
<dbType type="INT2" default="true" />
@@ -285,22 +289,22 @@
<dbType type="INT8" />
<dbType type="BIGINT" />
<dbType type="BIGSERIAL" />
<dbType type="SMALLINT" />
<dbType type="SMALLINT" />
</talendType>
<talendType type="id_String">
<dbType type="BPCHAR" />
<dbType type="VARCHAR" default="true" />
<dbType type="CHARACTER VARYING" />
<dbType type="TEXT" />
<dbType type="TEXT" />
</talendType>
</talendToDbTypes>
<dbToTalendTypes>
<dbType type="INT2" >
<talendType type="id_Short" default="true" />
<talendType type="id_Short" default="true" />
</dbType>
<dbType type="SMALLINT" >
<talendType type="id_Short" default="true" />
</dbType>
<talendType type="id_Short" default="true" />
</dbType>
<dbType type="INT4" >
<talendType type="id_Integer" default="true" />
</dbType>
@@ -308,330 +312,336 @@
<talendType type="id_Integer" default="true" />
</dbType>
<dbType type="CHARACTER VARYING" >
<talendType type="id_String" default="true" />
<talendType type="id_String" default="true" />
</dbType>
<dbType type="BOOLEAN" >
<talendType type="id_Boolean" default="true" />
</dbType>
<talendType type="id_Boolean" default="true" />
</dbType>
<dbType type="SERIAL" >
<talendType type="id_Integer" default="true" />
</dbType>
<talendType type="id_Integer" default="true" />
</dbType>
<dbType type="INT8" >
<talendType type="id_Long" default="true" />
<talendType type="id_Long" default="true" />
</dbType>
<dbType type="BIGINT" >
<talendType type="id_Long" default="true" />
</dbType>
<talendType type="id_Long" default="true" />
</dbType>
<dbType type="BIGSERIAL" >
<talendType type="id_Long" default="true" />
</dbType>
<talendType type="id_Long" default="true" />
</dbType>
<dbType type="FLOAT4" >
<talendType type="id_Float" default="true" />
<talendType type="id_BigDecimal"/>
<talendType type="id_Float" default="true" />
<talendType type="id_BigDecimal"/>
</dbType>
<dbType type="REAL" >
<talendType type="id_Float" default="true" />
<talendType type="id_BigDecimal"/>
</dbType>
<talendType type="id_Float" default="true" />
<talendType type="id_BigDecimal"/>
</dbType>
<dbType type="FLOAT8" >
<talendType type="id_Double" default="true" />
<talendType type="id_BigDecimal"/>
<talendType type="id_Double" default="true" />
<talendType type="id_BigDecimal"/>
</dbType>
<dbType type="DOUBLE PRECISION" >
<talendType type="id_Double" default="true" />
<talendType type="id_BigDecimal"/>
<talendType type="id_Double" default="true" />
<talendType type="id_BigDecimal"/>
</dbType>
<dbType type="NUMERIC">
<talendType type="id_Double"/>
<talendType type="id_BigDecimal" default="true" />
<talendType type="id_BigDecimal" default="true" />
</dbType>
<dbType type="DECIMAL">
<talendType type="id_Double"/>
<talendType type="id_BigDecimal" default="true" />
</dbType>
<talendType type="id_BigDecimal" default="true" />
</dbType>
<dbType type="BOOL" >
<talendType type="id_Boolean" default="true" />
</dbType>
<talendType type="id_Boolean" default="true" />
</dbType>
<dbType type="BIT" >
<talendType type="id_byte[]" default="true" />
</dbType>
<talendType type="id_byte[]" default="true" />
</dbType>
<dbType type="VARBIT" >
<talendType type="id_byte[]" default="true" />
</dbType>
<talendType type="id_byte[]" default="true" />
</dbType>
<dbType type="BIT VARYING" >
<talendType type="id_byte[]" default="true" />
</dbType>
<talendType type="id_byte[]" default="true" />
</dbType>
<dbType type="CHAR" >
<talendType type="id_String" default="true" />
<talendType type="id_String" default="true" />
</dbType>
<dbType type="CHARACTER" >
<talendType type="id_String" default="true" />
</dbType>
<talendType type="id_String" default="true" />
</dbType>
<dbType type="BPCHAR" >
<talendType type="id_String" default="true" />
</dbType>
<talendType type="id_String" default="true" />
</dbType>
<dbType type="VARCHAR" >
<talendType type="id_String" default="true" />
</dbType>
<talendType type="id_String" default="true" />
</dbType>
<dbType type="TEXT" >
<talendType type="id_String" default="true" />
</dbType>
<talendType type="id_String" default="true" />
</dbType>
<dbType type="DATE" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="ABSTIME" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIMETZ" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIME WITH TIME ZONE" >
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIME" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIMESTAMPTZ" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIMESTAMP WITH TIME ZONE" >
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TIMESTAMP" >
<talendType type="id_Date" default="true" />
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="INTERVAL" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="TINTERVAL" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="RELTIME" >
<talendType type="id_Date" default="true" />
</dbType>
<talendType type="id_Date" default="true" />
</dbType>
<dbType type="ACLITEM" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="BYTEA" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="CID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="CIDR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="CIRCLE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="INET" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="MACADDR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="MONEY" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="OID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="PATH" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="POLYGON" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REFCURSOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGCLASS" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGOPER" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGOPERATOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGPROC" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGPROCEDURE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="REGTYPE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="SMGR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="TID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="XID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="BOX" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="INT2VECTOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="LINE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="LSEG" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="NAME" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="OIDVECTOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="POINT" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<!-- object -->
<dbType type="_OIDVECTOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_PATH" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_NAME" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_NUMERIC" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_OID" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_LSEG" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_MACADDR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_MONEY" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_LINE" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_INT2VECTOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_INT4" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_INTERVAL" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_BOX" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_BYTEA" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_VARCHAR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_BPCHAR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_CID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_CIDR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_CIRCLE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_DATE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_FLOAT8" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_INET" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_CHAR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_ABSTIME" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_ACLITEM" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_INT8" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_VARBIT" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_BIT" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_BOOL" >
<talendType type="id_Object" default="true" />
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_POINT" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_POLYGON" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_FLOAT4" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REFCURSOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGCLASS" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGOPER" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGOPERATOR" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGPROC" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGPROCEDURE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_REGTYPE" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_RELTIME" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TEXT" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TIMETZ" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TIME" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TIMESTAMPTZ" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TIMESTAMP" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_TINTERVAL" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
<dbType type="_XID" >
<talendType type="id_Object" default="true" />
</dbType>
<talendType type="id_Object" default="true" />
</dbType>
</dbToTalendTypes>
</language>
</dbms>

View File

@@ -21,6 +21,7 @@ import java.util.Set;
import org.eclipse.core.runtime.IProgressMonitor;
import org.talend.core.model.general.ModuleNeeded;
import org.talend.core.model.general.RetrieveResult;
import org.talend.core.model.repository.ERepositoryObjectType;
import org.talend.core.nexus.ArtifactRepositoryBean;
import org.talend.core.nexus.TalendLibsServerManager;
@@ -109,6 +110,8 @@ public interface ILibraryManagerService extends IService {
public boolean retrieve(ModuleNeeded module, String pathToStore, boolean showDialog, IProgressMonitor... monitorWrap);
RetrieveResult retrieveModules(ERepositoryObjectType codeType, Set<ModuleNeeded> modulesNeeded, String pathToStore,
boolean showDialog, IProgressMonitor... monitorWrap);
/**
*
* Resolve the jar from custom nexus

View File

@@ -17,23 +17,23 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.talend.core.database.conn.version.EDatabaseVersion4Drivers;
/**
* DOC jding class global comment. Detailled comment
*/
public enum ERedshiftDriver {
DRIVER_V2("Driver v2", new String[] { "redshift-jdbc42-2.1.0.3.jar", "antlr4-runtime-4.8-1.jar" }),
DRIVER_V1("Driver v1", new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar", "antlr4-runtime-4.8-1.jar" });
DRIVER_V2("Driver v2", new String[] { "redshift-jdbc42-2.1.0.3.jar" }),
DRIVER_V1("Driver v1", new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar" });
private String displayName;
private Set<String> drivers = new HashSet<String>();
private String[] drivers = new String[] {};
private ERedshiftDriver(String displayName, String[] driverStr) {
private ERedshiftDriver(String displayName, String[] drivers) {
this.displayName = displayName;
for (String driver : driverStr) {
drivers.add(driver);
}
this.drivers = drivers;
}
public String getDisplayName() {
@@ -44,19 +44,36 @@ public enum ERedshiftDriver {
this.displayName = displayName;
}
public Set<String> getDrivers() {
public String[] getDrivers() {
return drivers;
}
public void setDrivers(Set<String> drivers) {
public void setDrivers(String[] drivers) {
this.drivers = drivers;
}
public static Set<String> getDriversByVersion(String version) {
public static Set<String> getDriversByVersion(EDatabaseVersion4Drivers v4d, String version) {
Set<String> drivers = new HashSet<String>();
Set<String> providerDrivers = v4d.getProviderDrivers();
ERedshiftDriver redshiftDriver = ERedshiftDriver.valueOf(version);
if (redshiftDriver != null) {
return redshiftDriver.getDrivers();
if (redshiftDriver != null && DRIVER_V1 != redshiftDriver) {
// to replace default one
String[] v1Drivers = DRIVER_V1.getDrivers();
for (String driver : providerDrivers) {
boolean replaced = false;
for (int i = 0; i < v1Drivers.length; i++) {
if (driver.equals(v1Drivers[i])) {
drivers.add(redshiftDriver.getDrivers()[i]);
replaced = true;
break;
}
}
if (!replaced) {
drivers.add(driver);
}
}
} else {
drivers.addAll(providerDrivers);
}
return drivers;
}

View File

@@ -383,6 +383,12 @@ public class ConnParameterKeys {
public static final String CONN_PARA_KEY_CDE_WORKLOAD_USER="CONN_PARA_KEY_CDE_WORKLOAD_USER";
public static final String CONN_PARA_KEY_CDE_WORKLOAD_PASSWORD = "CONN_PARA_KEY_CDE_WORKLOAD_PASSWORD";
// STANDALONE
public static final String CONN_PARA_KEY_UNIV_STANDALONE_MASTER="CONN_PARA_KEY_UNIV_STANDALONE_MASTER";
public static final String CONN_PARA_KEY_UNIV_STANDALONE_CONFIGURE_EXEC="CONN_PARA_KEY_UNIV_STANDALONE_CONFIGURE_EXEC";
public static final String CONN_PARA_KEY_UNIV_STANDALONE_EXEC_MEMORY="CONN_PARA_KEY_UNIV_STANDALONE_EXEC_MEMORY";
public static final String CONN_PARA_KEY_UNIV_STANDALONE_EXEC_CORE="CONN_PARA_KEY_UNIV_STANDALONE_EXEC_CORE";
/**
* Redshift
*/

View File

@@ -69,9 +69,9 @@ public enum EDatabaseVersion4Drivers {
INFORMIX(new DbVersion4Drivers(EDatabaseTypeName.INFORMIX, "ifxjdbc.jar")), //$NON-NLS-1$
SAS_9_1(new DbVersion4Drivers(EDatabaseTypeName.SAS, "SAS 9.1", "SAS_9.1", new String[] { "sas.core.jar", //$NON-NLS-1$
"sas.intrnet.javatools.jar", "sas.svc.connection.jar", "org.apache.log4j_1.2.15.v201012070815.jar" })), //$NON-NLS-1$ //$NON-NLS-2$
"sas.intrnet.javatools.jar", "sas.svc.connection.jar", "reload4j-1.2.19.jar" })), //$NON-NLS-1$ //$NON-NLS-2$
SAS_9_2(new DbVersion4Drivers(EDatabaseTypeName.SAS,
"SAS 9.2", "SAS_9.2", new String[] { "sas.core.jar", "sas.security.sspi.jar", "sas.svc.connection.jar", "org.apache.log4j_1.2.15.v201012070815.jar" })), //$NON-NLS-1$ //$NON-NLS-2$
"SAS 9.2", "SAS_9.2", new String[] { "sas.core.jar", "sas.security.sspi.jar", "sas.svc.connection.jar", "reload4j-1.2.19.jar" })), //$NON-NLS-1$ //$NON-NLS-2$
SAPHana(new DbVersion4Drivers(EDatabaseTypeName.SAPHana, "HDB 1.0", "HDB_1_0", "ngdbc.jar")), //$NON-NLS-1$
// MYSQL, add for 9594
MYSQL_8(new DbVersion4Drivers(EDatabaseTypeName.MYSQL, "MySQL 8", "MYSQL_8", "mysql-connector-java-8.0.18.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
@@ -84,7 +84,7 @@ public enum EDatabaseVersion4Drivers {
MSSQL_PROP(new DbVersion4Drivers(EDatabaseTypeName.MSSQL,
"Microsoft", "MSSQL_PROP", //$NON-NLS-1$ //$NON-NLS-2$
new String[] { "mssql-jdbc.jar", "slf4j-api-1.7.29.jar", "slf4j-log4j12-1.7.29.jar", "msal4j-1.11.0.jar", //$NON-NLS-1$
"oauth2-oidc-sdk-9.7.jar", "log4j-1.2.17.jar", "jackson-core-2.13.2.jar",
"oauth2-oidc-sdk-9.7.jar", "reload4j-1.2.19.jar", "jackson-core-2.13.2.jar",
"jackson-databind-2.13.2.2.jar", "jackson-annotations-2.13.2.jar", "jcip-annotations-1.0-1.jar",
"json-smart-2.4.7.jar", "nimbus-jose-jwt-9.9.3.jar", "accessors-smart-2.4.7.jar", "asm-9.1.jar",
"content-type-2.1.jar", "lang-tag-1.5.jar" })),
@@ -95,19 +95,19 @@ public enum EDatabaseVersion4Drivers {
GREENPLUM_PSQL(new DbVersion4Drivers(EDatabaseTypeName.GREENPLUM,"PostgreSQL", "POSTGRESQL", "postgresql-8.4-703.jdbc4.jar")), //$NON-NLS-1$
GREENPLUM(new DbVersion4Drivers(EDatabaseTypeName.GREENPLUM,"Greenplum", "GREENPLUM", "greenplum-5.1.4.000275.jar")), //$NON-NLS-1$
// PSQL_V10(new DbVersion4Drivers(EDatabaseTypeName.PSQL, "v10", "V10", "postgresql-42.2.5.jar")),
PSQL_V9_X(new DbVersion4Drivers(EDatabaseTypeName.PSQL, "v9 and later", "V9_X", "postgresql-42.2.14.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
PSQL_V9_X(new DbVersion4Drivers(EDatabaseTypeName.PSQL, "v9 and later", "V9_X", "postgresql-42.2.25.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
PSQL_PRIOR_TO_V9(new DbVersion4Drivers(EDatabaseTypeName.PSQL, "Prior to v9", "PRIOR_TO_V9", "postgresql-8.4-703.jdbc4.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
PLUSPSQL_PRIOR_TO_V9(new DbVersion4Drivers(EDatabaseTypeName.PLUSPSQL,
"Prior to v9", "PRIOR_TO_V9", "postgresql-8.4-703.jdbc4.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
PLUSPSQL_V9_X(new DbVersion4Drivers(EDatabaseTypeName.PLUSPSQL, "v9 and later", "V9_X", "postgresql-42.2.14.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
PLUSPSQL_V9_X(new DbVersion4Drivers(EDatabaseTypeName.PLUSPSQL, "v9 and later", "V9_X", "postgresql-42.2.25.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IBMDB2(new DbVersion4Drivers(EDatabaseTypeName.IBMDB2, new String[] { "db2jcc4.jar", "db2jcc_license_cu.jar", //$NON-NLS-1$ //$NON-NLS-2$
"db2jcc_license_cisuz.jar" })), //$NON-NLS-1$
IBMDB2ZOS(new DbVersion4Drivers(EDatabaseTypeName.IBMDB2ZOS, new String[] { "db2jcc4.jar", "db2jcc_license_cu.jar", //$NON-NLS-1$ //$NON-NLS-2$
"db2jcc_license_cisuz.jar" })), //$NON-NLS-1$
SYBASEASE(new DbVersion4Drivers(EDatabaseTypeName.SYBASEASE, "Sybase 12/15", "SYBSEIQ_12_15", "jconn3.jar")), //$NON-NLS-1$
SYBASEIQ_16(new DbVersion4Drivers(EDatabaseTypeName.SYBASEASE, "Sybase 16", "SYBSEIQ_16", "jconn4.jar")), //$NON-NLS-1$
SYBASEIQ_16_SA(new DbVersion4Drivers(EDatabaseTypeName.SYBASEASE, "Sybase 16 (SQL Anywhere)", "SYBSEIQ_16_SA", "sajdbc4-17.0.0.jar")),
SYBASEIQ_16_SA(new DbVersion4Drivers(EDatabaseTypeName.SYBASEASE, "Sybase 16 (SQL Anywhere) and above", "SYBSEIQ_16_SA", "sajdbc4-17.0.0.jar")),
SYBASEIQ(new DbVersion4Drivers(EDatabaseTypeName.SYBASEIQ, "jconn3.jar")), //$NON-NLS-1$
EXASOL(new DbVersion4Drivers(EDatabaseTypeName.EXASOL, "exajdbc-6.0.9302.jar")), //$NON-NLS-1$
@@ -155,7 +155,8 @@ public enum EDatabaseVersion4Drivers {
REDSHIFT_SSO(new DbVersion4Drivers(EDatabaseTypeName.REDSHIFT_SSO, "redshift sso", "REDSHIFT_SSO", //$NON-NLS-1$ //$NON-NLS-2$
new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar", "antlr4-runtime-4.8-1.jar", "aws-java-sdk-1.11.848.jar", "jackson-core-2.11.4.jar", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
"jackson-databind-2.11.4.jar", "jackson-annotations-2.11.4.jar", "httpcore-4.4.13.jar", "httpclient-4.5.13.jar", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$//$NON-NLS-4$
"joda-time-2.8.1.jar", "commons-logging-1.2.jar", "commons-codec-1.14.jar" })), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
"joda-time-2.8.1.jar", "commons-logging-1.2.jar", "commons-codec-1.14.jar", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
"aws-java-sdk-redshift-internal-1.12.x.jar" })), //$NON-NLS-1$
AMAZON_AURORA(new DbVersion4Drivers(EDatabaseTypeName.AMAZON_AURORA, "mysql-connector-java-5.1.49.jar")); //$NON-NLS-1$
@@ -311,8 +312,8 @@ public enum EDatabaseVersion4Drivers {
private static Set<String> getDriversByDriverVersion(EDatabaseVersion4Drivers v4d, String version) {
Set<String> drivers = new HashSet<String>();
if (REDSHIFT == v4d) {
drivers = ERedshiftDriver.getDriversByVersion(version);
if (REDSHIFT == v4d || REDSHIFT_SSO == v4d) {
drivers = ERedshiftDriver.getDriversByVersion(v4d, version);
}
return drivers;
}

View File

@@ -148,7 +148,13 @@ public enum EHadoopProperties {
DATABRICKS_TOKEN,
DATABRICKS_DBFS_DEP_FOLDER;
DATABRICKS_DBFS_DEP_FOLDER,
UNIV_STANDALONE_MASTER,
UNIV_STANDALONE_EXEC_MEMORY,
UNIV_STANDALONE_EXEC_CORE;
public String getName() {
return this.name();

View File

@@ -766,11 +766,11 @@ public class ContextUtils {
return ContextUtils.getContextTypeByName(contextItem, contextName, true);
} else if (item instanceof JobletProcessItem) {
JobletProcessItem jobletProcessItem = (JobletProcessItem) item;
return ContextUtils.getContextTypeByName((List<ContextType>) jobletProcessItem.getJobletProcess().getContext(),
return ContextUtils.getContextTypeByName(jobletProcessItem.getJobletProcess().getContext(),
contextName, jobletProcessItem.getJobletProcess().getDefaultContext());
} else if (item instanceof ProcessItem) {
ProcessItem processItem = (ProcessItem) item;
return ContextUtils.getContextTypeByName((List<ContextType>) processItem.getProcess().getContext(), contextName,
return ContextUtils.getContextTypeByName(processItem.getProcess().getContext(), contextName,
processItem.getProcess().getDefaultContext());
}
return null;
@@ -1134,5 +1134,31 @@ public class ContextUtils {
}
return list;
}
public static IContext convert2IContext(ContextType contextType) {
return convert2IContext(contextType, null);
}
public static IContext convert2IContext(ContextType contextType, String repositoryContextId) {
if (contextType == null) {
return null;
}
IContext jobContext = new JobContext(contextType.getName());
List<ContextParameterType> repoParams = contextType.getContextParameter();
for (ContextParameterType repoParam : repoParams) {
IContextParameter jobParam = new JobContextParameter();
jobParam.setName(repoParam.getName());
jobParam.setContext(jobContext);
jobParam.setComment(repoParam.getComment());
jobParam.setPrompt(repoParam.getPrompt());
jobParam.setPromptNeeded(repoParam.isPromptNeeded());
jobParam.setSource(repositoryContextId != null ? repositoryContextId : repoParam.getRepositoryContextId());
jobParam.setType(repoParam.getType());
jobParam.setValue(repoParam.getValue());
jobParam.setInternalId(repoParam.getInternalId());
jobContext.getContextParameterList().add(jobParam);
}
return jobContext;
}
}

View File

@@ -0,0 +1,42 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.model.general;
import java.util.HashSet;
import java.util.Set;
public class RetrieveResult {
private boolean allResolved;
private Set<ModuleNeeded> resovledModules = new HashSet<>();
private Set<ModuleNeeded> unresolvedModules = new HashSet<>();
public boolean isAllResolved() {
return allResolved;
}
public void setAllResolved(boolean allResolved) {
this.allResolved = allResolved;
}
public Set<ModuleNeeded> getResovledModules() {
return resovledModules;
}
public Set<ModuleNeeded> getUnresolvedModules() {
return unresolvedModules;
}
}

View File

@@ -273,7 +273,8 @@ public final class ConvertionHelper {
private static String getDriverVersionString(DatabaseConnection dbConn) {
String dbVersionString = dbConn.getDbVersionString();
if (EDatabaseTypeName.REDSHIFT.getDisplayName().equals(dbConn.getDatabaseType())) {
if (EDatabaseTypeName.REDSHIFT.getDisplayName().equals(dbConn.getDatabaseType())
|| EDatabaseTypeName.REDSHIFT_SSO.getDisplayName().equals(dbConn.getDatabaseType())) {
EMap<String, String> parameters = dbConn.getParameters();
if (parameters != null) {
String driverString = parameters.get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_DRIVER);
@@ -727,7 +728,8 @@ public final class ConvertionHelper {
origValueConn.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_SSL_KEY_STORE_PASSWORD), false));
}
}
} else if (EDatabaseTypeName.REDSHIFT.getDisplayName().equals(origValueConn.getDatabaseType())) {
} else if (EDatabaseTypeName.REDSHIFT.getDisplayName().equals(origValueConn.getDatabaseType())
|| EDatabaseTypeName.REDSHIFT_SSO.getDisplayName().equals(origValueConn.getDatabaseType())) {
Properties info = new Properties();
EMap<String, String> parameters = origValueConn.getParameters();
if (parameters != null

View File

@@ -489,6 +489,11 @@ public class ComponentToRepositoryProperty {
}
}
else if (EDatabaseTypeName.REDSHIFT_SSO.getDbType().equals((String) parameter.getValue())) {
connection.setProductId(EDatabaseTypeName.REDSHIFT_SSO.getProduct());
connection.setDatabaseType(EDatabaseTypeName.REDSHIFT_SSO.getDisplayName());
}
// NeTezza
else if (EDatabaseTypeName.NETEZZA.getProduct().equalsIgnoreCase((String) parameter.getValue())) {
connection.setDatabaseType(EDatabaseTypeName.NETEZZA.getDisplayName());

View File

@@ -1045,8 +1045,13 @@ public class RepositoryToComponentProperty {
return Boolean.valueOf(connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_STRINGPARA));
}
if (value.equals("ENTRY_PROPERTIES")) {
return ConvertionHelper
.getEntryProperties(connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_PARATABLE));
List<Map<String, Object>> tableProperties = new ArrayList<Map<String, Object>>();
String propertiesInfo = connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_PARATABLE);
if (org.apache.commons.lang.StringUtils.isNotBlank(propertiesInfo)) {
tableProperties = ConvertionHelper
.getEntryProperties(connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_PARATABLE));
}
return tableProperties;
}
if (value.equals("DRIVER_VERSION")) {
String driverVersion = connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_REDSHIFT_DRIVER);

View File

@@ -0,0 +1,52 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.model.update;
import java.util.Date;
/**
* DOC cmeng class global comment. Detailled comment
*/
public interface IStudioUpdateConfig {
Boolean isEnabled();
IStudioUpdate getStudioUpdate();
public interface IStudioUpdate {
String getName();
String getStudioVersion();
Date getReleaseDate();
Date getApprovedDate();
String getInfoUrl();
String getBaseUrl();
String getUpdateUrl();
String getApprovedBy();
String getApprovedName();
String getProjectId();
Boolean isCustom();
}
}

View File

@@ -0,0 +1,169 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.model.update;
import java.util.Date;
/**
* DOC cmeng class global comment. Detailled comment
*/
public class StudioUpdateConfig implements IStudioUpdateConfig {
private Boolean enabled;
private IStudioUpdate studioUpdate;
@Override
public Boolean isEnabled() {
return enabled;
}
public void setEnabled(Boolean enabled) {
this.enabled = enabled;
}
@Override
public IStudioUpdate getStudioUpdate() {
return studioUpdate;
}
public void setStudioUpdate(IStudioUpdate studioUpdate) {
this.studioUpdate = studioUpdate;
}
public static class StudioUpdate implements IStudioUpdate {
private String name;
private String studioVersion;
private String updateUrl;
private Date releaseDate;
private String infoUrl;
private String baseUrl;
private String approvedBy;
private String approvedName;
private Date approvedDate;
private String projectId;
private Boolean custom;
@Override
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String getStudioVersion() {
return studioVersion;
}
public void setStudioVersion(String studioVersion) {
this.studioVersion = studioVersion;
}
@Override
public String getUpdateUrl() {
return updateUrl;
}
public void setUpdateUrl(String updateUrl) {
this.updateUrl = updateUrl;
}
@Override
public Date getReleaseDate() {
return releaseDate;
}
public void setReleaseDate(Date releaseDate) {
this.releaseDate = releaseDate;
}
@Override
public String getInfoUrl() {
return infoUrl;
}
public void setInfoUrl(String infoUrl) {
this.infoUrl = infoUrl;
}
@Override
public String getBaseUrl() {
return baseUrl;
}
public void setBaseUrl(String baseUrl) {
this.baseUrl = baseUrl;
}
@Override
public String getApprovedBy() {
return approvedBy;
}
public void setApprovedBy(String approvedBy) {
this.approvedBy = approvedBy;
}
@Override
public String getApprovedName() {
return approvedName;
}
public void setApprovedName(String approvedName) {
this.approvedName = approvedName;
}
@Override
public Date getApprovedDate() {
return approvedDate;
}
public void setApprovedDate(Date approvedDate) {
this.approvedDate = approvedDate;
}
@Override
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
@Override
public Boolean isCustom() {
return custom;
}
public void setCustom(Boolean custom) {
this.custom = custom;
}
}
}

View File

@@ -0,0 +1,31 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.prefs;
/**
* created by hcyi on May 17, 2022
* Detailled comment
*
*/
public class SecurityPreferenceConstants {
public static final String SIGNER_PATH = "signer.path"; //$NON-NLS-1$
public static final String SIGNER_KEYSTORE_PASSWORD = "signer.keystore.password"; //$NON-NLS-1$
public static final String SIGNER_KEY_PASSWORD = "signer.key.password"; //$NON-NLS-1$
public static final String SIGNER_KEY_ALIAS = "signer.key.alias"; //$NON-NLS-1$
}

View File

@@ -305,13 +305,13 @@ RepositoryUpdateManager.Check=\u30C1\u30A7\u30C3\u30AF\u4E2D...
RepositoryUpdateManager.Messages=\u5909\u66F4\u3092\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n \u3053\u306E\u64CD\u4F5C\u306B\u306F\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.MessagesForTDQ=\u5909\u66F4\u3092\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B?\n\u307E\u305F\u3001\u4E00\u90E8\u306E\u5206\u6790\u4F9D\u5B58\u9805\u76EE\u3067\u60C5\u5831\u304C\u5931\u308F\u308C\u307E\u3059\u3002\n\u3053\u306E\u64CD\u4F5C\u306B\u306F\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.NoModificationTitle=\u5909\u66F4\u4E0D\u8981
RepositoryUpdateManager.NoModificationMessages=\u66F4\u65B0\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NoModificationMessages=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundMessages=\u95A2\u4FC2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundTitle=\u898B\u3064\u304B\u308A\u307E\u305B\u3093
RepositoryUpdateManager.RenameContextMessagesNoBuiltIn=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u66F4\u65B0\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextMessagesNoBuiltIn=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextTitle=\u540D\u524D\u5909\u66F4\u306E\u8CEA\u554F
RepositoryUpdateManager.ItemsToUpdate=\u66F4\u65B0\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RepositoryUpdateManager.job.title=\u30A2\u30A4\u30C6\u30E0\u3092\u66F4\u65B0\u4E2D...
RepositoryUpdateManager.ItemsToUpdate=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RepositoryUpdateManager.job.title=\u30A2\u30A4\u30C6\u30E0\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u4E2D...
RoutinesFunctionProposal.CreatedBy=\u4F5C\u6210\u8005:
RoutinesFunctionProposal.Description=\u8AAC\u660E:
RoutinesFunctionProposal.Example=\u4F8B:
@@ -483,11 +483,11 @@ EUpdateItemType.Name=\u540D\u524D
EUpdateItemType.JobVersion=\u30B8\u30E7\u30D6\u30D0\u30FC\u30B8\u30E7\u30F3
EUpdateItemType.ValidationRule=\u691C\u8A3C\u30EB\u30FC\u30EB
EUpdateResult.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30E2\u30FC\u30C9\u306B\u5909\u66F4
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u66F4\u65B0
EUpdateResult.JobUpdate=\u30B8\u30E7\u30D6\u30CE\u30FC\u30C9\u306E\u66F4\u65B0
EUpdateResult.PathUpdate=\u30DE\u30C3\u30D7\u30D1\u30B9\u306E\u66F4\u65B0
EUpdateResult.StructurePathUpdate=\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u30FC\u30D1\u30B9\u306E\u66F4\u65B0
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u66F4\u65B0
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.JobUpdate=\u30B8\u30E7\u30D6\u30CE\u30FC\u30C9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.PathUpdate=\u30DE\u30C3\u30D7\u30D1\u30B9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.StructurePathUpdate=\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u30FC\u30D1\u30B9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Reload=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30EA\u30ED\u30FC\u30C9
EUpdateResult.Rename=\u540D\u524D\u3092\u5909\u66F4
EUpdateResult.Add=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u8FFD\u52A0

View File

@@ -1,6 +1,6 @@
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content2014=\u7248\u6743\u6240\u6709 (c) 2006-2014, Talend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content2014=\u7248\u6743\u6240\u6709 (c) 2006-2014, Talend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractComponentsProvider.folderNotExist=\u6587\u4EF6\u5939 {0} \u4E0D\u5B58\u5728\u3002
AbstractItemMigrationTask.taskFailed=\u8FC1\u79FB\u4EFB\u52A1 {0} \u5728\u8FC1\u79FB\u9879\u76EE {1} \u65F6\u5931\u8D25
AdvancedSocketFactory.failedInitial=\u9519\u8BEF\uFF1A\u65E0\u6CD5\u521D\u59CB\u5316\uFF1A

View File

@@ -12,9 +12,14 @@
// ============================================================================
package org.talend.core.service;
import java.util.List;
import org.eclipse.core.runtime.Path;
import org.eclipse.swt.widgets.Shell;
import org.talend.core.IService;
import org.talend.core.model.metadata.builder.connection.Connection;
import org.talend.core.model.process.IContext;
import org.talend.core.model.properties.ContextItem;
import org.talend.designer.core.model.utils.emf.talendfile.ContextType;
import org.talend.repository.model.RepositoryNode;
@@ -35,4 +40,12 @@ public interface IMetadataManagmentUiService extends IService {
public boolean isContextMode(Connection connection, String value);
public boolean promptConfirmLauch(Shell shell, Connection connection, ContextItem contextItem);
public IContext promptConfirmLauch(Shell shell, List<IContext> contexts, IContext defaultContext);
public boolean promptConfirmLauch(Shell shell, IContext context);
public boolean isPromptNeeded(List<IContext> contexts);
}

View File

@@ -15,6 +15,7 @@ package org.talend.core.service;
import java.net.URI;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.eclipse.core.resources.IProject;
@@ -22,9 +23,10 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.IService;
import org.talend.core.model.general.Project;
import org.talend.core.model.update.IStudioUpdateConfig;
/**
* DOC cmeng class global comment. Detailled comment
* DON'T remove/change existing API for patch!
*/
public interface IStudioLiteP2Service extends IService {
@@ -122,6 +124,10 @@ public interface IStudioLiteP2Service extends IService {
boolean checkProjectCompatibility(IProgressMonitor monitor, Project proj) throws Exception;
boolean adaptNewProjectVersion(IProgressMonitor monitor, Map<String, String> props) throws Exception;
void setupTmcUpdate(IProgressMonitor monitor, IStudioUpdateConfig updateConfig) throws Exception;
public static IStudioLiteP2Service get() {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IStudioLiteP2Service.class)) {
return GlobalServiceRegister.getDefault().getService(IStudioLiteP2Service.class);
@@ -131,7 +137,9 @@ public interface IStudioLiteP2Service extends IService {
public static abstract class AbsCheckUpdateListener {
abstract public void beforeCheckUpdate(IProgressMonitor monitor) throws Exception;
public void beforeCheckUpdate(IProgressMonitor monitor) throws Exception {
IStudioLiteP2Service.get().unregistCheckUpdateListener(this);
}
}
@@ -190,18 +198,42 @@ public interface IStudioLiteP2Service extends IService {
boolean isReleaseEditable();
@Deprecated
URI getRelease(IProgressMonitor monitor) throws Exception;
@Deprecated
void setRelease(IProgressMonitor monitor, URI uri) throws Exception;
URI getLocalRelease(IProgressMonitor monitor) throws Exception;
void setLocalRelease(IProgressMonitor monitor, URI uri) throws Exception;
String getTmcRelease(IProgressMonitor monitor) throws Exception;
boolean isUpdateEditable();
@Deprecated
Collection<URI> getUpdates(IProgressMonitor monitor) throws Exception;
@Deprecated
void setUpdates(IProgressMonitor monitor, Collection<URI> uris) throws Exception;
Collection<URI> getLocalUpdates(IProgressMonitor monitor) throws Exception;
void setLocalUpdates(IProgressMonitor monitor, Collection<URI> uris) throws Exception;
String getTmcUpdate(IProgressMonitor monitor) throws Exception;
void resetToDefault(IProgressMonitor monitor) throws Exception;
boolean isEnableTmcUpdateSettings(IProgressMonitor monitor) throws Exception;
void enableTmcUpdateSettings(IProgressMonitor monitor, boolean enable) throws Exception;
boolean isOverwriteTmcUpdateSettings(IProgressMonitor monitor) throws Exception;
void overwriteTmcUpdateSettings(IProgressMonitor monitor, boolean overwrite) throws Exception;
}

View File

@@ -173,6 +173,8 @@ public class ConnectionParameters {
private Map<String, String> parameters;
private String selectContext = null;
/**
* Sets the connectionComment.
*
@@ -907,4 +909,12 @@ public class ConnectionParameters {
this.isFirstOpenSqlBuilder = isFirstOpenSqlBuilder;
}
public String getSelectContext() {
return this.selectContext;
}
public void setSelectContext(String selectContext) {
this.selectContext = selectContext;
}
}

View File

@@ -45,6 +45,8 @@ public interface ICamelDesignerCoreService extends IService {
boolean isInstanceofCamelBeansJar(Item item);
boolean isRouteletProcess(Item item);
/**
* Synchronized Route resource
*

View File

@@ -202,4 +202,8 @@ public interface IDesignerCoreService extends IService {
public String[] getNeedRemoveModulesForLog4j();
public void openComponentOnlineHelp(String componentName);
public IProcess getJobletProcessByItem(Item item);
}

View File

@@ -26,6 +26,7 @@ import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.swt.widgets.Shell;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.IService;
import org.talend.core.language.ECodeLanguage;
@@ -133,7 +134,7 @@ public interface IRunProcessService extends IService {
public void updateLibraries(Set<ModuleNeeded> jobModuleList, IProcess process, Set<ModuleNeeded> alreadyRetrievedModules)
throws ProcessorException;
public void updateLibraries(Item routineItem);
public boolean updateLibraries(Item routineItem);
public void refreshView();
@@ -279,4 +280,6 @@ public interface IRunProcessService extends IService {
void updateAllCodeCacheStatus(boolean isUpdated);
IContext promptConfirmLauch(Shell shell, IProcess process);
}

View File

@@ -39,9 +39,9 @@ import org.talend.core.model.properties.Item;
import org.talend.core.model.properties.ProjectReference;
import org.talend.core.model.properties.Property;
import org.talend.core.model.repository.ERepositoryObjectType;
import org.talend.core.model.repository.GITConstant;
import org.talend.core.model.repository.IRepositoryViewObject;
import org.talend.core.model.repository.RepositoryManager;
import org.talend.core.model.repository.GITConstant;
import org.talend.core.model.utils.TalendPropertiesUtil;
import org.talend.core.runtime.CoreRuntimePlugin;
import org.talend.core.runtime.util.URIHelper;
@@ -836,8 +836,7 @@ public final class ProjectManager {
return null;
}
public Map<String, String> getProjectLabelWithOriginVersion() {
return projectLabelWithOriginVersion;
}
}
}

View File

@@ -17,6 +17,7 @@ import java.util.Collection;
import java.util.List;
import java.util.Set;
import org.apache.commons.lang3.StringUtils;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -27,6 +28,7 @@ import org.eclipse.jface.viewers.StructuredViewer;
import org.eclipse.jface.viewers.TreeViewer;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.exception.PersistenceException;
import org.talend.commons.runtime.service.ITaCoKitService;
import org.talend.commons.ui.gmf.util.DisplayUtils;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.hadoop.IHadoopClusterService;
@@ -377,7 +379,7 @@ public class RepositoryNodeUtilities {
return node;
} else {
if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
ITestContainerProviderService testContainerService = (ITestContainerProviderService) GlobalServiceRegister
ITestContainerProviderService testContainerService = GlobalServiceRegister
.getDefault().getService(ITestContainerProviderService.class);
if (testContainerService != null) {
String originalID = testContainerService.getOriginalID(curNode);
@@ -710,7 +712,7 @@ public class RepositoryNodeUtilities {
ERepositoryObjectType type = connection.getObject().getRepositoryObjectType();
IGenericWizardService wizardService = null;
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericWizardService.class)) {
wizardService = (IGenericWizardService) GlobalServiceRegister.getDefault().getService(IGenericWizardService.class);
wizardService = GlobalServiceRegister.getDefault().getService(IGenericWizardService.class);
}
if (wizardService != null && wizardService.isGenericType(type)) {
return getGenericSchemaNode(connection, tableName);
@@ -870,6 +872,7 @@ public class RepositoryNodeUtilities {
// RelationshipItemBuilder
if (item instanceof ConnectionItem) {
ConnectionItem connectionItem = (ConnectionItem) item;
if (connectionItem.getConnection().isContextMode()) {
String id = connectionItem.getConnection().getContextId();
if (id != null) {
@@ -882,7 +885,31 @@ public class RepositoryNodeUtilities {
checkItemDependencies(object, repositoryObjects, includeSystemItems, includeReferenceProjectItems,
needRebuild);
}
} else {
ITaCoKitService coKitService = ITaCoKitService.getInstance();
String parentItemId = null;
IRepositoryViewObject obj = null;
if (coKitService != null) {
parentItemId = coKitService.getParentItemIdFromItem(item);
}
if (StringUtils.isNotBlank(parentItemId)) {
if (includeReferenceProjectItems) {
obj = factory.getLastVersion(parentItemId);
} else {
obj = factory.getLastVersion(ProjectManager.getInstance().getCurrentProject(),
parentItemId);
}
}
if (obj != null) {
if (obj instanceof IRepositoryViewObject && !repositoryObjects.contains(obj)) {
repositoryObjects.add(obj);
}
}
}
}
} catch (PersistenceException et) {
ExceptionHandler.process(et);
@@ -890,10 +917,30 @@ public class RepositoryNodeUtilities {
}
private static void checkParentItemForTacokit(IRepositoryViewObject obj,
List<IRepositoryViewObject> repositoryObjects) {
ITaCoKitService coKitService = ITaCoKitService.getInstance();
if (coKitService == null) {
return;
}
Object datastoreFromDataset = coKitService.getDatastoreFromDataset(obj);
if (datastoreFromDataset instanceof IRepositoryViewObject
&& !repositoryObjects.contains(datastoreFromDataset)) {
repositoryObjects.add((IRepositoryViewObject) datastoreFromDataset);
}
}
private static void checkItemDependencies(IRepositoryViewObject obj, List<IRepositoryViewObject> repositoryObjects,
boolean includeSystemItems, boolean includeReferenceProjectItems, boolean needRebuild) {
if (obj != null && !repositoryObjects.contains(obj)) {
repositoryObjects.add(obj);
checkParentItemForTacokit(obj, repositoryObjects);
checkAllVersionLatest(repositoryObjects, obj, includeSystemItems, includeReferenceProjectItems);
checkItemDependencies(obj.getProperty().getItem(), repositoryObjects, includeSystemItems,
includeReferenceProjectItems, needRebuild);
@@ -961,7 +1008,7 @@ public class RepositoryNodeUtilities {
List<ERepositoryObjectType> extraTypes = new ArrayList<ERepositoryObjectType>();
IGenericDBService dbService = null;
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericDBService.class)) {
dbService = (IGenericDBService) GlobalServiceRegister.getDefault().getService(IGenericDBService.class);
dbService = GlobalServiceRegister.getDefault().getService(IGenericDBService.class);
}
if (dbService != null) {
extraTypes.addAll(dbService.getExtraTypes());

View File

@@ -581,3 +581,4 @@ I18nPreferencePage.restoreDefault=Restore default
I18nPreferencePage.wait_process=The process will hold for several minutes, please wait...
MetadataPreferencePage.EnableBasic.name=Enable Basic Authentication Header
MetadataPreferencePage.MessageDialog.Restart=The Studio needs to restart for this setting to take effect.\nAre you sure?
TalendTabbedPropertyTitle.componentHelpTooltip=Open online help

View File

@@ -231,12 +231,12 @@ RepositoryUpdateManager.Title=\u5909\u66F4
RepositoryUpdateManager.Check=\u30C1\u30A7\u30C3\u30AF\u4E2D...
RepositoryUpdateManager.Messages=\u5909\u66F4\u3092\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n \u3053\u306E\u64CD\u4F5C\u306B\u306F\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.NoModificationTitle=\u5909\u66F4\u4E0D\u8981
RepositoryUpdateManager.NoModificationMessages=\u66F4\u65B0\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NoModificationMessages=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundMessages=\u95A2\u4FC2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundTitle=\u898B\u3064\u304B\u308A\u307E\u305B\u3093
RepositoryUpdateManager.RenameContextMessages=\u5909\u6570\u306E\u540D\u524D\u5909\u66F4\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u66F4\u65B0\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextMessages=\u5909\u6570\u306E\u540D\u524D\u5909\u66F4\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextTitle=\u540D\u524D\u5909\u66F4\u306E\u8CEA\u554F
RepositoryUpdateManager.ItemsToUpdate=\u66F4\u65B0\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RepositoryUpdateManager.ItemsToUpdate=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RuleOperationChoiceDialog.editRules=\u30EB\u30FC\u30EB\u3092\u7DE8\u96C6
RuleOperationChoiceDialog.rule=\u30EB\u30FC\u30EB:
RuleOperationChoiceDialog.selectRulesFile=\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30EB\u30FC\u30EB\u3092\u9078\u629E
@@ -363,8 +363,8 @@ EUpdateItemType.Components=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8
EUpdateItemType.Name=\u540D\u524D
EUpdateItemType.JobVersion=\u30B8\u30E7\u30D6\u30D0\u30FC\u30B8\u30E7\u30F3
EUpdateResult.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30E2\u30FC\u30C9\u306B\u5909\u66F4
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u66F4\u65B0
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u66F4\u65B0
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Reload=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30EA\u30ED\u30FC\u30C9
EUpdateResult.Rename=\u540D\u524D\u3092\u5909\u66F4
EUpdateResult.Add=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u8FFD\u52A0
@@ -581,3 +581,4 @@ I18nPreferencePage.restoreDefault=\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u5FA9\u51
I18nPreferencePage.wait_process=\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308A\u307E\u3059\u3002\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...
MetadataPreferencePage.EnableBasic.name=\u57FA\u672C\u8A8D\u8A3C\u30D8\u30C3\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3059\u308B
MetadataPreferencePage.MessageDialog.Restart=\u3053\u306E\u8A2D\u5B9A\u304C\u6709\u52B9\u306B\u306A\u308B\u3088\u3046\u3001Studio\u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\u7D9A\u884C\u3057\u307E\u3059\u304B?
TalendTabbedPropertyTitle.componentHelpTooltip=\u30AA\u30F3\u30E9\u30A4\u30F3\u30D8\u30EB\u30D7\u3092\u958B\u304F

View File

@@ -1,5 +1,5 @@
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2011\uFF0CTalend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content=\u7248\u6743\u6240\u6709 (c) 2005-2011\uFF0CTalend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2011\uFF0CTalend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content=\u7248\u6743\u6240\u6709 (c) 2005-2011\uFF0CTalend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractComponentsProvider.folderNotExist=\u6587\u4EF6\u5939 {0} \u4E0D\u5B58\u5728\u3002
AbstractItemMigrationTask.taskFailed=\u8FC1\u79FB\u4EFB\u52A1 {0} \u5728\u8FC1\u79FB\u9879\u76EE {1} \u65F6\u5931\u8D25
AdvancedSocketFactory.failedInitial=\u9519\u8BEF\uFF1A\u65E0\u6CD5\u521D\u59CB\u5316:

View File

@@ -636,6 +636,7 @@ public class ContextNebulaGridComposite extends AbstractContextTabEditComposite
visibleItemCount = 20;
}
contextsCombo.setVisibleItemCount(visibleItemCount);
contextsCombo.getParent().getParent().pack();
}
private void checkContextGroupSource() {

View File

@@ -172,6 +172,10 @@ public class ContextNatTableConfiguration extends AbstractRegistryConfiguration
@Override
public boolean isEditable(int columnIndex, int rowIndex) {
if (columnIndex == 4) {
// active the prompt when export as context
return true;
}
if (modelManager != null && modelManager.isReadOnly()) {
return false;
}

View File

@@ -19,6 +19,9 @@ import java.util.List;
import java.util.Map;
import org.dom4j.Element;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.exception.PersistenceException;
import org.talend.core.model.components.EComponentType;
import org.talend.core.model.genhtml.HTMLDocUtils;
import org.talend.core.model.genhtml.IHTMLDocConstants;
import org.talend.core.model.process.EComponentCategory;
@@ -27,7 +30,9 @@ import org.talend.core.model.process.IComponentDocumentation;
import org.talend.core.model.process.IElementParameter;
import org.talend.core.model.process.INode;
import org.talend.core.model.properties.ConnectionItem;
import org.talend.core.model.repository.IRepositoryViewObject;
import org.talend.core.model.utils.ParameterValueUtil;
import org.talend.core.repository.model.ProxyRepositoryFactory;
import org.talend.designer.core.IDesignerCoreService;
/**
@@ -103,13 +108,64 @@ public class ExternalNodeComponentHandler extends AbstractComponentHandler {
for (INode externalNode : this.componentsList) {
Element componentElement = generateComponentDetailsInfo(true, externalNode, this.externalNodeElement,
this.picFilePathMap, this.sourceConnectionMap, this.targetConnectionMap, this.repositoryDBIdAndNameMap);
this.picFilePathMap, this.sourceConnectionMap, this.targetConnectionMap,
this.repositoryDBIdAndNameMap);
String componentName = externalNode.getUniqueName();
IComponentDocumentation componentDocumentation = externalNode.getExternalNode().getComponentDocumentation(
componentName, HTMLDocUtils.getTmpFolder() /* checkExternalPathIsExists(tempFolderPath) */);
// Checks if generating html file for external node failed, generating the same information as internal node
if (EComponentType.JOBLET == externalNode.getComponent().getComponentType()) {
String jobletName = externalNode.getComponent().getProcess().getName();
String version = externalNode.getComponent().getProcess().getVersion();
componentElement.addAttribute("joblet", HTMLDocUtils.checkString(jobletName));
// ../b/b_0.1.html
String href = "../" + jobletName + "/" + jobletName + "_" + version + ".html";
componentElement.addAttribute("href", HTMLDocUtils.checkString(href));
}
if (EComponentType.EMF == externalNode.getComponent().getComponentType()
&& externalNode.getElementParameter("SELECTED_JOB_NAME") != null) {
IElementParameter elp = externalNode.getElementParameter("SELECTED_JOB_NAME");
String cjobName = (String) elp.getValue();
componentElement.addAttribute("joblet", HTMLDocUtils.checkString(cjobName));
Map<String, IElementParameter> childParameters = elp.getChildParameters();
String version = null;
String processId = null;
if (childParameters != null) {
IElementParameter processElementId = childParameters.get("PROCESS_TYPE_PROCESS");
if (processElementId != null) {
processId = (String) processElementId.getValue();
}
IElementParameter versionElement = childParameters.get("PROCESS_TYPE_VERSION");
if (versionElement != null) {
version = (String) versionElement.getValue();
if ("Latest".equals(version) && processId != null) {
try {
IRepositoryViewObject rep = ProxyRepositoryFactory.getInstance()
.getLastVersion(processId);
if (rep != null) {
version = rep.getProperty().getVersion();
}
} catch (PersistenceException e) {
ExceptionHandler.process(e);
}
}
}
}
if (version == null) {
version = "0.1";
ExceptionHandler.log("The property of sbujob is missing");
}
String href = "../" + cjobName + "/" + cjobName + "_" + version + ".html";
componentElement.addAttribute("href", HTMLDocUtils.checkString(href));
}
// Checks if generating html file for external node failed, generating the same
// information as internal node
// instead.
if (componentDocumentation == null) {
Element parametersElement = componentElement.addElement("parameters"); //$NON-NLS-1$

View File

@@ -18,13 +18,17 @@ import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.dom4j.Element;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.exception.PersistenceException;
import org.talend.core.model.genhtml.HTMLDocUtils;
import org.talend.core.model.genhtml.IHTMLDocConstants;
import org.talend.core.model.process.EParameterFieldType;
import org.talend.core.model.process.IElementParameter;
import org.talend.core.model.process.INode;
import org.talend.core.model.properties.ConnectionItem;
import org.talend.core.model.repository.IRepositoryViewObject;
import org.talend.core.model.utils.ParameterValueUtil;
import org.talend.core.repository.model.ProxyRepositoryFactory;
import org.talend.core.runtime.CoreRuntimePlugin;
import org.talend.designer.core.IDesignerCoreService;
@@ -88,11 +92,58 @@ public class InternalNodeComponentHandler extends AbstractComponentHandler {
*/
@Override
public void generateComponentInfo() {
for (INode node : this.componentsList) {
Element componentElement = generateComponentDetailsInfo(false, node, this.internalNodeElement, this.picFilePathMap,
this.sourceConnectionMap, this.targetConnectionMap, this.repositoryDBIdAndNameMap);
Element componentElement = generateComponentDetailsInfo(false, node, this.internalNodeElement,
this.picFilePathMap, this.sourceConnectionMap, this.targetConnectionMap,
this.repositoryDBIdAndNameMap);
CoreRuntimePlugin.getInstance().getRepositoryService().setInternalNodeHTMLMap(node, internalNodeHTMLMap);
boolean istRunJob = node.getComponent().getName().equals("tRunJob"); //$NON-NLS-1$
if (istRunJob) {
String version = null;
String processId = null;
IElementParameter processElement = node.getElementParameter("PROCESS");
if (processElement != null) {
Map<String, IElementParameter> childParameters = processElement.getChildParameters();
if (childParameters != null) {
IElementParameter processElementId = childParameters.get("PROCESS_TYPE_PROCESS");
if (processElementId != null) {
processId = (String) processElementId.getValue();
}
IElementParameter versionElement = childParameters.get("PROCESS_TYPE_VERSION");
if (versionElement != null) {
version = (String) versionElement.getValue();
if ("Latest".equals(version) && processId != null) {
try {
IRepositoryViewObject rep = ProxyRepositoryFactory.getInstance()
.getLastVersion(processId);
if (rep != null) {
version = rep.getProperty().getVersion();
}
} catch (PersistenceException e) {
ExceptionHandler.process(e);
}
}
}
}
}
if (version == null) {
version = "0.1";
ExceptionHandler.log("The property of sbujob is missing");
}
componentElement.addAttribute("job", HTMLDocUtils.checkString(node.getLabel()));
// ../b/b_0.1.html
if (processElement != null && processElement.getValue() != null) {
String processName = processElement.getValue().toString();
String href = "../" + processName + "/" + processName + "_" + version + ".html";
componentElement.addAttribute("href", HTMLDocUtils.checkString(href));
}
}
generateComponentElemParamters(node, componentElement);
}
}
@@ -105,10 +156,9 @@ public class InternalNodeComponentHandler extends AbstractComponentHandler {
*/
protected void generateComponentElemParamters(INode node, Element componentElement) {
Element parametersElement = componentElement.addElement("parameters"); //$NON-NLS-1$
List elementParameterList = node.getElementParameters();
boolean istRunJob = node.getComponent().getName().equals("tRunJob"); //$NON-NLS-1$
generateComponentElementParamInfo(istRunJob, parametersElement, elementParameterList, node);
generateComponentSchemaInfo(node, componentElement);

View File

@@ -24,7 +24,6 @@ import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FormAttachment;
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.views.properties.tabbed.ITabItem;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
@@ -129,6 +128,14 @@ public class HorizontalTabFactory {
title.setTitleImage(image);
}
public void setHelpComponentName(String componentName) {
title.setComponentName(componentName);
}
public TalendTabbedPropertyTitle getTabbedPropertyTitle() {
return title;
}
/**
* yzhang HorizontalTabFactory class global comment. Detailled comment <br/>
*

View File

@@ -12,11 +12,14 @@
// ============================================================================
package org.talend.core.ui.properties.tab;
import org.apache.commons.lang.StringUtils;
import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.FontData;
@@ -27,9 +30,16 @@ import org.eclipse.swt.layout.FormAttachment;
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.swt.widgets.ToolItem;
import org.eclipse.ui.forms.IFormColors;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
import org.talend.commons.ui.runtime.image.EImage;
import org.talend.commons.ui.runtime.image.ImageProvider;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.ui.CoreUIPlugin;
import org.talend.core.ui.i18n.Messages;
import org.talend.designer.core.IDesignerCoreService;
import org.talend.themes.core.elements.stylesettings.TalendTabbedPropertyColorHelper;
import org.talend.themes.core.elements.widgets.ITalendTabbedPropertyTitleWidget;
@@ -44,6 +54,16 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
private Image image = null;
private String text = null;
private ToolItem helpLabel;
private String componentName;
private Composite titleLabelComp;
private Composite helpComp;
private boolean isComponentTitle;
private static final String BLANK = ""; //$NON-NLS-1$
@@ -71,8 +91,10 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
public void paintControl(PaintEvent e) {
if (image == null && (text == null || text.equals(BLANK))) {
label.setVisible(false);
helpComp.setVisible(false);
} else {
label.setVisible(true);
helpComp.setVisible(isComponentTitle && StringUtils.isNotBlank(componentName));
drawTitleBackground(e);
}
}
@@ -96,25 +118,70 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
}
font = JFaceResources.getFont(TITLE_FONT);
label = factory.createCLabel(this, BLANK);
if (colorHelper.getTitleBackground() == null) {
label.setBackground(new Color[] { factory.getColors().getColor(IFormColors.H_GRADIENT_END),
factory.getColors().getColor(IFormColors.H_GRADIENT_START) }, new int[] { 100 }, true);
} else {
label.setBackground(colorHelper.getTitleBackground());
}
titleLabelComp = new Composite(this, SWT.None);
FormData compData = new FormData();
compData.left = new FormAttachment(0, 0);
compData.top = new FormAttachment(0, 0);
compData.right = new FormAttachment(100, 0);
compData.bottom = new FormAttachment(100, 0);
titleLabelComp.setLayoutData(compData);
titleLabelComp.setLayout(new FormLayout());
label = factory.createCLabel(titleLabelComp, BLANK);
label.setFont(font);
label.setForeground(colorHelper.getTitleForeground());
FormData data = new FormData();
data.left = new FormAttachment(0, 0);
data.top = new FormAttachment(0, 0);
data.right = new FormAttachment(100, 0);
data.right = new FormAttachment(100, -25);
data.bottom = new FormAttachment(100, 0);
label.setLayoutData(data);
/*
* setImage(PlatformUI.getWorkbench().getSharedImages().getImage( ISharedImages.IMG_OBJ_ELEMENT));
*/
helpComp = new Composite(titleLabelComp, SWT.None);
FormData helpFormData = new FormData();
helpFormData.top = new FormAttachment(50, -12);
helpFormData.right = new FormAttachment(100, 0);
helpFormData.bottom = new FormAttachment(50, 12);
helpFormData.left = new FormAttachment(100, -25);
helpComp.setLayoutData(helpFormData);
helpComp.setLayout(new FormLayout());
ToolBar toolBar = new ToolBar(helpComp, SWT.CENTER | SWT.NO_FOCUS);
FormData toolBarData = new FormData();
toolBarData.left = new FormAttachment(0, 0);
toolBarData.top = new FormAttachment(0, 0);
toolBarData.right = new FormAttachment(100, 0);
toolBarData.bottom = new FormAttachment(100, 0);
helpLabel = new ToolItem(toolBar, SWT.CHECK | SWT.CENTER);
helpLabel.setImage(ImageProvider.getImage(EImage.HELP_ICON));
helpLabel.setToolTipText(Messages.getString("TalendTabbedPropertyTitle.componentHelpTooltip"));
helpLabel.setSelection(false);
helpLabel.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
if (StringUtils.isNotBlank(componentName)
&& GlobalServiceRegister.getDefault().isServiceRegistered(IDesignerCoreService.class)) {
IDesignerCoreService service = GlobalServiceRegister.getDefault().getService(IDesignerCoreService.class);
if (service != null) {
service.openComponentOnlineHelp(componentName);
}
}
helpLabel.setSelection(false);
}
});
helpComp.setVisible(false);
if (colorHelper.getTitleBackground() == null) {
label.setBackground(new Color[] { factory.getColors().getColor(IFormColors.H_GRADIENT_END),
factory.getColors().getColor(IFormColors.H_GRADIENT_START) }, new int[] { 100 }, true);
titleLabelComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
helpComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
} else {
label.setBackground(colorHelper.getTitleBackground());
titleLabelComp.setBackground(colorHelper.getTitleBackground());
helpComp.setBackground(colorHelper.getTitleBackground());
}
}
/**
@@ -125,8 +192,12 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
if (colorHelper.getTitleBackground() == null) {
label.setBackground(new Color[] { factory.getColors().getColor(IFormColors.H_GRADIENT_END),
factory.getColors().getColor(IFormColors.H_GRADIENT_START) }, new int[] { 100 }, true);
titleLabelComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
helpComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
} else {
label.setBackground(colorHelper.getTitleBackground());
titleLabelComp.setBackground(colorHelper.getTitleBackground());
helpComp.setBackground(colorHelper.getTitleBackground());
}
Color bg = factory.getColors().getColor(IFormColors.H_GRADIENT_END);
Color gbg = factory.getColors().getColor(IFormColors.H_GRADIENT_START);
@@ -158,6 +229,7 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
label.setText(text);
} else {
label.setText(BLANK);
componentName = null;
}
label.setImage(image);
redraw();
@@ -169,6 +241,14 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
redraw();
}
public void setComponentName(String componentName) {
this.componentName = componentName;
}
public void setIsComponentTitle(boolean isComponentTitle) {
this.isComponentTitle = isComponentTitle;
}
@Override
public TalendTabbedPropertyColorHelper getColorHelper() {
return this.colorHelper;

View File

@@ -16,6 +16,7 @@ import java.text.MessageFormat;
import org.apache.commons.lang.StringUtils;
import org.eclipse.jface.fieldassist.IContentProposal;
import org.talend.commons.utils.PasswordEncryptUtil;
import org.talend.core.language.ECodeLanguage;
import org.talend.core.model.process.IContextParameter;
import org.talend.core.model.utils.ContextParameterUtils;
@@ -76,11 +77,15 @@ public class ContextParameterProposal implements IContentProposal {
} else {
desc = Messages.getString("ContextParameterProposal.NoCommentAvaiable"); //$NON-NLS-1$
}
String type = contextParameter.getType();
String value = contextParameter.getValue();
if (PasswordEncryptUtil.isPasswordType(type)) {
value = "******"; //$NON-NLS-1$
}
// TDI-30683:fix the NPE pb and another description match pb(need move "\n" from message.propreties to code).
MessageFormat format = new MessageFormat(getDescriptionMessagePattern());
if (contextParameter.getContext() != null) {
Object[] replaceArgs = new Object[] { desc, contextParameter.getContext().getName(), contextParameter.getType(),
contextParameter.getValue() };
Object[] replaceArgs = new Object[] { desc, contextParameter.getContext().getName(), type, value };
return format.format(replaceArgs);
}
return desc;

View File

@@ -152,12 +152,12 @@ RepositoryUpdateManager.Title=\u5909\u66F4
RepositoryUpdateManager.Check=\u30C1\u30A7\u30C3\u30AF\u4E2D...
RepositoryUpdateManager.Messages=\u3053\u306E\u30A2\u30A4\u30C6\u30E0\u3067\u884C\u308F\u308C\u308B\u5909\u66F4\u306B\u5F71\u97FF\u3055\u308C\u308B\u30B8\u30E7\u30D6\u3092\u3059\u3079\u3066\u691C\u51FA\u3057\u307E\u3059\u304B? \u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.NoModificationTitle=\u5909\u66F4\u4E0D\u8981
RepositoryUpdateManager.NoModificationMessages=\u66F4\u65B0\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NoModificationMessages=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundMessages=\u95A2\u4FC2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundTitle=\u898B\u3064\u304B\u308A\u307E\u305B\u3093
RepositoryUpdateManager.RenameContextMessages=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u66F4\u65B0\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextMessages=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextTitle=\u540D\u524D\u5909\u66F4\u306E\u8CEA\u554F
RepositoryUpdateManager.ItemsToUpdate=\u66F4\u65B0\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RepositoryUpdateManager.ItemsToUpdate=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RuleOperationChoiceDialog.editRules=\u30EB\u30FC\u30EB\u3092\u7DE8\u96C6
RuleOperationChoiceDialog.rule=\u30EB\u30FC\u30EB:
RuleOperationChoiceDialog.selectRulesFile=\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30EB\u30FC\u30EB\u3092\u9078\u629E
@@ -192,8 +192,8 @@ EUpdateItemType.Components=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8
EUpdateItemType.Name=\u540D\u524D
EUpdateItemType.JobVersion=\u30B8\u30E7\u30D6\u30D0\u30FC\u30B8\u30E7\u30F3
EUpdateResult.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30E2\u30FC\u30C9\u306B\u5909\u66F4
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u66F4\u65B0
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u66F4\u65B0
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Reload=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30EA\u30ED\u30FC\u30C9
EUpdateResult.Rename=\u540D\u524D\u3092\u5909\u66F4
EUpdateResult.Add=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u8FFD\u52A0

View File

@@ -87,7 +87,9 @@ public interface ICoreTisService extends IService {
boolean hasNewPatchInPatchesFolder();
boolean isDefaultLicenseAndProjectType();
void syncProjectUpdateSettingsFromServer(IProgressMonitor monitor, Project proj) throws Exception;
void refreshPatchesFolderCache();
static ICoreTisService get() {

View File

@@ -89,6 +89,7 @@ import org.talend.core.model.process.JobInfo;
import org.talend.core.model.process.ProcessUtils;
import org.talend.core.model.process.ReplaceNodesInProcessProvider;
import org.talend.core.model.properties.Item;
import org.talend.core.model.properties.JobletProcessItem;
import org.talend.core.model.properties.ProcessItem;
import org.talend.core.model.properties.Property;
import org.talend.core.model.relationship.RelationshipItemBuilder;
@@ -693,6 +694,8 @@ public class ProcessorUtilities {
processor.setArguments(argumentsMap);
handelDQComponents(selectedProcessItem, currentProcess);
// generate the code of the father after the childrens
// so the code won't have any error during the check, and it will help to check
// if the generation is really needed.
@@ -708,7 +711,7 @@ public class ProcessorUtilities {
*/
generateBuildInfo(jobInfo, progressMonitor, isMainJob, currentProcess, currentJobName, processor, option);
handelDQComponents(selectedProcessItem, currentProcess);
checkNeedExportItemsForDQ(currentProcess);
copyDependenciedResources(currentProcess);
@@ -1238,6 +1241,8 @@ public class ProcessorUtilities {
processor.setArguments(argumentsMap);
handelDQComponents(selectedProcessItem, currentProcess);
generateContextInfo(jobInfo, selectedContextName, statistics, trace, needContext, progressMonitor,
currentProcess, currentJobName, processor, isMainJob, codeGenerationNeeded);
@@ -1253,7 +1258,7 @@ public class ProcessorUtilities {
generateBuildInfo(jobInfo, progressMonitor, isMainJob, currentProcess, currentJobName, processor, option);
TimeMeasure.step(idTimer, "generateBuildInfo");
handelDQComponents(selectedProcessItem, currentProcess);
checkNeedExportItemsForDQ(currentProcess);
copyDependenciedResources(currentProcess);
@@ -1354,11 +1359,34 @@ public class ProcessorUtilities {
}
}
/**
* if the job includes tdqReportRun, set 'needExportItemsForDQ'to true so as the item folder can be exported
*
* @param processItem
* @param currentProcess
*/
private static void checkNeedExportItemsForDQ(IProcess currentProcess) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(ITDQItemService.class)) {
ITDQItemService tdqItemService =
GlobalServiceRegister.getDefault().getService(ITDQItemService.class);
// TDQ-19637 if it includes 'tDqReportRun',must export item folder
if (tdqItemService != null && !needExportItemsForDQ) {
for (INode node : currentProcess.getGeneratingNodes()) {
String componentName = node.getComponent().getName();
if ("tDqReportRun".equals(componentName)) {
needExportItemsForDQ = true;
break;
}
}
}
}
}
/**
*
* Specail operation for DQ components:
* - For tdqReportRun, set 'needExportItemsForDQ'to true so as the item folder can be exported
* - For tRuleSurvivorship, copy the current item's drools file from 'workspace/metadata/survivorship' to '.Java/src/resources'
* - For tRuleSurvivorship, copy the current item's drools file from 'workspace/metadata/survivorship' to
* '.Java/src/resources'
*
* @param processItem
*/
@@ -1370,16 +1398,6 @@ public class ProcessorUtilities {
return;
}
try {
// TDQ-19637 if it includes 'tDqReportRun',must export item folder
if (!needExportItemsForDQ) {
for (INode node : currentProcess.getGeneratingNodes()) {
String componentName = node.getComponent().getName();
if ("tDqReportRun".equals(componentName)) {
needExportItemsForDQ = true;
break;
}
}
}
/* 1.TDQ-12474 copy the "metadata/survivorship/rulePackage" to ".Java/src/main/resources/". so that it will be
used by maven command 'include-survivorship-rules' to export.
2.TDQ-14308 current drools file in 'src/resourcesmetadata/survivorship/' should be included to job jar.
@@ -2506,6 +2524,13 @@ public class ProcessorUtilities {
ExceptionHandler.process(e);
}
}
// TUP-35219 avoid resource unload
if (property != null && property.getItem() != null
&& property.getItem() instanceof JobletProcessItem) {
((JobletProcessItem) property.getItem()).getJobletProcess();
}
JobInfo jobInfo = new JobInfo(property, jobletProcess.getDefaultContext());
if (!jobInfos.contains(jobInfo)) {
jobInfos.add(jobInfo);

View File

@@ -89,7 +89,7 @@ _UI_Column_type=\u30AB\u30E9\u30E0
_UI_Procedure_type=\u30D7\u30ED\u30B7\u30FC\u30B8\u30E3\u30FC
_UI_Trigger_type=\u30C8\u30EA\u30AC\u30FC
_UI_SQLIndex_type=SQL\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9
_UI_UniqueConstraint_type=\u4E00\u610F\u306E\u5236\u7D04
_UI_UniqueConstraint_type=\u4E00\u610F\u5236\u7D04
_UI_SQLIndexColumn_type=SQL\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30AB\u30E9\u30E0
_UI_PrimaryKey_type=\u30D7\u30E9\u30A4\u30DE\u30EA\u30AD\u30FC
_UI_Row_type=\u884C
@@ -566,10 +566,10 @@ _UI_Trigger_usedColumnSet_feature=\u4F7F\u7528\u3055\u308C\u308B\u30AB\u30E9\u30
_UI_Trigger_table_feature=\u30C6\u30FC\u30D6\u30EB
_UI_SQLIndex_filterCondition_feature=\u30D5\u30A3\u30EB\u30BF\u30FC\u6761\u4EF6
_UI_SQLIndex_isNullable_feature=NULL\u53EF\u80FD
_UI_SQLIndex_autoUpdate_feature=\u81EA\u52D5\u66F4\u65B0
_UI_SQLIndex_autoUpdate_feature=\u81EA\u52D5\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
_UI_UniqueConstraint_deferrability_feature=\u9045\u5EF6\u53EF\u80FD\u6027
_UI_ForeignKey_deleteRule_feature=\u524A\u9664\u30EB\u30FC\u30EB
_UI_ForeignKey_updateRule_feature=\u66F4\u65B0\u30EB\u30FC\u30EB
_UI_ForeignKey_updateRule_feature=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30EB\u30FC\u30EB
_UI_ForeignKey_deferrability_feature=\u9045\u5EF6\u53EF\u80FD\u6027
_UI_CheckConstraint_deferrability_feature=\u9045\u5EF6\u53EF\u80FD\u6027
_UI_Field_length_feature=\u9577\u3055
@@ -845,7 +845,7 @@ _UI_Domain_default_feature=\u30C7\u30D5\u30A9\u30EB\u30C8
_UI_Domain_validationRule_feature=\u691C\u8A3C\u30EB\u30FC\u30EB
_UI_Domain_baseType_feature=\u30D9\u30FC\u30B9\u30BF\u30A4\u30D7
_UI_RelationshipEnd_delete_feature=\u524A\u9664
_UI_RelationshipEnd_update_feature=\u66F4\u65B0
_UI_RelationshipEnd_update_feature=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
_UI_RelationshipEnd_insert_feature=\u633F\u5165
_UI_RelationshipEnd_foreignKey_feature=\u5916\u90E8\u30AD\u30FC
_UI_COBOLFD_organization_feature=\u7D44\u7E54
@@ -1252,7 +1252,7 @@ _UI_DeferrabilityType_initiallyImmediate_literal=initiallyImmediate
_UI_DeferrabilityType_notDeferrable_literal=notDeferrable
_UI_EventManipulationType_insert_literal=\u633F\u5165
_UI_EventManipulationType_delete_literal=\u524A\u9664
_UI_EventManipulationType_update_literal=\u66F4\u65B0
_UI_EventManipulationType_update_literal=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
_UI_NullableType_columnNoNulls_literal=columnNoNulls
_UI_NullableType_columnNullable_literal=columnNullable
_UI_NullableType_columnNullableUnknown_literal=columnNullableUnknown

View File

@@ -10,9 +10,10 @@
<artifactId>org.talend.designer.maven.repo.tck</artifactId>
<packaging>eclipse-plugin</packaging>
<properties>
<jackson.version>2.12.1</jackson.version>
<jackson.version>2.13.2</jackson.version>
<jackson-databind.version>2.13.2.2</jackson-databind.version>
<slf4j.version>1.7.32</slf4j.version>
<tycho.buildtimestamp.format>${timestamp}</tycho.buildtimestamp.format>
<tycho.buildtimestamp.format>${timestamp}</tycho.buildtimestamp.format>
</properties>
<repositories>
<repository>
@@ -62,7 +63,7 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
<version>${jackson-databind.version}</version>
<scope>compile</scope>
</dependency>
<dependency>

View File

@@ -13,18 +13,17 @@
<tcomp.version>${component-runtime.version}</tcomp.version>
<cxf.version>3.5.1</cxf.version>
<geronimo.version>1.0.2</geronimo.version>
<jackson.version>2.12.1</jackson.version>
<jcache.version>1.0.5</jcache.version>
<jcache_spec.version>1.0-alpha-1</jcache_spec.version>
<johnzon.version>1.2.16</johnzon.version>
<meecrowave.version>1.2.13</meecrowave.version>
<microprofile.version>1.2.1</microprofile.version>
<owb.version>2.0.26</owb.version>
<slf4j.version>1.7.32</slf4j.version>
<tomcat.version>9.0.59</tomcat.version>
<slf4j.version>1.7.33</slf4j.version>
<tomcat.version>9.0.62</tomcat.version>
<xbean.version>4.20</xbean.version>
<reload4j.version>1.2.19</reload4j.version>
<log4j2.version>2.17.1</log4j2.version>
<log4j2.version>2.17.2</log4j2.version>
<tycho.buildtimestamp.format>${timestamp}</tycho.buildtimestamp.format>
</properties>
<repositories>

View File

@@ -11,7 +11,7 @@
<packaging>pom</packaging>
<properties>
<tcomp.version>1.43.1</tcomp.version>
<tcomp.version>1.45.2</tcomp.version>
<slf4j.version>1.7.32</slf4j.version>
<reload4j.version>1.2.19</reload4j.version>
</properties>

View File

@@ -6,11 +6,11 @@ FolderMavenSettingPage_CreatingMavenSettingErrorTitle=\u30A8\u30E9\u30FC
FolderMavenSettingPage_CreatingMavenSettingErrorMessage=\u3053\u306E\u30D5\u30A9\u30EB\u30C0\u30FC\u306BMaven\u8A2D\u5B9A\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093:
ProjectPomProjectSettingPage_Titile=\u6CE8: \u30E2\u30B8\u30E5\u30FC\u30EB\u3068\u4F9D\u5B58\u9805\u76EE\u304C\u4FDD\u6301\u3055\u308C\u307E\u3059\u3002
ProjectPomProjectSettingPage_ConfirmTitle=\u78BA\u8A8D
ProjectPomProjectSettingPage_ConfirmMessage=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8POM\u306B\u5909\u66F4\u3092\u9069\u7528\u3057\u3066\u76F4\u3061\u306B\u66F4\u65B0\u3057\u307E\u3059\u3002
ProjectPomProjectSettingPage_ConfirmMessage=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8POM\u306B\u5909\u66F4\u3092\u9069\u7528\u3057\u3066\u76F4\u3061\u306B\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u3002
ProjectPomProjectSettingPage_FilterPomLabel=POM\u306E\u751F\u6210\u306B\u4F7F\u7528\u3059\u308B\u30D5\u30A3\u30EB\u30BF\u30FC:
ProjectPomProjectSettingPage_FilterErrorMessage=\u30D5\u30A3\u30EB\u30BF\u30FC\u304C\u7121\u52B9\u3067\u3059\u3002
ProjectPomProjectSettingPage.syncAllPomsButtonText=\u5B8C\u5168\u306A\u518D\u540C\u671FPOM\u3092\u5F37\u5236
AbstractPersistentProjectSettingPage.syncAllPoms=POM\u3092\u3059\u3079\u3066\u66F4\u65B0\u3057\u307E\u3059\u304B? \n \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3053\u306E\u64CD\u4F5C\u3067\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002
AbstractPersistentProjectSettingPage.syncAllPoms=POM\u3092\u3059\u3079\u3066\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u304B? \n \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3053\u306E\u64CD\u4F5C\u3067\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002
MavenProjectSettingPage.filterExampleMessage=\u30D5\u30A3\u30EB\u30BF\u30FC\u306E\u4F8B:\nlabel=myJob \t\t\t\t=> "myJob"\u3068\u3044\u3046\u540D\u524D\u306E\u30B8\u30E7\u30D6\u3060\u3051\u3092\u751F\u6210\n!(label=myJob) \t\t\t\t=> "myJob"\u3068\u3044\u3046\u540D\u524D\u4EE5\u5916\u306E\u30B8\u30E7\u30D6\u3092\u3059\u3079\u3066\u751F\u6210\n(path=folder1/folder2) \t\t\t=> "folder1/folder2"\u3068\u3044\u3046\u30D5\u30A3\u30EB\u30C0\u30FC\u306B\u3042\u308B\u30B8\u30E7\u30D6\u3092\u3059\u3079\u3066\u751F\u6210\n(path=folder1/folder2)or(label=myJob)\t=> "folder1/folder2"\u3068\u3044\u3046\u30D5\u30A9\u30EB\u30C0\u30FC\u306B\u3042\u308B\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u3001\u307E\u305F\u306F"myJob"\u3068\u3044\u3046\u540D\u524D\u306E\u30B8\u30E7\u30D6\u3092\u751F\u6210\n(label=myJob)and(version=0.2)\t\t=> \u30D0\u30FC\u30B8\u30E7\u30F30.2\u3067"myJob"\u3068\u3044\u3046\u540D\u524D\u306E\u30B8\u30E7\u30D6\u306E\u307F\u751F\u6210\n!((label=myJob)and(version=0.1))\t\t=> \u30D0\u30FC\u30B8\u30E7\u30F30.1\u3067"myJob"\u3068\u3044\u3046\u540D\u524D\u4EE5\u5916\u306E\u30B8\u30E7\u30D6\u3092\u3059\u3079\u3066\u751F\u6210
MavenProjectSettingPage.refModuleText=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3067\u53C2\u7167\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u8A2D\u5B9A
MavenProjectSettingPage.excludeDeletedItems=\u524A\u9664\u3055\u308C\u305F\u30A2\u30A4\u30C6\u30E0\u3092\u9664\u5916

View File

@@ -36,3 +36,4 @@ Export-Package: org.talend.designer.maven,
org.talend.designer.maven.tools.creator,
org.talend.designer.maven.tools.extension,
org.talend.designer.maven.utils
Import-Package: org.slf4j

View File

@@ -70,6 +70,11 @@
<artifactId>maven-core</artifactId>
<version>3.8.3</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.0-jre</version>
</dependency>
</dependencies>
</plugin>
<plugin>
@@ -97,6 +102,11 @@
<artifactId>maven-core</artifactId>
<version>3.8.3</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.0-jre</version>
</dependency>
</dependencies>
</plugin>
<plugin>
@@ -139,6 +149,11 @@
<artifactId>maven-core</artifactId>
<version>3.8.3</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.0-jre</version>
</dependency>
</dependencies>
<configuration>
<archive>
@@ -191,6 +206,11 @@
<artifactId>maven-core</artifactId>
<version>3.8.3</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.0-jre</version>
</dependency>
</dependencies>
</plugin>
<plugin>

View File

@@ -52,7 +52,6 @@ import org.eclipse.m2e.core.internal.IMavenConstants;
import org.eclipse.m2e.core.project.IMavenProjectFacade;
import org.eclipse.m2e.core.project.IMavenProjectRegistry;
import org.eclipse.m2e.core.project.ResolverConfiguration;
import org.eclipse.m2e.internal.launch.MavenLaunchDelegate;
import org.eclipse.m2e.internal.launch.MavenLaunchUtils;
import org.eclipse.osgi.util.NLS;
import org.talend.commons.CommonsPlugin;
@@ -292,7 +291,7 @@ public abstract class MavenCommandLauncher {
protected File getLicenseFile() {
if (GlobalServiceRegister.getDefault().isServiceRegistered(ICoreTisService.class)) {
ICoreTisService coreTisService = (ICoreTisService) GlobalServiceRegister.getDefault()
ICoreTisService coreTisService = GlobalServiceRegister.getDefault()
.getService(ICoreTisService.class);
File licenseFile = coreTisService.getLicenseFile();
if (licenseFile.exists() && !coreTisService.isLicenseExpired()) {
@@ -304,7 +303,7 @@ public abstract class MavenCommandLauncher {
private String getSessionId() {
if (GlobalServiceRegister.getDefault().isServiceRegistered(ICoreTisService.class)) {
ICoreTisService coreTisService = (ICoreTisService) GlobalServiceRegister.getDefault()
ICoreTisService coreTisService = GlobalServiceRegister.getDefault()
.getService(ICoreTisService.class);
return coreTisService.generateSignerSessionId();
}
@@ -411,7 +410,7 @@ public abstract class MavenCommandLauncher {
}
monitor.beginTask("", 1); //$NON-NLS-1$
try {
MavenLaunchDelegate mvld = new TalendMavenLaunchDelegate();
TalendMavenLaunchDelegate mvld = new TalendMavenLaunchDelegate();
ILaunch launch = new Launch(configuration, mode, null);
ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
launch.setAttribute(DebugPlugin.ATTR_LAUNCH_TIMESTAMP, Long.toString(System.currentTimeMillis()));

View File

@@ -12,14 +12,28 @@
// ============================================================================
package org.talend.designer.maven.launch;
import static org.eclipse.m2e.internal.launch.MavenLaunchUtils.quote;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.util.Collections;
import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Status;
import org.eclipse.debug.core.DebugEvent;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.IDebugEventSetListener;
@@ -30,34 +44,95 @@ import org.eclipse.debug.core.model.IProcess;
import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
import org.eclipse.jdt.launching.IVMInstall;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.jdt.launching.JavaLaunchDelegate;
import org.eclipse.jdt.launching.VMRunnerConfiguration;
import org.eclipse.m2e.internal.launch.MavenLaunchDelegate;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.m2e.actions.MavenLaunchConstants;
import org.eclipse.m2e.core.MavenPlugin;
import org.eclipse.m2e.core.embedder.IMavenConfiguration;
import org.eclipse.m2e.core.internal.IMavenConstants;
import org.eclipse.m2e.core.internal.launch.AbstractMavenRuntime;
import org.eclipse.m2e.internal.launch.LaunchingUtils;
import org.eclipse.m2e.internal.launch.MavenLaunchExtensionsSupport;
import org.eclipse.m2e.internal.launch.MavenLaunchUtils;
import org.eclipse.m2e.internal.launch.MavenRuntimeLaunchSupport;
import org.eclipse.m2e.internal.launch.MavenRuntimeLaunchSupport.VMArguments;
import org.eclipse.osgi.util.NLS;
import org.talend.commons.CommonsPlugin;
import org.talend.core.prefs.SecurityPreferenceConstants;
import org.talend.core.runtime.CoreRuntimePlugin;
import org.talend.utils.security.StudioEncryption;
/**
* created by ycbai on 2015年5月27日 Detailled comment
*
* Copied from MavenLaunchDelegate
*
*/
@SuppressWarnings("restriction")
public class TalendMavenLaunchDelegate extends MavenLaunchDelegate {
public class TalendMavenLaunchDelegate extends JavaLaunchDelegate implements MavenLaunchConstants {
static final Logger log = Logger.getLogger(TalendMavenLaunchDelegate.class);
private static final String LAUNCHER_TYPE = "org.codehaus.classworlds.Launcher"; //$NON-NLS-1$
// classworlds 2.0
private static final String LAUNCHER_TYPE3 = "org.codehaus.plexus.classworlds.launcher.Launcher"; //$NON-NLS-1$
private static final VersionRange MAVEN_33PLUS_RUNTIMES;
/*
* FIXME, enable refresh in main thread, so set false for bug TUP-2987.
*/
public static final boolean FLAG_REFRESH_BACKGROUND = false;
@Override
public String getProgramArguments(ILaunchConfiguration configuration) throws CoreException {
String programArguments = super.getProgramArguments(configuration);
String arguments = configuration.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, ""); //$NON-NLS-1$
if (StringUtils.isNotEmpty(arguments)) {
programArguments += " " + arguments; //$NON-NLS-1$
}
private final static String[] hidePasswordKeys = { SecurityPreferenceConstants.SIGNER_KEYSTORE_PASSWORD,
SecurityPreferenceConstants.SIGNER_KEY_PASSWORD };
return programArguments;
static {
VersionRange mvn33PlusRange;
try {
mvn33PlusRange = VersionRange.createFromVersionSpec("[3.3,)");
} catch (InvalidVersionSpecificationException O_o) {
mvn33PlusRange = null;
}
MAVEN_33PLUS_RUNTIMES = mvn33PlusRange;
}
private ILaunch launch;
private IProgressMonitor monitor;
private String programArguments;
private MavenRuntimeLaunchSupport launchSupport;
private MavenLaunchExtensionsSupport extensionsSupport;
public TalendMavenLaunchDelegate() {
allowAdvancedSourcelookup();
}
public void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor)
throws CoreException {
this.launch = launch;
this.monitor = monitor;
this.programArguments = null;
try {
this.launchSupport = MavenRuntimeLaunchSupport.create(configuration, launch, monitor);
this.extensionsSupport = MavenLaunchExtensionsSupport.create(configuration, launch);
log.info("" + getWorkingDirectory(configuration)); //$NON-NLS-1$
log.info(" mvn" + getProgramArguments(configuration, true)); //$NON-NLS-1$
this.programArguments = null;
extensionsSupport.configureSourceLookup(configuration, launch, monitor);
super.launch(configuration, mode, launch, monitor);
} finally {
this.launch = null;
this.monitor = null;
this.launchSupport = null;
this.extensionsSupport = null;
}
}
public IVMRunner getVMRunner(final ILaunchConfiguration configuration, String mode) throws CoreException {
@@ -105,6 +180,255 @@ public class TalendMavenLaunchDelegate extends MavenLaunchDelegate {
};
}
}
public String getMainTypeName(ILaunchConfiguration configuration) {
return launchSupport.getVersion().startsWith("3.") ? LAUNCHER_TYPE3 : LAUNCHER_TYPE; //$NON-NLS-1$
}
public String[] getClasspath(ILaunchConfiguration configuration) {
List<String> cp = launchSupport.getBootClasspath();
return cp.toArray(new String[cp.size()]);
}
public String[][] getClasspathAndModulepath(ILaunchConfiguration configuration) {
String[][] paths = new String[2][];
paths[0] = getClasspath(configuration);
return paths;
}
@SuppressWarnings("restriction")
public String getVMArguments(ILaunchConfiguration configuration) throws CoreException {
VMArguments arguments = launchSupport.getVMArguments();
AbstractMavenRuntime runtime = MavenLaunchUtils.getMavenRuntime(configuration);
appendRuntimeSpecificArguments(runtime.getVersion(), arguments, configuration);
extensionsSupport.appendVMArguments(arguments, configuration, launch, monitor);
// user configured entries
arguments.append(super.getVMArguments(configuration));
return arguments.toString();
}
protected String getGoals(ILaunchConfiguration configuration) throws CoreException {
return configuration.getAttribute(MavenLaunchConstants.ATTR_GOALS, ""); //$NON-NLS-1$
}
public boolean buildForLaunch(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor) {
return false;
}
/**
* Construct string with properties to pass to JVM as system properties
*/
private void getProperties(StringBuilder sb, ILaunchConfiguration configuration) throws CoreException {
try {
List<String> properties = configuration.getAttribute(ATTR_PROPERTIES, Collections.emptyList());
for (String property : properties) {
int n = property.indexOf('=');
String name = property;
String value = null;
if (n > -1) {
name = property.substring(0, n);
if (n > 1) {
value = LaunchingUtils.substituteVar(property.substring(n + 1));
}
}
sb.append(" -D").append(name); //$NON-NLS-1$
if (value != null) {
sb.append('=').append(quote(value));
}
}
} catch (CoreException e) {
String msg = "Exception while getting configuration attribute " + ATTR_PROPERTIES;
log.error(msg, e);
throw e;
}
try {
String profiles = configuration.getAttribute(ATTR_PROFILES, (String) null);
if (profiles != null && profiles.trim().length() > 0) {
sb.append(" -P").append(profiles.replaceAll("\\s+", ",")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
}
} catch (CoreException ex) {
String msg = "Exception while getting configuration attribute " + ATTR_PROFILES;
log.error(msg, ex);
throw ex;
}
}
/**
* Construct string with preferences to pass to JVM as system properties
*/
private void getPreferences(StringBuilder sb, ILaunchConfiguration configuration, String goals) throws CoreException {
IMavenConfiguration mavenConfiguration = MavenPlugin.getMavenConfiguration();
sb.append(" -B"); //$NON-NLS-1$
if (configuration.getAttribute(MavenLaunchConstants.ATTR_DEBUG_OUTPUT, mavenConfiguration.isDebugOutput())) {
sb.append(" -X").append(" -e"); //$NON-NLS-1$ //$NON-NLS-2$
}
// sb.append(" -D").append(MavenPreferenceConstants.P_DEBUG_OUTPUT).append("=").append(debugOutput);
if (configuration.getAttribute(MavenLaunchConstants.ATTR_OFFLINE, mavenConfiguration.isOffline())) {
sb.append(" -o"); //$NON-NLS-1$
}
// sb.append(" -D").append(MavenPreferenceConstants.P_OFFLINE).append("=").append(offline);
if (configuration.getAttribute(MavenLaunchConstants.ATTR_UPDATE_SNAPSHOTS, false)) {
sb.append(" -U"); //$NON-NLS-1$
}
if (configuration.getAttribute(MavenLaunchConstants.ATTR_NON_RECURSIVE, false)) {
sb.append(" -N"); //$NON-NLS-1$
}
if (configuration.getAttribute(MavenLaunchConstants.ATTR_SKIP_TESTS, false)) {
sb.append(" -Dmaven.test.skip=true -DskipTests"); //$NON-NLS-1$
}
int threads = configuration.getAttribute(MavenLaunchConstants.ATTR_THREADS, 1);
if (threads > 1) {
sb.append(" --threads ").append(threads);
}
if (!goals.contains("-gs ")) { //$NON-NLS-1$
String globalSettings = launchSupport.getSettings();
if (globalSettings != null && !globalSettings.trim().isEmpty() && !new File(globalSettings.trim()).exists()) {
globalSettings = null;
}
if (globalSettings != null && !globalSettings.trim().isEmpty()) {
sb.append(" -gs ").append(quote(globalSettings)); //$NON-NLS-1$
}
}
String settings = configuration.getAttribute(MavenLaunchConstants.ATTR_USER_SETTINGS, (String) null);
settings = LaunchingUtils.substituteVar(settings);
if (settings == null || settings.trim().isEmpty()) {
settings = mavenConfiguration.getUserSettingsFile();
if (settings != null && !settings.trim().isEmpty() && !new File(settings.trim()).exists()) {
settings = null;
}
}
if (settings != null && !settings.trim().isEmpty()) {
sb.append(" -s ").append(quote(settings)); //$NON-NLS-1$
}
// boolean b = preferenceStore.getBoolean(MavenPreferenceConstants.P_CHECK_LATEST_PLUGIN_VERSION);
// sb.append(" -D").append(MavenPreferenceConstants.P_CHECK_LATEST_PLUGIN_VERSION).append("=").append(b);
// b = preferenceStore.getBoolean(MavenPreferenceConstants.P_UPDATE_SNAPSHOTS);
// sb.append(" -D").append(MavenPreferenceConstants.P_UPDATE_SNAPSHOTS).append("=").append(b);
// String s = preferenceStore.getString(MavenPreferenceConstants.P_GLOBAL_CHECKSUM_POLICY);
// if(s != null && s.trim().length() > 0) {
// sb.append(" -D").append(MavenPreferenceConstants.P_GLOBAL_CHECKSUM_POLICY).append("=").append(s);
// }
}
/**
* Not API. Made public for testing purposes.
*/
public void appendRuntimeSpecificArguments(String runtimeVersion, VMArguments arguments, ILaunchConfiguration configuration)
throws CoreException {
if (applies(runtimeVersion)) {
getArgsFromMvnDir(arguments, configuration);
}
}
@SuppressWarnings("restriction")
private void getArgsFromMvnDir(VMArguments arguments, ILaunchConfiguration configuration) throws CoreException {
String pomDir = LaunchingUtils.substituteVar(configuration.getAttribute(MavenLaunchConstants.ATTR_POM_DIR, ""));
if (pomDir.isEmpty()) {
return;
}
File baseDir = findMavenProjectBasedir(new File(pomDir));
File mvnDir = new File(baseDir, ".mvn");
File jvmConfig = new File(mvnDir, "jvm.config");
if (jvmConfig.isFile()) {
try {
for (String line : Files.readAllLines(jvmConfig.toPath(), StandardCharsets.UTF_8)) {
arguments.append(line);
}
} catch (IOException ex) {
IStatus error = new Status(IStatus.ERROR, IMavenConstants.PLUGIN_ID,
NLS.bind(org.eclipse.m2e.internal.launch.Messages.MavenLaunchDelegate_error_cannot_read_jvmConfig,
jvmConfig.getAbsolutePath()),
ex);
throw new CoreException(error);
}
}
arguments.appendProperty("maven.multiModuleProjectDirectory", MavenLaunchUtils.quote(baseDir.getAbsolutePath()));
}
// This will likely move to core when we need it
private File findMavenProjectBasedir(File dir) {
File folder = dir;
// loop upwards but stop if root
while (folder != null && folder.getParentFile() != null) {
// see if /.mvn exists
if (new File(folder, ".mvn").isDirectory()) {
return folder;
}
folder = folder.getParentFile();
}
return dir;
}
private boolean applies(String runtimeVersion) {
return MAVEN_33PLUS_RUNTIMES.containsVersion(new DefaultArtifactVersion(runtimeVersion));
}
@Override
public String getProgramArguments(ILaunchConfiguration configuration) throws CoreException {
return getProgramArguments(configuration, false);
}
public String getProgramArguments(ILaunchConfiguration configuration, boolean isHidePassword) throws CoreException {
if (programArguments == null) {
String goals = getGoals(configuration);
StringBuilder sb = new StringBuilder();
getProperties(sb, configuration);
getPreferences(sb, configuration, goals);
sb.append(" ").append(goals);
extensionsSupport.appendProgramArguments(sb, configuration, launch, monitor);
programArguments = sb.toString();
String arguments = getAttrProgramArguments(configuration, isHidePassword);
if (StringUtils.isNotEmpty(arguments)) {
programArguments += " " + arguments; //$NON-NLS-1$
}
}
return programArguments;
}
public String getAttrProgramArguments(ILaunchConfiguration configuration, boolean isHidePassword) throws CoreException {
String arguments = configuration.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, ""); //$NON-NLS-1$
if (isHidePassword && StringUtils.isNotBlank(arguments)) {
IPreferenceStore preStore = CoreRuntimePlugin.getInstance().getCoreService().getPreferenceStore();
for (String key : hidePasswordKeys) {
if (arguments.contains(key)) {
String value = preStore.getString(key);
if (StringUtils.isNotBlank(value)) {
value = StudioEncryption.getStudioEncryption(StudioEncryption.EncryptionKeyName.SYSTEM).decrypt(value);
String oldArgument = "-D" + key + "=" + value;//$NON-NLS-1$//$NON-NLS-2$
String newArgument = "-D" + key + "=******";//$NON-NLS-1$//$NON-NLS-2$
if (arguments.contains(oldArgument)) {
arguments = arguments.replace(oldArgument, newArgument);
}
}
}
}
}
return arguments;
}
}
/**
@@ -140,8 +464,7 @@ class ForegroundResourceRefresher implements IDebugEventSetListener {
}
public void handleDebugEvents(DebugEvent[] events) {
for (int i = 0; i < events.length; i++) {
DebugEvent event = events[i];
for (DebugEvent event : events) {
if (event.getSource() == process && event.getKind() == DebugEvent.TERMINATE) {
DebugPlugin.getDefault().removeDebugEventListener(this);
processResources();

View File

@@ -15,6 +15,9 @@ package org.talend.designer.maven.tools;
import static org.talend.designer.maven.model.TalendJavaProjectConstants.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.BufferedInputStream;
import java.io.InputStream;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -46,6 +49,8 @@ import org.eclipse.jface.dialogs.ProgressMonitorDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.m2e.core.MavenPlugin;
import org.eclipse.swt.widgets.Display;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.exception.PersistenceException;
import org.talend.commons.utils.MojoType;
@@ -98,6 +103,8 @@ import org.talend.repository.ProjectManager;
* DOC zwxue class global comment. Detailled comment
*/
public class AggregatorPomsHelper {
private static final Logger LOGGER = LoggerFactory.getLogger(AggregatorPomsHelper.class);
private String projectTechName;
@@ -204,27 +211,32 @@ public class AggregatorPomsHelper {
}
public void updateCodeProjects(IProgressMonitor monitor, boolean forceBuild, boolean buildIfNoUpdate) {
Project currentProject = ProjectManager.getInstance().getCurrentProject();
try {
for (ERepositoryObjectType codeType : ERepositoryObjectType.getAllTypesOfCodes()) {
ITalendProcessJavaProject codeProject = getCodesProject(codeType);
if (ERepositoryObjectType.ROUTINES == codeType) {
PomUtil.checkExistingLog4j2Dependencies4RoutinePom(projectTechName, codeProject.getProjectPom());
}
if (forceBuild || CodeM2CacheManager.needUpdateCodeProject(currentProject, codeType)) {
updateCodeProjectPom(monitor, codeType, codeProject.getProjectPom());
MavenProjectUtils.updateMavenProject(monitor, codeProject.getProject());
build(codeType, true, monitor);
CodeM2CacheManager.updateCacheStatus(currentProject.getTechnicalLabel(), codeType, true);
} else if (buildIfNoUpdate) {
build(codeType, false, monitor);
}
updateCodeProject(monitor, codeType, forceBuild, buildIfNoUpdate);
}
} catch (Exception e) {
ExceptionHandler.process(e);
}
}
public void updateCodeProject(IProgressMonitor monitor, ERepositoryObjectType codeType, boolean forceBuild,
boolean buildIfNoUpdate) throws Exception {
Project currentProject = ProjectManager.getInstance().getCurrentProject();
ITalendProcessJavaProject codeProject = getCodesProject(codeType);
if (ERepositoryObjectType.ROUTINES == codeType) {
PomUtil.checkExistingLog4j2Dependencies4RoutinePom(projectTechName, codeProject.getProjectPom());
}
if (forceBuild || CodeM2CacheManager.needUpdateCodeProject(currentProject, codeType)) {
updateCodeProjectPom(monitor, codeType, codeProject.getProjectPom());
MavenProjectUtils.updateMavenProject(monitor, codeProject.getProject());
build(codeType, true, monitor);
CodeM2CacheManager.updateCacheStatus(currentProject.getTechnicalLabel(), codeType, true);
} else if (buildIfNoUpdate) {
build(codeType, false, monitor);
}
}
public void updateCodeProjectPom(IProgressMonitor monitor, ERepositoryObjectType type, IFile pomFile)
throws Exception {
if (type != null) {
@@ -440,6 +452,44 @@ public class AggregatorPomsHelper {
}
return jobFolder;
}
public static void updateProjectPomFile(Set<String> visistedProjects, Project prj, Set<String> removedTechLabels) {
if (visistedProjects.contains(prj.getTechnicalLabel())) {
return;
}
visistedProjects.add(prj.getTechnicalLabel());
IFile pomFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(prj.getTechnicalLabel() + "/" + DIR_POMS + "/" + TalendMavenConstants.POM_FILE_NAME));
// read project pom
try (InputStream is = new BufferedInputStream(new FileInputStream(pomFile.getLocation().toFile()))) {
Model projectModel = MavenPlugin.getMavenModelManager().readMavenModel(is);
Set<String> newMods = projectModel.getModules().stream().filter(mod -> {
String techLabel = getTechnicalLabelFromRefModule(mod);
return !removedTechLabels.contains(techLabel);
}).collect(Collectors.toSet());
// remove the ref mods
if (newMods.size() != projectModel.getModules().size()) {
LOGGER.info("project: " + prj.getTechnicalLabel() + " removed number of ref mods: " + (projectModel.getModules().size() - newMods.size()));
projectModel.getModules().clear();
projectModel.getModules().addAll(newMods);
// update the pom file.
PomUtil.savePom(null, projectModel, pomFile);
}
} catch (Exception e) {
LOGGER.error(e.getMessage(), e);
}
List<ProjectReference> prjRefs = prj.getProjectReferenceList();
if (!prjRefs.isEmpty()) {
for (ProjectReference pr : prjRefs) {
updateProjectPomFile(visistedProjects, new Project(pr.getReferencedProject()), removedTechLabels);
}
}
}
public static IFolder getItemPomFolder(Property property, String realVersion) {
return getItemPomFolder(property, realVersion, p -> ItemResourceUtil.getItemRelativePath(p));
@@ -574,6 +624,7 @@ public class AggregatorPomsHelper {
}
public void syncAllPomsWithoutProgress(IProgressMonitor monitor, String pomFilter) throws Exception {
LOGGER.info("syncAllPomsWithoutProgress, pomFilter: " + pomFilter);
IRunProcessService runProcessService = IRunProcessService.get();
if (runProcessService == null) {
return;
@@ -593,7 +644,7 @@ public class AggregatorPomsHelper {
// project pom
monitor.subTask("Synchronize project pom"); //$NON-NLS-1$
Model model = getCodeProjectTemplateModel();
LOGGER.info("syncAllPomsWithoutProgress, isCIMode: " + isCIMode + ", useProfileMode: " + PomIdsHelper.useProfileModule());
if (isCIMode) {
if (PomIdsHelper.useProfileModule()) {
model.getProfiles().addAll(collectRefProjectProfiles(null));
@@ -686,8 +737,22 @@ public class AggregatorPomsHelper {
}
CodesJarResourceCache.getAllCodesJars().stream().filter(CodesJarInfo::isInCurrentMainProject)
.forEach(info -> CodesJarM2CacheManager.updateCodesJarProjectPom(monitor, info));
if (!PomIdsHelper.useProfileModule()) {
// remove ref mods
Set<String> visitedProjectLabels = new HashSet<String>();
Map<String, ReferenceCount> rcs = new HashMap<String, ReferenceCount>();
findReferenceCount(visitedProjectLabels, ProjectManager.getInstance().getCurrentProject(), rcs);
visitedProjectLabels = new HashSet<String>();
Set<String> removedTechLabels = rcs.values().stream().filter(rc -> rc.referenceCount > 1).map(rc -> rc.getTalendProject().getTechnicalLabel()).collect(Collectors.toSet());
if (!removedTechLabels.isEmpty()) {
LOGGER.info("Need to remove duplicated mods: " + removedTechLabels);
updateProjectPomFile(visitedProjectLabels, ProjectManager.getInstance().getCurrentProject(), removedTechLabels);
}
}
}
LOGGER.info("syncAllPomsWithoutProgress, done");
monitor.done();
}
@@ -774,5 +839,74 @@ public class AggregatorPomsHelper {
List<String> otherProfiles = Arrays.asList("docker", "cloud-publisher", "nexus"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
return !otherProfiles.contains(profileId) && StringUtils.startsWithIgnoreCase(profileId, projectTechName + "_");
}
public static String getTechnicalLabelFromRefModule(String refMod) {
String[] modPaths= refMod.split("/");
return modPaths[modPaths.length-2];
}
protected void findReferenceCount(Set<String> visitedProjects, Project projectTree, Map<String, ReferenceCount> rcs) {
if (visitedProjects.contains(projectTree.getTechnicalLabel()) || projectTree == null || projectTree.getProjectReferenceList().isEmpty()) {
return;
}
visitedProjects.add(projectTree.getTechnicalLabel());
for (ProjectReference refPrj : projectTree.getProjectReferenceList()) {
ReferenceCount rc = rcs.get(refPrj.getReferencedProject().getTechnicalLabel());
if (rc == null) {
rc = new ReferenceCount(new Project(refPrj.getReferencedProject()));
rcs.put(refPrj.getReferencedProject().getTechnicalLabel(), rc);
}
if (StringUtils.equals(refPrj.getReferencedProject().getTechnicalLabel(), rc.getTalendProject().getTechnicalLabel())) {
rc.increaseReferenceCount();
}
rc.increaseReferenceLevel();
findReferenceCount(visitedProjects, new Project(refPrj.getReferencedProject()), rcs);
}
}
static class ReferenceCount {
private Project talendProject;
private int referenceCount;
private int referenceLevel;
/**
* @return the referenceLevel
*/
public int getReferenceLevel() {
return referenceLevel;
}
public void increaseReferenceLevel() {
referenceLevel++;
}
/**
* @return the talendProject
*/
public Project getTalendProject() {
return talendProject;
}
/**
* @return the referenceCount
*/
public int getReferenceCount() {
return referenceCount;
}
public void increaseReferenceCount() {
referenceCount++;
}
public ReferenceCount(Project project) {
talendProject = project;
}
}
}

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry exported="true" kind="lib" path="lib/xmlbeans-2.3.0.jar"/>
<classpathentry exported="true" kind="lib" path="lib/xmlbeans-3.1.0.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>

View File

@@ -22,9 +22,6 @@ Export-Package: org.apache.xmlbeans,
org.apache.xmlbeans.impl.jam.provider,
org.apache.xmlbeans.impl.jam.visitor,
org.apache.xmlbeans.impl.jam.xml,
org.apache.xmlbeans.impl.piccolo.io,
org.apache.xmlbeans.impl.piccolo.util,
org.apache.xmlbeans.impl.piccolo.xml,
org.apache.xmlbeans.impl.regex,
org.apache.xmlbeans.impl.richParser,
org.apache.xmlbeans.impl.schema,
@@ -51,7 +48,6 @@ Export-Package: org.apache.xmlbeans,
org.apache.xmlbeans.xml.stream,
org.apache.xmlbeans.xml.stream.events,
org.apache.xmlbeans.xml.stream.utils,
repackage,
schemaorg_apache_xmlbeans.system.sXMLCONFIG,
schemaorg_apache_xmlbeans.system.sXMLLANG,
schemaorg_apache_xmlbeans.system.sXMLSCHEMA,

View File

@@ -1,4 +1,3 @@
xmlschema-core-2.0.1.jar
xmlbeans-2.3.0.jar
xmlbeans-2.6.0.jar
xmlbeans-3.1.0.jar
xercesImpl-2.12.0.jar

View File

@@ -26,16 +26,6 @@
<configuration>
<outputDirectory>${project.basedir}/lib</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.3.0</version>
</artifactItem>
<artifactItem>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
</artifactItem>
<artifactItem>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>

View File

@@ -38,4 +38,5 @@
required="true">
</libraryNeeded>
</extension>
</plugin>

View File

@@ -19,3 +19,4 @@ bin.includes = META-INF/,\
plugin_slk.properties,\
plugin_swtbot.properties,\
plugin_zh_CN.properties,\
lib/jboss-marshalling-2.0.12.Final.jar

View File

@@ -123,7 +123,7 @@ public class ModulesNeededProvider {
private static volatile boolean installModuleForRountine = false;
private static Set<ModuleNeeded> modulesForRountine = new HashSet<>();
private static Set<ModuleNeeded> missingModulesForRountine = new HashSet<>();
private static List<ModuleNeeded> systemModules = null;
@@ -407,6 +407,7 @@ public class ModulesNeededProvider {
/**
* @deprecated
*/
@Deprecated
public static List<ModuleNeeded> getModulesNeededForJobs() {
IProxyRepositoryFactory repositoryFactory = repositoryService.getProxyRepositoryFactory();
List<ModuleNeeded> importNeedsList = new ArrayList<ModuleNeeded>();
@@ -1146,30 +1147,37 @@ public class ModulesNeededProvider {
return mvnPath;
}
private static void checkInstallStatus(Collection<ModuleNeeded> importNeedsList) {
static void checkInstallStatus(Collection<ModuleNeeded> importNeedsList) {
if (!importNeedsList.isEmpty()) {
for (ModuleNeeded mod : importNeedsList) {
if (ELibraryInstallStatus.INSTALLED != mod.getStatus()) {
installModuleForRountine = true;
if (ELibraryInstallStatus.NOT_INSTALLED == mod.getStatus()) {
missingModulesForRountine.add(mod);
}
}
modulesForRountine.addAll(importNeedsList);
}
}
public static boolean installModuleForRoutineOrBeans() {
if (!installModuleForRountine) {
for (ModuleNeeded mod : missingModulesForRountine) {
if (ELibraryInstallStatus.NOT_INSTALLED != mod.getStatus()) {
installModuleForRountine = true;
break;
}
}
}
return installModuleForRountine;
}
public static void setInstallModuleForRoutineOrBeans() {
boolean allSet = true;
for (ModuleNeeded mod : modulesForRountine) {
if (ELibraryInstallStatus.INSTALLED != mod.getStatus()) {
allSet = false;
installModuleForRountine = false;
Iterator<ModuleNeeded> iterator = missingModulesForRountine.iterator();
while (iterator.hasNext()) {
ModuleNeeded mod = iterator.next();
if (ELibraryInstallStatus.NOT_INSTALLED != mod.getStatus()) {
iterator.remove();
}
}
if (allSet) {
installModuleForRountine = false;
}
}
}

View File

@@ -67,6 +67,7 @@ import org.talend.core.model.general.ILibrariesService.IChangedLibrariesListener
import org.talend.core.model.general.ModuleNeeded;
import org.talend.core.model.general.ModuleNeeded.ELibraryInstallStatus;
import org.talend.core.model.general.ModuleStatusProvider;
import org.talend.core.model.general.RetrieveResult;
import org.talend.core.model.repository.ERepositoryObjectType;
import org.talend.core.nexus.ArtifactRepositoryBean;
import org.talend.core.nexus.NexusConstants;
@@ -376,6 +377,10 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
.process(new Exception(getClass().getSimpleName() + " resolve " + module.getModuleName() + " failed !"));
}
try {
// try maven uri first
if (jarFile == null) {
jarFile = getJarFile(module.getMavenUri());
}
// try the jar name if can't get jar with uri.
if (jarFile == null) {
jarFile = getJarFile(jarNeeded);
@@ -387,7 +392,10 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
ILibraryManagerUIService libUiService = GlobalServiceRegister.getDefault()
.getService(ILibraryManagerUIService.class);
libUiService.installModules(new String[] { jarNeeded });
// libUiService.installModules(new String[] { jarNeeded });
List<ModuleNeeded> moduleList = new ArrayList<ModuleNeeded>();
moduleList.add(module);
libUiService.installModules(moduleList);
}
jarFile = retrieveJarFromLocal(module);
if (jarFile == null) {
@@ -717,8 +725,15 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
@Override
public boolean retrieve(ERepositoryObjectType codeType, Set<ModuleNeeded> modulesNeeded, String pathToStore,
boolean showDialog, IProgressMonitor... monitorWrap) {
return retrieveModules(codeType, modulesNeeded, pathToStore, showDialog, monitorWrap).isAllResolved();
}
@Override
public RetrieveResult retrieveModules(ERepositoryObjectType codeType, Set<ModuleNeeded> modulesNeeded, String pathToStore,
boolean showDialog, IProgressMonitor... monitorWrap) {
RetrieveResult result = new RetrieveResult();
if (modulesNeeded == null || modulesNeeded.size() == 0) {
return false;
return result;
}
// install local platform jars.
@@ -745,8 +760,10 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
if (!retrieve(jar, pathToStore, false, false)) {
jarNotFound.add(jar);
allIsOK = false;
result.getUnresolvedModules().add(jar);
} else {
needResetModulesNeeded = true;
result.getResovledModules().add(jar);
}
}
if (needResetModulesNeeded) {
@@ -763,8 +780,8 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
}
}
}
return allIsOK;
result.setAllResolved(allIsOK);
return result;
}
@Override
@@ -1053,6 +1070,9 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
if (localMavenUri == null) {
localMavenUri = mvnUriStatusKey.replace("mvn:", "mvn:" + MavenConstants.LOCAL_RESOLUTION_URL + "!"); //$NON-NLS-1$ //$NON-NLS-2$
}
if (!isResolveAllowed(localMavenUri)) {
return null;
}
try {
File resolvedJar = TalendMavenResolver.resolve(localMavenUri);
if (resolvedJar != null) {

View File

@@ -548,3 +548,6 @@ MetadataTalendTypeEditor.confirmTitle=Warning
MetadataTalendTypeEditor.confirmMessage=Are you sure to replace current with default system settings?
PromptDialog.title=Run Context {0} with parameters:
PromptDialog.stringTip=The input text must be surrounded with single quote.
PromptDialog.choose.title=Choose context
PromptDialog.promptGroup.name=Prompt variables
PromptDialog.context.environments.name=Context environments

View File

@@ -548,3 +548,6 @@ MetadataTalendTypeEditor.confirmTitle=Avertissement
MetadataTalendTypeEditor.confirmMessage=Voulez-vous remplacer les param\u00E8tres actuels par ceux par d\u00E9faut du syst\u00E8me ?
PromptDialog.title=Ex\u00E9cuter le contexte {0} avec les param\u00E8tres\u00A0:
PromptDialog.stringTip=Le texte d'entr\u00E9e doit \u00EAtre entour\u00E9 par des guillemets.
PromptDialog.choose.title=Choisissez un contexte
PromptDialog.promptGroup.name=Variables \u00E0 compl\u00E9ter
PromptDialog.context.environments.name=Environnement

View File

@@ -36,8 +36,8 @@ AbstractSalesforceStepForm.fetchModule=Salesforce\u30B5\u30FC\u30D3\u30B9\u306B\
ConnectionContextHelper.ContextTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9
ConnectionContextHelper.InConextMessages=\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u3057\u305F\u3002
ConnectionContextHelper.OutConextMessages=\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
ConnectionContextHelper.UpdateMessages=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B?
ConnectionContextHelper.UpdateTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u66F4\u65B0
ConnectionContextHelper.UpdateMessages=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u304B?
ConnectionContextHelper.UpdateTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
ContextSetsSelectionDialog.ContextSets=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30C8
ContextSetsSelectionDialog.Messages=\u73FE\u5728\u306E\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u3059\u3002
ContextSetsSelectionDialog.ReportMessages=\u73FE\u5728\u306E\u30EC\u30DD\u30FC\u30C8\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u3059\u3002
@@ -137,7 +137,7 @@ DatabaseTableForm.no_such_table=\u305D\u306E\u3088\u3046\u306A\u30C6\u30FC\u30D6
DatabaseTableForm.refresh.text=\u3053\u306E\u30DC\u30BF\u30F3\u3092\u62BC\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u3092\u3059\u3079\u3066\u53D6\u5F97\u3057\u307E\u3059
DatabaseTableForm.retreiveButtonAlert= [\u30B9\u30AD\u30FC\u30DE\u3092\u53D6\u5F97]\u30DC\u30BF\u30F3\u3092\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u3001\u307E\u305A\u30C6\u30FC\u30D6\u30EB\u3092\u9078\u629E\u3057\u307E\u3059\u3002
DatabaseTableForm.retreiveButtonConfirmation=\u5909\u66F4\u3092\u78BA\u5B9A\u3057\u307E\u3059\u304B?
DatabaseTableForm.retreiveButtonConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u306E\u8A2D\u5B9A\u3092\u5909\u66F4\u3059\u308B\u3068\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u306E\u66F4\u65B0\u306F\u3059\u3079\u3066\u306E\u30AB\u30EC\u30F3\u30C8\u30C7\u30FC\u30BF\u306B\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u7D99\u7D9A\u3057\u307E\u3059\u304B\uFF1F
DatabaseTableForm.retreiveButtonConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u306E\u8A2D\u5B9A\u3092\u5909\u66F4\u3059\u308B\u3068\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306F\u3059\u3079\u3066\u306E\u30AB\u30EC\u30F3\u30C8\u30C7\u30FC\u30BF\u306B\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u7D99\u7D9A\u3057\u307E\u3059\u304B\uFF1F
DatabaseTableForm.retreiveButtonIsAccessible=[Retrieve] (\u53D6\u5F97)\u30DC\u30BF\u30F3\u304C\u5229\u7528\u53EF\u80FD\u306B\u306A\u308A\u307E\u3057\u305F\u3002
DatabaseTableForm.retreiveButtonTip=\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u300C\u30B9\u30AD\u30FC\u30DE\u60C5\u5831\u3092\u53D6\u5F97\u300D\u304C\u4F7F\u7528\u3067\u304D\u307E\u3059!
DatabaseTableForm.retreiveButtonUse=[\u30B9\u30AD\u30FC\u30DE\u3092\u53D6\u5F97]\u30DC\u30BF\u30F3\u3092\u4F7F\u3063\u3066\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30C6\u30FC\u30D6\u30EB\u30D9\u30FC\u30B9\u30B9\u30AD\u30FC\u30DE\u306B\u7F6E\u63DB
@@ -154,15 +154,15 @@ DatabaseTableForm.typeTable=\u30BF\u30A4\u30D7: TABLE
DatabaseTableWizard.description=\u30C6\u30FC\u30D6\u30EB\u7528\u30D5\u30A3\u30EB\u30BF\u30FC\u3002
DatabaseWizard.windowTitle=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A
DatabaseWizard.ReloadTitle=\u30EA\u30ED\u30FC\u30C9\u3092\u78BA\u8A8D
DatabaseWizard.ReloadMessages=\u63A5\u7D9A\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F\u3002\u5206\u6790\u304C\u4F9D\u5B58\u3057\u3066\u3044\u308B\u3053\u306E\u63A5\u7D9A\u306E\u5206\u6790\u6E08\u307F\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
DatabaseWizard.ReloadMessages=\u63A5\u7D9A\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u304C\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3055\u308C\u307E\u3057\u305F\u3002\u5206\u6790\u304C\u4F9D\u5B58\u3057\u3066\u3044\u308B\u3053\u306E\u63A5\u7D9A\u306E\u5206\u6790\u6E08\u307F\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
DatabaseWizardPage.descriptionCreate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u5B9A\u7FA9
DatabaseWizardPage.descriptionCreate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u5B9A\u7FA9
DatabaseWizardPage.descriptionUpdate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u66F4\u65B0
DatabaseWizardPage.descriptionUpdate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u66F4\u65B0
DatabaseWizardPage.descriptionUpdate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DatabaseWizardPage.descriptionUpdate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DatabaseWizardPage.titleCreate.Step1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u4E0A\u306E\u65B0\u898F\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A - \u30B9\u30C6\u30C3\u30D7 1/2
DatabaseWizardPage.titleCreate.Step2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u4E0A\u306E\u65B0\u898F\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A - \u30B9\u30C6\u30C3\u30D7 2/2
DatabaseWizardPage.titleUpdate.Step1=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u66F4\u65B0 - \u30B9\u30C6\u30C3\u30D71/2
DatabaseWizardPage.titleUpdate.Step2=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u66F4\u65B0 - \u30B9\u30C6\u30C3\u30D72/2
DatabaseWizardPage.titleUpdate.Step1=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 - \u30B9\u30C6\u30C3\u30D71/2
DatabaseWizardPage.titleUpdate.Step2=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 - \u30B9\u30C6\u30C3\u30D72/2
DelimitedFilePreview.column=\u30AB\u30E9\u30E0
DelimitedFileStep2Form.14=\u6570\u5024\u306E\u307F\u53EF\u80FD\u3067\u3059\u3002
DelimitedFileStep2Form.onlyNumber=\u6570\u5024\u306E\u307F\u53EF\u80FD\u3067\u3059\u3002
@@ -180,8 +180,8 @@ DocumentationPage.originalNameLabText.orgName=\u5143\u306E\u540D\u524D
DocumentationPage.sourceDocDoNotExist=\u30BD\u30FC\u30B9\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3002
DocumentationPage.sourceDocIsNotSet=\u30BD\u30FC\u30B9\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u304C\u672A\u8A2D\u5B9A\u3067\u3059\u3002
DocumentationPage.thisTitle.document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3
DocumentationUpdateWizard.mainPageDescription=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0
DocumentationUpdateWizard.windowTitle=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0
DocumentationUpdateWizard.mainPageDescription=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DocumentationUpdateWizard.windowTitle=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EditProcessPropertiesWizardPage.convert.button.name=\u30D3\u30C3\u30B0\u30C7\u30FC\u30BF\u30D0\u30C3\u30C1\u30B8\u30E7\u30D6\u306B\u5909\u63DB
EditProcessPropertiesWizard.pageName=\u30D7\u30ED\u30BB\u30B9\u30A6\u30A3\u30B6\u30FC\u30C9
EditProcessPropertiesWizard.wizardTitle=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u7DE8\u96C6
@@ -292,38 +292,38 @@ FileStep3.fileNotExist=\u30D5\u30A1\u30A4\u30EB{0}\u304C\u5B58\u5728\u3057\u307E
FileStep3.groupMetadata=\u30B9\u30AD\u30FC\u30DE
FileStep3.guess=\u63A8\u5B9A
FileStep3.guessConfirmation=\u5909\u66F4\u3092\u78BA\u5B9A\u3057\u307E\u3059\u304B?
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u306F\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u3068\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002\u30AD\u30E3\u30F3\u30BB\u30EB\u3092\u9078\u629E\u3057\u305F\u5834\u5408\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u7D9A\u3051\u307E\u3059\u304B\uFF1F,
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u306F\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u3068\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002\u30AD\u30E3\u30F3\u30BB\u30EB\u3092\u9078\u629E\u3057\u305F\u5834\u5408\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u7D9A\u3051\u307E\u3059\u304B\uFF1F,
FileStep3.guessFailure=\u63A8\u5B9A\u306E\u5931\u6557
FileStep3.guessFailureTip=\u63A8\u5B9A\u306E\u5931\u6557
FileStep3.guessFailureTip2=\u30B9\u30C6\u30C3\u30D72\u306E\u30D7\u30EC\u30D3\u30E5\u30FC\u306B\u57FA\u3065\u304F\u63A8\u5B9A
FileStep3.guessIsDone=\u63A8\u5B9A\u306E\u6210\u529F
FileStep3.guessProgress=\u63A8\u5B9A\u3092\u5B9F\u884C\u4E2D...
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3059
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B[\u63A8\u6E2C]\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B[\u63A8\u6E2C]\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF
FileStep3.itemAlert=\u5C11\u306A\u304F\u3066\u30821\u3064\u306E\u30A2\u30A4\u30C6\u30E0\u304C\u30B9\u30AD\u30FC\u30DE\u306B\u5FC5\u8981\u3067\u3059
FileStep3.metadataComment=\u30B3\u30E1\u30F3\u30C8
FileStep3.metadataDescription=\u30B9\u30AD\u30FC\u30DE\u306E\u8AAC\u660E
FileStep3.metadataName=\u540D\u524D
FileTableWizardPage.descriptionCreate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0
FileTableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u3042\u308B\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3057\u307E\u3059
FileTableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u3042\u308B\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059
FileTableWizardPage.titleCreate="{0}"\u4E0A\u306E\u65B0\u3057\u3044\u30B9\u30AD\u30FC\u30DE
FileTableWizardPage.titleUpdate="{0}"\u3068\u3044\u3046\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
FileTableWizardPage.titleUpdate="{0}"\u3068\u3044\u3046\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizard.windowTitleCreate=\u65B0\u898F\u306E\u56FA\u5B9A\u9577\u30D5\u30A1\u30A4\u30EB
FileWizard.windowTitleUpdate=\u65E2\u5B58\u306E\u56FA\u5B9A\u9577\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6
FileWizardPage.descriptionCreateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep3=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0\n\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9
FileWizardPage.descriptionUpdateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u66F4\u65B0
FileWizardPage.descriptionUpdateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u66F4\u65B0
FileWizardPage.descriptionUpdateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u66F4\u65B0\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionUpdateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizardPage.descriptionUpdateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizardPage.descriptionUpdateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.of=of
FileWizardPage.titleCreate=\u30D5\u30A1\u30A4\u30EB - \u30B9\u30C6\u30C3\u30D7
FileWizardPage.titleUpdate=\u30D5\u30A1\u30A4\u30EB - \u30B9\u30C6\u30C3\u30D7
GenericSchemaStep2Form.SelectDatabaseType=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30DE\u30C3\u30D4\u30F3\u30B0\u30BF\u30A4\u30D7\u3092\u9078\u629E
GenericSchemaWizard.CreateNewGenericSchema=\u65B0\u3057\u3044\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
GenericSchemaWizard.SaveAsGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3068\u3057\u3066\u4FDD\u5B58
GenericSchemaWizard.UpdateGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
GenericSchemaWizard.UpdateGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
ImportSchemaFileWizard.WizardTitle=XML\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
LDAPSchemaStep1Form.CheckConnection= \u63A5\u7D9A\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B\u305F\u3081\u306B\u4E0B\u8A18\u306E\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002
LDAPSchemaStep1Form.CheckNetWorkParameter=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30C1\u30A7\u30C3\u30AF
@@ -359,7 +359,7 @@ LDAPSchemaStep3Form.selectAllTipText=\u30B9\u30AD\u30FC\u30DE\u5C5E\u6027\u3092\
LDAPSchemaStep3Form.selectNoneText=\u4F55\u3082\u9078\u629E\u3057\u306A\u3044
LDAPSchemaStep3Form.selectNoneTipText=\u30B9\u30AD\u30FC\u30DE\u5C5E\u6027\u3092\u9078\u629E\u3057\u306A\u3044
LDAPSchemaWizard.CreateNewLdapSchema=\u65B0\u3057\u3044LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
LDAPSchemaWizard.UpdateLdapSchema=LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
LDAPSchemaWizard.UpdateLdapSchema=LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
LDIFReader.ioException.cannotConstrauctURL=: URL\u3092\u69CB\u6210\u3067\u304D\u307E\u305B\u3093
LDIFReader.ioException.protocolNotSupported=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30D7\u30ED\u30C8\u30B3\u30EB :
LDIFReader.ioException.unknow=\u672A\u77E5\u306E\u30BF\u30A4\u30D7\u3002
@@ -445,9 +445,9 @@ ShowAddedContextdialog.Variables=\u5909\u6570
StoppablePreviewLoader.inforLabelText.previewInterrupted=\u4E2D\u65AD\u3055\u308C\u305F\u30D7\u30EC\u30D3\u30E5\u30FC
TableWizard.windowTitle=\u30B9\u30AD\u30FC\u30DE
TableWizardPage.descriptionCreate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0
TableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306E\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
TableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306E\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
TableWizardPage.titleCreate=\u63A5\u7D9A\u5185\u306E\u65B0\u3057\u3044\u30B9\u30AD\u30FC\u30DE
TableWizardPage.titleUpdate=\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
TableWizardPage.titleUpdate=\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
WSDLSchemaStep1Form.ENDPOINTURI=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8URI
WSDLSchemaStep1Form.MethodName=\u30E1\u30BD\u30C3\u30C9
WSDLSchemaStep1Form.NeedAuth=\u8A8D\u8A3C\u304C\u5FC5\u8981\u3067\u3059\u304B?
@@ -470,7 +470,7 @@ WSDLSchemaStep1Form.preview=\u30D7\u30EC\u30D3\u30E5\u30FC
WSDLSchemaStep1Form.TimeOutTitle=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8(\u79D2)
WSDLSchemaWizard.CreateNewWSDLSchema=\u65B0\u3057\u3044WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
WSDLSchemaWizard.SaveAsWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3068\u3057\u3066\u4FDD\u5B58
WSDLSchemaWizard.UpdateWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
WSDLSchemaWizard.UpdateWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
XPathProposalProvider.contentProposal=<< \u3042\u307E\u308A\u306B\u3082\u591A\u304F\u306E\u30CE\u30FC\u30C9\u3001\u5024\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093 ... >>,
XmlFileStep1.filepathXml=XML
XmlFileStep1.groupFileViewer=\u30B9\u30AD\u30FC\u30DE\u30D3\u30E5\u30FC\u30A2\u30FC
@@ -482,7 +482,7 @@ XmlFileStep2Form.previewNotAvailable=XSD\u30D5\u30A1\u30A4\u30EB\u306B\u5229\u75
XmlFileWizard.windowTitleCreate=\u65B0\u3057\u3044XML\u30D5\u30A1\u30A4\u30EB
XmlFileWizard.windowTitleUpdate=\u65E2\u5B58\u306EXML\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6
XmlFileWizard.newColumnsDectect.title=\u65B0\u3057\u3044\u30AB\u30E9\u30E0\u3092\u691C\u51FA
XmlFileWizard.newColumnsDectect.desc=\u65B0\u898F\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u62BD\u51FA\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u66F4\u65B0\u3092\u53CD\u6620\u3055\u305B\u308B\u305F\u3081\u306B\u306F\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9\u3057\u306A\u304A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
XmlFileWizard.newColumnsDectect.desc=\u65B0\u898F\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u62BD\u51FA\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u53CD\u6620\u3055\u305B\u308B\u305F\u3081\u306B\u306F\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9\u3057\u306A\u304A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
XmlToXPathLinker.Loop=\u30EB\u30FC\u30D7\u30EA\u30F3\u30AF\u3092\u4F5C\u6210...
XmlToXPathLinker.beginTask.fieldLinksCreation=\u30D5\u30A3\u30FC\u30EB\u30C9\u30EA\u30F3\u30AF\u306E\u4F5C\u6210...
XmlToXPathLinker.exceptionReturn.xPathInvalid=\u73FE\u5728\u306EXpath\u5F0F\u304C\u7121\u52B9\u3067\u3059
@@ -548,3 +548,6 @@ MetadataTalendTypeEditor.confirmTitle=\u8B66\u544A
MetadataTalendTypeEditor.confirmMessage=\u73FE\u5728\u306E\u8A2D\u5B9A\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30B7\u30B9\u30C6\u30E0\u8A2D\u5B9A\u306B\u7F6E\u63DB\u3057\u307E\u3059\u304B?
PromptDialog.title=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8{0}\u306E\u5B9F\u884C\u3002\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC:
PromptDialog.stringTip=\u5165\u529B\u30C6\u30AD\u30B9\u30C8\u3092\u4E00\u91CD\u5F15\u7528\u7B26\u3067\u56F2\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
PromptDialog.choose.title=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u9078\u629E
PromptDialog.promptGroup.name=\u30D7\u30ED\u30F3\u30D7\u30C8\u5909\u6570
PromptDialog.context.environments.name=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u74B0\u5883

View File

@@ -548,3 +548,6 @@ MetadataTalendTypeEditor.confirmTitle=\u8B66\u544A
MetadataTalendTypeEditor.confirmMessage=\u662F\u5426\u786E\u5B9A\u8981\u5C06\u5F53\u524D\u8BBE\u7F6E\u66FF\u6362\u4E3A\u9ED8\u8BA4\u7CFB\u7EDF\u8BBE\u7F6E\uFF1F
PromptDialog.title=\u4F7F\u7528\u4EE5\u4E0B\u53C2\u6570\u8FD0\u884C\u4E0A\u4E0B\u6587 {0}:
PromptDialog.stringTip=\u8F93\u5165\u6587\u5B57\u5FC5\u987B\u7F6E\u4E8E\u5355\u5F15\u53F7\u5185\u3002
PromptDialog.choose.title=\u9009\u62E9\u4E0A\u4E0B\u6587
PromptDialog.promptGroup.name=\u63D0\u793A\u53D8\u91CF
PromptDialog.context.environments.name=\u4E0A\u4E0B\u6587\u73AF\u5883

View File

@@ -12,12 +12,17 @@
// ============================================================================
package org.talend.metadata.managment.ui;
import java.util.List;
import org.eclipse.core.runtime.Path;
import org.eclipse.jface.window.Window;
import org.eclipse.jface.wizard.WizardDialog;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.PlatformUI;
import org.talend.core.model.metadata.builder.connection.Connection;
import org.talend.core.model.process.IContext;
import org.talend.core.model.properties.ContextItem;
import org.talend.core.service.IMetadataManagmentUiService;
import org.talend.designer.core.model.utils.emf.talendfile.ContextType;
import org.talend.metadata.managment.ui.dialog.OpenXSDFileDialog;
@@ -71,4 +76,24 @@ public class MetadataManagmentUiService implements IMetadataManagmentUiService {
return ConnectionContextHelper.isContextMode(connection, value);
}
@Override
public boolean promptConfirmLauch(Shell shell, Connection connection, ContextItem contextItem) {
return ConnectionContextHelper.promptConfirmLauch(shell, connection, contextItem);
}
@Override
public IContext promptConfirmLauch(Shell shell, List<IContext> contexts, IContext defaultContext) {
return ConnectionContextHelper.promptConfirmLauch(shell, contexts, defaultContext);
}
@Override
public boolean promptConfirmLauch(Shell shell, IContext context) {
return ConnectionContextHelper.promptConfirmLauch(shell, context);
}
@Override
public boolean isPromptNeeded(List<IContext> contexts) {
return ConnectionContextHelper.isPromptNeeded(contexts);
}
}

View File

@@ -1,6 +1,6 @@
// ============================================================================
//
// Copyright (C) 2006-2021 Talend Inc. - www.talend.com
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
@@ -12,9 +12,12 @@
// ============================================================================
package org.talend.metadata.managment.ui.dialog;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CCombo;
import org.eclipse.swt.custom.ScrolledComposite;
@@ -34,54 +37,121 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.DirectoryDialog;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.dialogs.SelectionDialog;
import org.talend.commons.ui.runtime.swt.tableviewer.celleditor.DateDialog;
import org.talend.commons.ui.swt.formtools.LabelledCombo;
import org.talend.commons.ui.utils.PathUtils;
import org.talend.core.model.context.ContextUtils;
import org.talend.core.model.process.IContext;
import org.talend.core.model.process.IContextParameter;
import org.talend.core.model.properties.ContextItem;
import org.talend.core.ui.context.DefaultCellEditorFactory;
import org.talend.designer.core.model.utils.emf.talendfile.ContextType;
import org.talend.metadata.managment.ui.i18n.Messages;
import org.talend.metadata.managment.ui.utils.ConnectionContextHelper;
import org.talend.utils.security.StudioEncryption;
/**
* this class copied from org.talend.designer.runprocess.ui.PromptDialog
*
* $Id$
*
* created by hcyi on Apr 21, 2022 Detailled comment
*
*/
public class PromptDialog extends Dialog {
public class PromptDialog extends SelectionDialog {
/**
*
*/
private static final int Y_POSITION = 100;
private static final int Y_POSITION = 150;
/**
*
*/
private static final int X_POSITION = 300;
/**
*
*/
private static final int CELLPADDING = 10;
/**
*
*/
private static final int MINIMUM_WIDTH = 50;
IContext context;
private static final String DEFAULT_FLAG = "(Default)"; //$NON-NLS-1$
private static final String TITLE = Messages.getString("ContextSetsSelectionDialog.Title"); //$NON-NLS-1$
private Object source;
private List<String> contextSetsList = new ArrayList<String>();
private String defalutContext = ConnectionContextHelper.EMPTY;
private String selectedContext = null;
private IContext currentContext = null;
private boolean canCancel = false;
private LabelledCombo contextCombo;
private Composite contextComp;
private Composite child;
/**
* DOC nrousseau PromptDialog constructor comment.
*
* @param parentShell
*/
public PromptDialog(Shell parentShell, IContext context) {
super(parentShell);
this.context = context;
initDialog(context, canCancel, Messages.getString("ContextSetsSelectionDialog.Messages")); //$NON-NLS-1$
initSets();
}
public PromptDialog(Shell parentShell, ContextItem contextItem) {
super(parentShell);
initDialog(contextItem, canCancel, Messages.getString("ContextSetsSelectionDialog.Messages")); //$NON-NLS-1$
initSets();
}
public PromptDialog(Shell parentShell, List<IContext> contexts, IContext defaultIContext) {
super(parentShell);
initDialog(contexts, canCancel, Messages.getString("ContextSetsSelectionDialog.Messages")); //$NON-NLS-1$
if (defaultIContext != null) {
defalutContext = defaultIContext.getName();
}
initSets();
}
private void initDialog(Object object, boolean cancelFlag, String message) {
this.source = object;
this.canCancel = cancelFlag;
setHelpAvailable(false);
setTitle(TITLE);
setMessage(message);
}
private void initSets() {
if (source != null) {
if (source instanceof ContextItem) {
ContextItem contextItem = (ContextItem) source;
List<ContextType> contexts = contextItem.getContext();
String repositoryContextId = contextItem.getProperty().getId();
defalutContext = contextItem.getDefaultContext();
for (ContextType contextType : contexts) {
String name = contextType.getName();
if (name.equalsIgnoreCase(defalutContext)) {
name = name + DEFAULT_FLAG;
selectedContext = name;
currentContext = ContextUtils.convert2IContext(contextType, repositoryContextId).clone();
}
contextSetsList.add(name);
}
} else if (source instanceof List) {
List<IContext> contexts = (List<IContext>) source;
for (IContext context : contexts) {
String name = context.getName();
if (name.equalsIgnoreCase(defalutContext)) {
name = name + DEFAULT_FLAG;
selectedContext = name;
currentContext = context.clone();
}
contextSetsList.add(name);
}
} else if (source instanceof IContext) {
currentContext = (IContext) source;
}
}
}
@Override
@@ -89,16 +159,84 @@ public class PromptDialog extends Dialog {
final Composite composite = (Composite) super.createDialogArea(parent);
composite.setLayout(new FillLayout());
final ScrolledComposite sc = new ScrolledComposite(composite, SWT.H_SCROLL | SWT.V_SCROLL);
final Composite child = new Composite(sc, SWT.NONE);
ScrolledComposite sc = new ScrolledComposite(composite, SWT.H_SCROLL | SWT.V_SCROLL);
child = new Composite(sc, SWT.NONE);
child.setLayout(new GridLayout(1, false));
createSourceArea(child);
createSelectionArea(child);
contextComp = new Composite(child, SWT.NONE);
contextComp.setLayout(new GridLayout(1, false));
contextComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
createContextArea(currentContext, contextComp);
sc.setContent(child);
// Set the minimum size
// sc.setMinSize(400, 400);
// Expand both horizontally and vertically
sc.setExpandHorizontal(true);
sc.setExpandVertical(true);
sc.addControlListener(new ControlAdapter() {
public void controlResized(ControlEvent e) {
Rectangle r = sc.getClientArea();
sc.setMinSize(child.computeSize(r.width, SWT.DEFAULT));
}
});
addFieldsListeners();
return composite;
}
private void createSourceArea(Composite parent) {
if (source != null && source instanceof ContextItem) {
ContextItem contextItem = (ContextItem) source;
Composite inner = new Composite(parent, SWT.NONE);
GridLayout gridLayout = new GridLayout(2, false);
gridLayout.marginHeight = 0;
inner.setLayout(gridLayout);
inner.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
Label label = new Label(inner, SWT.NONE);
label.setText(Messages.getString("ContextSetsSelectionDialog.Source")); //$NON-NLS-1$
Label source = new Label(inner, SWT.NONE);
source.setText(contextItem.getProperty().getLabel() + " " + contextItem.getProperty().getVersion()); //$NON-NLS-1$
source.setFont(JFaceResources.getFontRegistry().getBold(JFaceResources.DEFAULT_FONT));
}
}
private void createSelectionArea(Composite parent) {
if (source != null && (source instanceof ContextItem || source instanceof List)) {
Composite inner = new Composite(parent, SWT.NONE);
GridLayout gridLayout = new GridLayout();
gridLayout.marginHeight = 0;
inner.setLayout(gridLayout);
GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.minimumWidth = 220;
gridData.minimumHeight = 100;
inner.setLayoutData(gridData);
contextCombo = new LabelledCombo(inner, Messages.getString("PromptDialog.context.environments.name"), null, //$NON-NLS-1$
contextSetsList, true);
contextCombo.setText(defalutContext + DEFAULT_FLAG);
}
}
private void createContextArea(IContext currentContext, Composite parent) {
Group promptGroup = new Group(parent, SWT.NONE);
promptGroup.setText(Messages.getString("PromptDialog.promptGroup.name")); //$NON-NLS-1$
promptGroup.setLayout(new GridLayout(1, false));
promptGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
// Prompt for context values ?
for (final IContextParameter parameter : context.getContextParameterList()) {
for (final IContextParameter parameter : currentContext.getContextParameterList()) {
if (parameter.isPromptNeeded()) {
if (DefaultCellEditorFactory.isBoolean(parameter.getType())) {
final Composite composite2 = new Composite(child, SWT.NONE);
final Composite composite2 = new Composite(promptGroup, SWT.NONE);
final GridLayout gridLayout = new GridLayout(2, false);
gridLayout.horizontalSpacing = 5;
gridLayout.marginBottom = 0;
@@ -133,42 +271,22 @@ public class PromptDialog extends Dialog {
});
} else {
Label label = new Label(child, SWT.NONE);
Label label = new Label(promptGroup, SWT.NONE);
label.setText(parameter.getPrompt());
label.setAlignment(SWT.LEFT);
GridData data = new GridData(GridData.FILL_HORIZONTAL);
data.minimumWidth = MINIMUM_WIDTH;
label.setLayoutData(data);
createParameterComposite(child, parameter, label);
createParameterComposite(promptGroup, parameter, label);
}
}
}
if (promptGroup.getChildren().length == 0) {
promptGroup.dispose();
}
sc.setContent(child);
// Set the minimum size
// sc.setMinSize(400, 400);
// Expand both horizontally and vertically
sc.setExpandHorizontal(true);
sc.setExpandVertical(true);
sc.addControlListener(new ControlAdapter() {
public void controlResized(ControlEvent e) {
Rectangle r = sc.getClientArea();
sc.setMinSize(child.computeSize(r.width, SWT.DEFAULT));
}
});
return composite;
}
/**
* DOC qiang.zhang Comment method "createParameterComposite".
*
* @param parent
* @param parameter
* @param label
*/
private void createParameterComposite(final Composite parent, final IContextParameter parameter, Label label) {
final Composite child = new Composite(parent, SWT.NONE);
final GridLayout layout = new GridLayout(2, false);
@@ -186,7 +304,14 @@ public class PromptDialog extends Dialog {
}
final Text text = new Text(child, SWT.SINGLE | SWT.BORDER);
text.setText(parameter.getValue());
String paramValue = parameter.getValue();
if (DefaultCellEditorFactory.isPassword(parameter.getType())) {
if (StudioEncryption.hasEncryptionSymbol(paramValue)) {
paramValue = StudioEncryption.getStudioEncryption(StudioEncryption.EncryptionKeyName.SYSTEM).decrypt(paramValue);
}
}
text.setText(paramValue);
text.addModifyListener(new ModifyListener() {
@@ -287,13 +412,6 @@ public class PromptDialog extends Dialog {
}
}
/**
* DOC bqian Comment method "createListParameterArea".
*
* @param parameter
* @param label
* @param parent
*/
private void createListParameterArea(final IContextParameter parameter, Label label, final Composite parent) {
final CCombo combo = new CCombo(parent, SWT.BORDER);
@@ -325,7 +443,26 @@ public class PromptDialog extends Dialog {
combo.setToolTipText(parameter.getComment());
}
}
}
protected void addFieldsListeners() {
if (contextCombo != null) {
contextCombo.addModifyListener(new ModifyListener() {
@Override
public void modifyText(final ModifyEvent e) {
selectedContext = contextCombo.getItem(contextCombo.getSelectionIndex());
contextComp.dispose();
contextComp = new Composite(child, SWT.NONE);
contextComp.setLayout(new GridLayout(1, false));
contextComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
createContextArea(getCloneContext(), contextComp);
child.layout();
child.getParent().layout();
contextComp.layout();
}
});
}
}
@Override
@@ -352,7 +489,7 @@ public class PromptDialog extends Dialog {
int height = t.getLineHeight() + CELLPADDING;
t.dispose();
int nbParams = 0;
for (IContextParameter parameter : context.getContextParameterList()) {
for (IContextParameter parameter : currentContext.getContextParameterList()) {
if (parameter.isPromptNeeded()) {
nbParams++;
}
@@ -360,7 +497,42 @@ public class PromptDialog extends Dialog {
Point dialogSize = new Point(X_POSITION, Math.min((height * nbParams) + Y_POSITION, 400));
setSize(newShell, dialogSize);
newShell.setText(Messages.getString("PromptDialog.title", context.getName())); //$NON-NLS-1$
if (source != null && source instanceof IContext) {
newShell.setText(Messages.getString("PromptDialog.title", currentContext.getName())); //$NON-NLS-1$
} else {
newShell.setText(Messages.getString("PromptDialog.choose.title")); //$NON-NLS-1$
}
}
public IContext getCloneContext() {
if (source != null) {
if (source instanceof ContextItem) {
ContextItem contextItem = (ContextItem) source;
List<ContextType> contexts = contextItem.getContext();
String repositoryContextId = contextItem.getProperty().getId();
for (ContextType contextType : contexts) {
String name = contextType.getName();
if (name.equalsIgnoreCase(selectedContext) || (name + DEFAULT_FLAG).equalsIgnoreCase(selectedContext)) {
currentContext = ContextUtils.convert2IContext(contextType, repositoryContextId).clone();
return currentContext;
}
}
} else if (source instanceof List) {
List<IContext> contexts = (List<IContext>) source;
for (IContext context : contexts) {
String name = context.getName();
if (name.equalsIgnoreCase(selectedContext) || (name + DEFAULT_FLAG).equalsIgnoreCase(selectedContext)) {
currentContext = context.clone();
return currentContext;
}
}
}
}
return null;
}
public IContext getCurrentContext() {
return currentContext;
}
}

View File

@@ -61,6 +61,7 @@ import org.talend.core.model.metadata.builder.connection.SAPConnection;
import org.talend.core.model.metadata.builder.connection.SalesforceSchemaConnection;
import org.talend.core.model.metadata.builder.connection.WSDLSchemaConnection;
import org.talend.core.model.metadata.builder.connection.XmlFileConnection;
import org.talend.core.model.metadata.builder.database.JavaSqlFactory;
import org.talend.core.model.metadata.designerproperties.RepositoryToComponentProperty;
import org.talend.core.model.metadata.types.ContextParameterJavaTypeManager;
import org.talend.core.model.metadata.types.JavaType;
@@ -95,11 +96,11 @@ import org.talend.core.ui.context.model.table.ConectionAdaptContextVariableModel
import org.talend.core.ui.process.IGEFProcess;
import org.talend.core.ui.services.IDesignerCoreUIService;
import org.talend.core.utils.TalendQuoteUtils;
import org.talend.metadata.managment.ui.dialog.PromptDialog;
import org.talend.designer.core.IDesignerCoreService;
import org.talend.designer.core.model.utils.emf.talendfile.ContextParameterType;
import org.talend.designer.core.model.utils.emf.talendfile.ContextType;
import org.talend.designer.core.model.utils.emf.talendfile.impl.ContextTypeImpl;
import org.talend.metadata.managment.ui.dialog.PromptDialog;
import org.talend.metadata.managment.ui.i18n.Messages;
import org.talend.metadata.managment.ui.model.IConnParamName;
import org.talend.metadata.managment.ui.utils.DBConnectionContextUtils.EDBParamName;
@@ -358,7 +359,7 @@ public final class ConnectionContextHelper {
// TODO:Maybe later has other type support context for the additional table.Now only sap
INOSQLService service = null;
if (GlobalServiceRegister.getDefault().isServiceRegistered(INOSQLService.class)) {
service = (INOSQLService) GlobalServiceRegister.getDefault().getService(INOSQLService.class);
service = GlobalServiceRegister.getDefault().getService(INOSQLService.class);
}
if (service != null && service.isUseReplicaSet(currentConnection)) {
String replicaSets = service.getMongoDBReplicaSets(currentConnection);
@@ -728,7 +729,7 @@ public final class ConnectionContextHelper {
// refresh context view
if (added.get()) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IDesignerCoreService.class)) {
IDesignerCoreService service = (IDesignerCoreService) GlobalServiceRegister.getDefault()
IDesignerCoreService service = GlobalServiceRegister.getDefault()
.getService(IDesignerCoreService.class);
PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
@@ -840,7 +841,7 @@ public final class ConnectionContextHelper {
// refresh context view
if (added) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IDesignerCoreService.class)) {
IDesignerCoreService service = (IDesignerCoreService) GlobalServiceRegister.getDefault()
IDesignerCoreService service = GlobalServiceRegister.getDefault()
.getService(IDesignerCoreService.class);
service.switchToCurContextsView();
}
@@ -1016,7 +1017,7 @@ public final class ConnectionContextHelper {
// refresh context view
if (added) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IDesignerCoreService.class)) {
IDesignerCoreService service = (IDesignerCoreService) GlobalServiceRegister.getDefault().getService(
IDesignerCoreService service = GlobalServiceRegister.getDefault().getService(
IDesignerCoreService.class);
service.switchToCurContextsView();
}
@@ -1089,7 +1090,7 @@ public final class ConnectionContextHelper {
public static boolean isGenericConnection(Connection connection){
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericWizardService.class)) {
IGenericWizardService wizardService = (IGenericWizardService) GlobalServiceRegister.getDefault().getService(
IGenericWizardService wizardService = GlobalServiceRegister.getDefault().getService(
IGenericWizardService.class);
if (wizardService != null) {
return wizardService.isGenericConnection(connection);
@@ -1122,8 +1123,7 @@ public final class ConnectionContextHelper {
if (objectValue != null) {
if (objectValue instanceof List) {
List list = (List) objectValue;
for (int i = 0; i < list.size(); i++) {
Object object = list.get(i);
for (Object object : list) {
if (object instanceof HashMap) {
Map map = (HashMap) object;
if (!map.isEmpty()) {
@@ -2156,6 +2156,76 @@ public final class ConnectionContextHelper {
return null;
}
public static boolean isPromptNeeded(List<IContext> contexts) {
if (contexts != null) {
for (IContext context : contexts) {
for (IContextParameter parameter : context.getContextParameterList()) {
if (parameter.isPromptNeeded()) {
return true;
}
}
}
}
return false;
}
public static IContext promptConfirmLauch(Shell shell, List<IContext> contexts, IContext defaultContext) {
int nbValues = 0;
Assert.isNotNull(contexts);
// Prompt for context values ?
for (IContext context : contexts) {
for (IContextParameter parameter : context.getContextParameterList()) {
if (parameter.isPromptNeeded()) {
nbValues++;
break;
}
}
}
if (nbValues > 0 || (contexts != null && contexts.size() > 1)) {
PromptDialog promptDialog = new PromptDialog(shell, contexts, defaultContext);
if (promptDialog.open() == PromptDialog.OK) {
return promptDialog.getCurrentContext();
}
}
return null;
}
public static boolean promptConfirmLauch(Shell shell, Connection connection, ContextItem contextItem) {
boolean continueLaunch = true;
int nbValues = 0;
Assert.isNotNull(contextItem);
// Prompt for context values ?
List<ContextType> contexts = contextItem.getContext();
for (ContextType contextType : contexts) {
IContext jobContext = ContextUtils.convert2IContext(contextType, contextItem.getProperty().getId());
for (IContextParameter parameter : jobContext.getContextParameterList()) {
if (parameter.isPromptNeeded()) {
nbValues++;
break;
}
}
}
if (nbValues > 0 || (contexts != null && contexts.size() > 1)) {
PromptDialog promptDialog = new PromptDialog(shell, contextItem);
if (promptDialog.open() == PromptDialog.OK) {
IContext selectedContext = promptDialog.getCurrentContext();
connection.setContextName(selectedContext.getName());
// save the input prompt context values to cache
for (IContextParameter param : selectedContext.getContextParameterList()) {
JavaSqlFactory.savePromptConVars2Cache(connection, param);
}
// set the input values to connection
JavaSqlFactory.setPromptContextValues(connection);
JavaSqlFactory.haveSetPromptContextVars = true;
} else {
continueLaunch = false;
}
}
return continueLaunch;
}
public static boolean promptConfirmLauch(Shell shell, IContext context) {
boolean continueLaunch = true;

View File

@@ -841,12 +841,12 @@ public final class DBConnectionContextUtils {
*
* set the ManagerConnection parameter and return the url string connection.
*/
public static String setManagerConnectionValues(ManagerConnection managerConnection, ConnectionItem connectionItem,
public static String setManagerConnectionValues(ManagerConnection managerConnection, Connection connection,
ContextType contextType, final String dbType) {
if (managerConnection == null || connectionItem == null || dbType == null || dbType.length() < 0) {
if (managerConnection == null || connection == null || dbType == null || dbType.length() < 0) {
return null;
}
DatabaseConnection dbConn = (DatabaseConnection) connectionItem.getConnection();
DatabaseConnection dbConn = (DatabaseConnection) connection;
if (contextType == null) {
contextType = ConnectionContextHelper.getContextTypeForContextMode(dbConn);
@@ -899,7 +899,7 @@ public final class DBConnectionContextUtils {
public static String setManagerConnectionValues(ManagerConnection managerConnection, ConnectionItem connectionItem,
final String dbType) {
return setManagerConnectionValues(managerConnection, connectionItem, null, dbType);
return setManagerConnectionValues(managerConnection, connectionItem.getConnection(), null, dbType);
}
/**

View File

@@ -175,7 +175,13 @@ public class ExtendedNodeConnectionContextUtils {
CdeToken,
CdeTokenEndpoint,
CdeWorkloadUser,
CdeWorkloadPassword
CdeWorkloadPassword,
//Standalone
StandaloneMaster,
StandaloneConfigureExecutors,
StandaloneExecutorMemory,
StandaloneExecutorCore
}
static List<IContextParameter> getContextVariables(final String prefixName, Connection conn, Set<IConnParamName> paramSet) {

View File

@@ -104,8 +104,16 @@
context="PostgresPlus wizard"
language="java"
message="wizard for PostgresPlus"
mvn_uri="mvn:org.postgresql/postgresql/42.2.14"
name="postgresql-42.2.14.jar"
mvn_uri="mvn:org.postgresql/postgresql/42.2.25"
name="postgresql-42.2.25.jar"
required="true">
</libraryNeeded>
<libraryNeeded
context="Sybase wizard"
language="java"
message="Needed for create Sybase connection"
mvn_uri="mvn:sap.jdbc4.sqlanywhere/sajdbc4/17.0.0"
name="sajdbc4-17.0.0.jar"
required="true">
</libraryNeeded>
<libraryNeeded

View File

@@ -284,12 +284,12 @@ RepositoryUpdateManager.Title=\u5909\u66F4
RepositoryUpdateManager.Check=\u30C1\u30A7\u30C3\u30AF\u4E2D...
RepositoryUpdateManager.Messages=\u5909\u66F4\u3092\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n \u3053\u306E\u64CD\u4F5C\u306B\u306F\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
RepositoryUpdateManager.NoModificationTitle=\u5909\u66F4\u4E0D\u8981
RepositoryUpdateManager.NoModificationMessages=\u66F4\u65B0\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NoModificationMessages=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u5FC5\u8981\u306A\u5909\u66F4\u304C\u3042\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundMessages=\u95A2\u4FC2\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
RepositoryUpdateManager.NotFoundTitle=\u898B\u3064\u304B\u308A\u307E\u305B\u3093
RepositoryUpdateManager.RenameContextMessages=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u66F4\u65B0\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextMessages=\u540D\u524D\u5909\u66F4\u5909\u6570\u3092\u4ECA\u3059\u3050\u3059\u3079\u3066\u306E\u30B8\u30E7\u30D6\u306B\u30D7\u30ED\u30D1\u30B2\u30FC\u30C8\u3057\u307E\u3059\u304B? \n\n [\u306F\u3044]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u975E\u5E38\u306B\u9577\u3044\u6642\u9593\u304C\u304B\u304B\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\n\n [\u3044\u3044\u3048]\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u53E4\u3044\u5909\u6570\u304C\u30B8\u30E7\u30D6\u5185\u3067\u7D44\u307F\u8FBC\u307F\u306B\u5909\u308F\u308A\u307E\u3059\u3002
RepositoryUpdateManager.RenameContextTitle=\u540D\u524D\u5909\u66F4\u306E\u8CEA\u554F
RepositoryUpdateManager.ItemsToUpdate=\u66F4\u65B0\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RepositoryUpdateManager.ItemsToUpdate=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u30C1\u30A7\u30C3\u30AF
RoutinesFunctionProposal.CreatedBy=\u4F5C\u6210\u8005:
RoutinesFunctionProposal.Description=\u8AAC\u660E:
RoutinesFunctionProposal.Example=\u4F8B:
@@ -356,8 +356,8 @@ EUpdateItemType.Components=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8
EUpdateItemType.Name=\u540D\u524D
EUpdateItemType.JobVersion=\u30B8\u30E7\u30D6\u30D0\u30FC\u30B8\u30E7\u30F3
EUpdateResult.BuiltIn=\u7D44\u307F\u8FBC\u307F\u30E2\u30FC\u30C9\u306B\u5909\u66F4
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u66F4\u65B0
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u66F4\u65B0
EUpdateResult.JobletUpdate=\u30B8\u30E7\u30D6\u30EC\u30C3\u30C8\u30CE\u30FC\u30C9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Update=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EUpdateResult.Reload=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30EA\u30ED\u30FC\u30C9
EUpdateResult.Rename=\u540D\u524D\u3092\u5909\u66F4
EUpdateResult.Add=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u304B\u3089\u8FFD\u52A0

View File

@@ -1,5 +1,5 @@
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content=\u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n\u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractBrandingService_job_license_header_content=// ============================================================================\n//\n// \u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// / JobDesigner (CodeGenerator \u7248\u672C {1})\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002\n//\n// ============================================================================
AbstractBrandingService.routines_license_header_content=\u7248\u6743\u6240\u6709 (c) 2005-2010, Talend Inc.\n//\n// \u6B64\u6E90\u4EE3\u7801\u5DF2\u7531_{0} \u81EA\u52A8\u751F\u6210\n// CodeGenerator \u7248\u672C {1}\n// \u60A8\u53EF\u4EE5\u8BBF\u95EE www.talend.com \u4E86\u89E3 Talend \u4EA7\u54C1\u7684\u66F4\u591A\u4FE1\u606F\u3002\n// \u60A8\u53EF\u4EE5\u6839\u636E GNU LGPL \u8BB8\u53EF\u8BC1\u6761\u6B3E\u5206\u53D1\u6B64\u4EE3\u7801\n// http://www.gnu.org/licenses/lgpl.html)\u3002
AbstractComponentsProvider.folderNotExist=\u6587\u4EF6\u5939 {0} \u4E0D\u5B58\u5728\u3002
AbstractItemMigrationTask.taskFailed=\u8FC1\u79FB\u4EFB\u52A1 {0} \u5728\u8FC1\u79FB\u9879\u76EE {1} \u65F6\u5931\u8D25
AdvancedSocketFactory.failedInitial=\u9519\u8BEF\uFF1A\u65E0\u6CD5\u521D\u59CB\u5316\uFF1A

View File

@@ -1071,8 +1071,10 @@ public class ExtractMetaDataUtils {
}
}
} else {
if (driverJarPathArg.startsWith(MavenUrlHelper.MVN_PROTOCOL)) {
setDriverPath(librairesManagerService, jarPathList, driverJarPathArg);
if (TalendQuoteUtils.removeQuotesIfExist(driverJarPathArg)
.startsWith(MavenUrlHelper.MVN_PROTOCOL)) {
setDriverPath(librairesManagerService, jarPathList,
TalendQuoteUtils.removeQuotesIfExist(driverJarPathArg));
} else {
String jarName = librairesManagerService.getJarNameFromMavenuri(driverJarPathArg);
if (jarName == null) {

View File

@@ -42,6 +42,8 @@ public class JDBCDriverLoader {
private static MultiKeyMap classLoadersMap = new MultiKeyMap();
private static Map<String, HotClassLoader> classLoadersMapBasedOnLibraries = new HashMap<String, HotClassLoader>();
private static MultiKeyMap driverShimCacheMap = new MultiKeyMap();
/**
* Loads the jars for hive embedded mode required, I do not think it is the better method to do this here. Due to
@@ -145,8 +147,14 @@ public class JDBCDriverLoader {
DriverShim wapperDriver = null;
Connection connection = null;
try {
HotClassLoader loader = getHotClassLoader(jarPath, dbType, dbVersion);
wapperDriver = new DriverShim((getDriver(loader, jarPath, driverClassName, dbType, dbVersion)));
HotClassLoader loader = (HotClassLoader) classLoadersMap.get(dbType, dbVersion);
if(driverShimCacheMap.containsKey(driverClassName, dbType, dbVersion)) {
wapperDriver = (DriverShim) driverShimCacheMap.get(driverClassName, dbType, dbVersion);
} else {
loader = getHotClassLoader(jarPath, dbType, dbVersion);
wapperDriver = new DriverShim((getDriver(loader, jarPath, driverClassName, dbType, dbVersion)));
driverShimCacheMap.put(driverClassName, dbType, dbVersion, wapperDriver);
}
// Object driver = loader.loadClass(driverClassName).newInstance();
// wapperDriver = new DriverShim((Driver) (driver));
Properties info = new Properties();
@@ -168,7 +176,8 @@ public class JDBCDriverLoader {
}
if (additionalParams != null && !"".equals(additionalParams)
&& (dbType.toUpperCase().contains("ORACLE") || EDatabaseTypeName.REDSHIFT.getDisplayName().equals(dbType))) {// $NON-NLS-1$//$NON-NLS-2$
&& (dbType.toUpperCase().contains("ORACLE") || EDatabaseTypeName.REDSHIFT.getDisplayName().equals(dbType)
|| EDatabaseTypeName.REDSHIFT_SSO.getDisplayName().equals(dbType))) {// $NON-NLS-1$//$NON-NLS-2$
if (additionalParams.contains(SSLPreferenceConstants.TRUSTSTORE_TYPE)) {
System.setProperty("jsse.enableCBCProtection", "false");//$NON-NLS-1$//$NON-NLS-2$
Object pki = ReflectionUtils.newInstance("oracle.security.pki.OraclePKIProvider", loader, //$NON-NLS-1$

View File

@@ -17,13 +17,12 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import metadata.managment.i18n.Messages;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform;
import org.talend.commons.utils.PasswordEncryptUtil;
import org.talend.core.IRepositoryContextService;
import org.talend.core.database.conn.ConnParameterKeys;
import org.talend.core.database.conn.DatabaseConnStrUtil;
@@ -43,10 +42,13 @@ import org.talend.cwm.helper.TaggedValueHelper;
import org.talend.metadata.managment.utils.MetadataConnectionUtils;
import org.talend.repository.ProjectManager;
import org.talend.repository.model.IProxyRepositoryFactory;
import org.talend.utils.security.StudioEncryption;
import org.talend.utils.sql.ConnectionUtils;
import org.talend.utils.sugars.ReturnCode;
import org.talend.utils.sugars.TypedReturnCode;
import metadata.managment.i18n.Messages;
/**
* @author scorreia
*
@@ -82,7 +84,14 @@ public final class JavaSqlFactory {
public static void savePromptConVars2Cache(Connection conn, IContextParameter param) {
if (param != null && param.isPromptNeeded()) {
String promptConVarsMapKey = getPromptConVarsMapKey(conn, "context." + param.getName()); //$NON-NLS-1$
promptContextVars.put(promptConVarsMapKey, param.getValue());
String paramValue = param.getValue();
if (PasswordEncryptUtil.isPasswordType(param.getType())) {
if (StudioEncryption.hasEncryptionSymbol(paramValue)) {
paramValue = StudioEncryption.getStudioEncryption(StudioEncryption.EncryptionKeyName.SYSTEM)
.decrypt(paramValue);
}
}
promptContextVars.put(promptConVarsMapKey, paramValue);
}
}
@@ -97,7 +106,14 @@ public final class JavaSqlFactory {
if (param != null && param.isPromptNeeded()) {
String promptConVarsMapKey =
getPromptConVarsMapKey(groupName, param.getSource(), "context." + param.getName()); //$NON-NLS-1$
promptContextVars.put(promptConVarsMapKey, param.getValue());
String paramValue = param.getValue();
if (PasswordEncryptUtil.isPasswordType(param.getType())) {
if (StudioEncryption.hasEncryptionSymbol(paramValue)) {
paramValue = StudioEncryption.getStudioEncryption(StudioEncryption.EncryptionKeyName.SYSTEM)
.decrypt(paramValue);
}
}
promptContextVars.put(promptConVarsMapKey, paramValue);
}
}

View File

@@ -226,7 +226,7 @@ public class ManagerConnection {
private List<String> fetchEmbeddedHiveDriverJars(IMetadataConnection metadataConn) {
String dbType = metadataConn.getDbType();
String dbVersion = metadataConn.getDbVersionString();
ILibraryManagerService librairesManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault().getService(
ILibraryManagerService librairesManagerService = GlobalServiceRegister.getDefault().getService(
ILibraryManagerService.class);
List<String> jarPathList = new ArrayList<String>();
@@ -286,6 +286,7 @@ public class ManagerConnection {
if (isSchemaFromSidOrDatabase(type)) {
schemaName = sidOrDatabase;
}
// test the connection
testConnection = ExtractMetaDataFromDataBase.testConnection(dbTypeString, urlConnectionString, username, password,
schemaName, driverClassName, driverJarPath, dbVersionString, additionalParams, retProposedSchema,
@@ -466,6 +467,10 @@ public class ManagerConnection {
this.dbVersionString = dbVersion;
}
public void setAdditionalParams(String additionalParams) {
this.additionalParams = additionalParams;
}
/**
* Sets the isValide.
*

View File

@@ -21,10 +21,13 @@ import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Stack;
import javax.xml.rpc.ServiceException;
@@ -32,6 +35,10 @@ import org.apache.commons.codec.binary.Base64;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.eclipse.core.runtime.Platform;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.PlatformUI;
import org.talend.commons.exception.CommonExceptionHandler;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.exception.PersistenceException;
@@ -41,6 +48,7 @@ import org.talend.core.IRepositoryContextService;
import org.talend.core.database.EDatabase4DriverClassName;
import org.talend.core.database.EDatabaseTypeName;
import org.talend.core.database.conn.version.EDatabaseVersion4Drivers;
import org.talend.core.model.context.ContextUtils;
import org.talend.core.model.metadata.IMetadataConnection;
import org.talend.core.model.metadata.MetadataToolHelper;
import org.talend.core.model.metadata.builder.ConvertionHelper;
@@ -52,15 +60,21 @@ import org.talend.core.model.metadata.builder.connection.MetadataColumn;
import org.talend.core.model.metadata.builder.database.DriverShim;
import org.talend.core.model.metadata.builder.database.ExtractMetaDataUtils;
import org.talend.core.model.metadata.builder.database.IDriverService;
import org.talend.core.model.metadata.builder.database.JavaSqlFactory;
import org.talend.core.model.process.IContext;
import org.talend.core.model.process.IContextParameter;
import org.talend.core.model.properties.ConnectionItem;
import org.talend.core.model.properties.ContextItem;
import org.talend.core.repository.model.ProxyRepositoryFactory;
import org.talend.core.runtime.CoreRuntimePlugin;
import org.talend.core.service.IMetadataManagmentUiService;
import org.talend.cwm.helper.ConnectionHelper;
import org.talend.cwm.helper.SwitchHelpers;
import org.talend.cwm.relational.RelationalFactory;
import org.talend.cwm.relational.TdColumn;
import org.talend.cwm.relational.TdSqlDataType;
import org.talend.cwm.xml.TdXmlElementType;
import org.talend.designer.core.model.utils.emf.talendfile.ContextType;
import org.talend.metadata.managment.connection.manager.HiveConnectionManager;
import org.talend.metadata.managment.connection.manager.ImpalaConnectionManager;
import org.talend.metadata.managment.mdm.AbsMdmConnectionHelper;
@@ -197,12 +211,12 @@ public class MetadataConnectionUtils {
Driver driver = null;
if (!list.isEmpty()) {
for (int i = 0; i < list.size(); i++) {
if (list.get(i) instanceof Driver) {
driver = (Driver) list.get(i);
for (Object element : list) {
if (element instanceof Driver) {
driver = (Driver) element;
}
if (list.get(i) instanceof java.sql.Connection) {
sqlConn = (java.sql.Connection) list.get(i);
if (element instanceof java.sql.Connection) {
sqlConn = (java.sql.Connection) element;
}
}
ReturnCode varc = ConnectionUtils.isValid(sqlConn);
@@ -1353,7 +1367,7 @@ public class MetadataConnectionUtils {
PreparedStatement statement = null;
try {
statement = connection.prepareStatement("SELECT FIRST 1 * FROM " + tableName + ";");
ResultSet resultSet = statement.executeQuery(); // $NON-NLS-1$ //$NON-NLS-2$
ResultSet resultSet = statement.executeQuery(); // $NON-NLS-1$
ResultSetMetaData rsMetaData = resultSet.getMetaData();
columnTypeName = rsMetaData.getColumnTypeName(colIndex);
} catch (Exception e) {
@@ -1387,5 +1401,110 @@ public class MetadataConnectionUtils {
}
return typeName;
}
public static boolean isPromptNeeded(List<IContext> contexts) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IMetadataManagmentUiService.class)) {
IMetadataManagmentUiService mmUIService = GlobalServiceRegister.getDefault()
.getService(IMetadataManagmentUiService.class);
return mmUIService.isPromptNeeded(contexts);
}
return false;
}
public static IContext promptConfirmLauch(List<IContext> contexts, IContext defaultContext) {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IMetadataManagmentUiService.class)) {
IMetadataManagmentUiService mmUIService = GlobalServiceRegister.getDefault()
.getService(IMetadataManagmentUiService.class);
return mmUIService.promptConfirmLauch(PlatformUI.getWorkbench().getDisplay().getActiveShell(), contexts, defaultContext);
}
return null;
}
public static Connection prepareConection(Connection connection) {
return prepareConection(connection, false);
}
public static Connection prepareConection(Connection connection, boolean isDefaultContext) {
// TDQ-19889 msjian: check whether context confirmation needed popup,
// Enabling the prompt to context variables
if (!Platform.isRunning() || !connection.isContextMode()) {
return connection;
}
Connection copyConnection = deepCopy(connection);
JavaSqlFactory.haveSetPromptContextVars = false;
ContextItem contextItem = ContextUtils.getContextItemById2(connection.getContextId());
// only consider the connection currently used context
ContextType contextType = ContextUtils.getContextTypeByName(contextItem.getContext(), connection.getContextName(),
contextItem.getDefaultContext());
IContext jobContext = ContextUtils.convert2IContext(contextType, contextItem.getProperty().getId());
// only when have context
if (jobContext != null) {
boolean promptConfirmLauch = false;
if (GlobalServiceRegister.getDefault().isServiceRegistered(IMetadataManagmentUiService.class)) {
IMetadataManagmentUiService mmUIService = GlobalServiceRegister.getDefault()
.getService(IMetadataManagmentUiService.class);
Shell shell = PlatformUI.getWorkbench().getDisplay().getActiveShell();
if (isDefaultContext) {
promptConfirmLauch = mmUIService.promptConfirmLauch(shell, jobContext);
} else {
promptConfirmLauch = mmUIService.promptConfirmLauch(shell, copyConnection, contextItem);
}
}
if (!promptConfirmLauch) {
return null;
} else {
if (isDefaultContext) {
// save the input prompt context values to cache
for (IContextParameter param : jobContext.getContextParameterList()) {
JavaSqlFactory.savePromptConVars2Cache(connection, param);
}
// set the input values to connection
JavaSqlFactory.setPromptContextValues(copyConnection);
}
}
}
JavaSqlFactory.haveSetPromptContextVars = true;
return copyConnection;
}
public static <T extends EObject> T deepCopy(T emfObject) {
EcoreUtil.Copier copier = new EcoreUtil.Copier(Boolean.TRUE, Boolean.FALSE);
preDeepCopy(emfObject, copier);
T copy = (T) copier.copy(emfObject);
copier.copyReferences();
return copy;
}
private static void preDeepCopy(EObject emfObject, EcoreUtil.Copier copier) {
Stack<EObject> work = new Stack<EObject>();
work.push(emfObject);
Collection<EObject> collection = new LinkedHashSet<EObject>();
while (!work.isEmpty()) {
EObject o = work.pop();
if (collection.contains(o)) {
continue;
}
collection.add(o);
List<EObject> list = o.eContents();
for (EObject eo : list) {
if (!collection.contains(eo)) {
work.push(eo);
}
}
list = o.eCrossReferences();
for (EObject eo : list) {
if (!collection.contains(eo)) {
work.push(eo);
}
}
EObject container = o.eContainer();
if (container != null && !collection.contains(container)) {
work.push(container);
}
}
collection = copier.copyAll(collection);
copier.copyReferences();
}
}

View File

@@ -306,7 +306,7 @@ _UI_FolderItem_type_feature=\u30BF\u30A4\u30D7
_UI_Component_id_feature=Id
_UI_Component_label_feature=\u30E9\u30D9\u30EB
_UI_Component_version_feature=\u30D0\u30FC\u30B8\u30E7\u30F3
_UI_Component_lastUpdateDate_feature=\u6700\u7D42\u66F4\u65B0\u65E5
_UI_Component_lastUpdateDate_feature=\u6700\u7D42\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u65E5
_UI_Component_author_feature=\u4F5C\u6210\u8005
_UI_Component_creationDate_feature=\u4F5C\u6210\u65E5
_UI_Component_deleteDate_feature=\u524A\u9664\u65E5
@@ -398,7 +398,7 @@ _UI_ExecutionTaskCmdPrm_executionTask_feature=\u5B9F\u884C\u30BF\u30B9\u30AF
_UI_ExecutionTaskJobPrm_id_feature=Id
_UI_ExecutionTaskJobPrm_label_feature=\u30E9\u30D9\u30EB
_UI_ExecutionTaskJobPrm_defaultValue_feature=\u30C7\u30D5\u30A9\u30EB\u30C8\u5024
_UI_ExecutionTaskJobPrm_override_feature=\u4E0A\u66F8\u304D
_UI_ExecutionTaskJobPrm_override_feature=\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9
_UI_ExecutionTaskJobPrm_executionTask_feature=\u5B9F\u884C\u30BF\u30B9\u30AF
_UI_ExecutionTaskJobPrm_originalValue_feature=\u5143\u306E\u5024
_UI_TaskExecutionHistory_id_feature=Id
@@ -455,7 +455,7 @@ _UI_TalendTrigger_endTime_feature=\u7D42\u4E86\u6642\u9593
_UI_TalendTrigger_previousFireTime_feature=\u4EE5\u524D\u306E\u30D5\u30A1\u30A4\u30E4\u30FC\u6642\u9593
_UI_TalendTrigger_finalFireTime_feature=\u6700\u7D42\u30D5\u30A1\u30A4\u30E4\u30FC\u6642\u9593
_UI_TalendTrigger_idQuartzTrigger_feature=ID Quartz\u30C8\u30EA\u30AC\u30FC
_UI_TalendTrigger_resumePauseUpdated_feature=\u66F4\u65B0\u3055\u308C\u305F\u4E00\u6642\u505C\u6B62\u306E\u518D\u958B
_UI_TalendTrigger_resumePauseUpdated_feature=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3055\u308C\u305F\u4E00\u6642\u505C\u6B62\u306E\u518D\u958B
_UI_TalendTrigger_previouslyPaused_feature=\u524D\u3082\u3063\u3066\u4E00\u6642\u505C\u6B62
_UI_CronTalendTrigger_cronExpression_feature=Cron\u5F0F
_UI_CronUITalendTrigger_listDaysOfWeek_feature=\u9031\u6B21\u30EA\u30B9\u30C8
@@ -949,7 +949,7 @@ _UI_ExecutionPlanPartCmdPrm_name_feature=\u540D\u524D
_UI_ExecutionPlanPartCmdPrm_value_feature=\u5024
_UI_ExecutionPlanPartJobPrm_id_feature=Id
_UI_ExecutionPlanPartJobPrm_executionPlanPart_feature=\u30D7\u30E9\u30F3\u30D1\u30FC\u30C8\u306E\u5B9F\u884C
_UI_ExecutionPlanPartJobPrm_override_feature=\u4E0A\u66F8\u304D
_UI_ExecutionPlanPartJobPrm_override_feature=\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9
_UI_ExecutionPlanPartJobPrm_name_feature=\u540D\u524D
_UI_ExecutionPlanPartJobPrm_customValue_feature=\u30AB\u30B9\u30BF\u30E0\u5024
_UI_ExecutionPlanPartJobPrm_partCustomValue_feature=\u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9\u306E\u5024\u3092\u5206\u5272
@@ -1048,7 +1048,7 @@ _UI_ConditionType_operator_feature=\u6F14\u7B97\u5B50
_UI_ConditionType_value_feature=\u5024
_UI_ValidationRulesConnection_isSelect_feature=\u9078\u629E
_UI_ValidationRulesConnection_isInsert_feature=\u633F\u5165
_UI_ValidationRulesConnection_isUpdate_feature=\u66F4\u65B0
_UI_ValidationRulesConnection_isUpdate_feature=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
_UI_ValidationRulesConnection_isDelete_feature=\u524A\u9664
_UI_ValidationRulesConnection_type_feature=\u30BF\u30A4\u30D7
_UI_ValidationRulesConnection_baseSchema_feature=\u30D9\u30FC\u30B9\u30B9\u30AD\u30FC\u30DE

View File

@@ -219,6 +219,10 @@
<activity
id="org.talend.rcp.branding.activity.hideImportMenus"
name="hideImportMenus">
</activity>
<activity
id="org.talend.rcp.branding.activity.hideDebugModules"
name="hideDebugModules">
</activity>
<activity
id="org.talend.rcp.branding.activity.hideMenuForTOS"
@@ -342,6 +346,11 @@
activityId="org.talend.rcp.branding.activity.hideImportMenus"
pattern="org.eclipse.ui.ide/org.eclipse.ui.wizards.import.ZipFile">
</activityPatternBinding>
<activityPatternBinding
activityId="org.talend.rcp.branding.activity.hideDebugModules"
pattern="org.eclipse.debug.ui/org.eclipse.debug.ui.ModuleView">
</activityPatternBinding>
</extension>
<extension
point="org.eclipse.core.expressions.propertyTesters">

View File

@@ -7,7 +7,7 @@ Exchange=Exchange
Videos=\u52D5\u753B
Cloud=\u30AF\u30E9\u30A6\u30C9
LinksToolbarItem_Learn=\u30AA\u30F3\u30C7\u30DE\u30F3\u30C9\u30C8\u30EC\u30FC\u30CB\u30F3\u30B0\u3068\u691C\u5B9A
LinksToolbarItem_Documentation=Talend\u30D8\u30EB\u30D7\u30BB\u30F3\u30BF\u30FC - \u30AA\u30F3\u30E9\u30A4\u30F3\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\u30CA\u30EC\u30C3\u30B8\u30D9\u30FC\u30B9
LinksToolbarItem_Documentation=Talend Help Center - \u30AA\u30F3\u30E9\u30A4\u30F3\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\u30CA\u30EC\u30C3\u30B8\u30D9\u30FC\u30B9
LinksToolbarItem_7=\u8CEA\u554F\u3068\u6A5F\u80FD\u306E\u8981\u6C42
LinksToolbarItem_exchange=Talend Exchange\u3078\u306E\u30EA\u30F3\u30AF
LinksToolbarItem_videos=Talend\u30C1\u30E5\u30FC\u30C8\u30EA\u30A2\u30EB\u3078\u306E\u30EA\u30F3\u30AF

View File

@@ -42,7 +42,7 @@ LinksToolbarItem_cloud=Talend Cloud\u3078\u306E\u30EA\u30F3\u30AF
LinksToolbarItem_7=\u8CEA\u554F\u3068\u6A5F\u80FD\u306E\u8981\u6C42
LinksToolbarItem_9=Talend\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3\u3068\u5171\u6709
LinksToolbarItem_exchange=Talend Exchange\u3078\u306E\u30EA\u30F3\u30AF
LinksToolbarItem_Learn=Talend\u30D8\u30EB\u30D7\u30BB\u30F3\u30BF\u30FC - \u30AA\u30F3\u30E9\u30A4\u30F3\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\u30CA\u30EC\u30C3\u30B8\u30D9\u30FC\u30B9
LinksToolbarItem_Learn=Talend Help Center - \u30AA\u30F3\u30E9\u30A4\u30F3\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\u30CA\u30EC\u30C3\u30B8\u30D9\u30FC\u30B9
LinksToolbarItem_videos=Talend\u30C1\u30E5\u30FC\u30C8\u30EA\u30A2\u30EB\u3078\u306E\u30EA\u30F3\u30AF
RegisterWizard.windowTitle={0}\u767B\u9332
tips.createJob=\u307E\u305A\u3001<a>Job Designer</a>\u4F7F\u3063\u3066\u30C7\u30FC\u30BF\u30D5\u30ED\u30FC\u306E\u30B8\u30E7\u30D6\u3092\u4F5C\u6210\u3057\u307E\u3059\u3002

View File

@@ -24,7 +24,7 @@ RegisterWizardPage.legalbottominformations=\u65E2\u306B\u767B\u9332\u304C\u304A\
RegisterWizardPage.logininfosPage2Yes1=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3\u306E\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u3042\u306A\u305F\u306E\u30ED\u30B0\u30A4\u30F3\u304C\u65E2\u306B\u8A18\u9332\u3055\u308C\u3066\u3044\u307E\u3059\u3002
RegisterWizardPage.logininfosPage2Yes2=\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u767B\u9332\u3092\u5B8C\u4E86\u3057\u3066\u304F\u3060\u3055\u3044\u3002\nForum\u3001Bugtracker\u3001Exchange\u306A\u3069\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3054\u3068\u306B\u7570\u306A\u308B\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u4F7F\u7528\u3057\u3066\u3044\u308B\u5834\u5408\u3001\n\u4EE5\u4E0B\u306B\u5165\u529B\u3057\u305F\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u6A19\u6E96\u30D1\u30B9\u30EF\u30FC\u30C9\u306B\n\u306A\u308A\u307E\u3059\u3002
RegisterWizardPage.legalthanks1=\u3042\u308A\u304C\u3068\u3046\u3054\u3056\u3044\u307E\u3059!
RegisterWizardPage.legalthanks2=\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F\u3002
RegisterWizardPage.legalthanks2=\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u304C\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3055\u308C\u307E\u3057\u305F\u3002
RegisterWizardPage.legalconfirm=\u63A5\u7D9A\u60C5\u5831\u306E\u78BA\u8A8D\u30E1\u30FC\u30EB\u3092\u3059\u3050\u306B\u53D7\u4FE1\u3059\u308B\u3067\u3057\u3087\u3046\u3002
RegisterWizardPage.logininfosPage2Not1=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3\u306E\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u3042\u306A\u305F\u306E\u30ED\u30B0\u30A4\u30F3\u304C\u8A18\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
RegisterWizardPage.logininfosPage2Not2=\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u767B\u9332\u3092\u5B8C\u4E86\u3057\u3066\u304F\u3060\u3055\u3044\u3002

View File

@@ -77,6 +77,7 @@ import org.talend.commons.exception.PersistenceException;
import org.talend.commons.runtime.model.emf.provider.EmfResourcesFactoryReader;
import org.talend.commons.runtime.model.emf.provider.ResourceOption;
import org.talend.commons.runtime.model.repository.ERepositoryStatus;
import org.talend.commons.runtime.service.ITaCoKitService;
import org.talend.commons.ui.runtime.image.EImage;
import org.talend.commons.ui.runtime.image.ImageProvider;
import org.talend.core.GlobalServiceRegister;
@@ -99,6 +100,8 @@ import org.talend.designer.maven.tools.AggregatorPomsHelper;
import org.talend.designer.maven.tools.MavenPomSynchronizer;
import org.talend.migration.MigrationReportHelper;
import org.talend.repository.items.importexport.handlers.ImportExportHandlersManager;
import org.talend.repository.items.importexport.handlers.imports.IImportItemsHandler;
import org.talend.repository.items.importexport.handlers.imports.ImportBasicHandler;
import org.talend.repository.items.importexport.handlers.imports.ImportCacheHelper;
import org.talend.repository.items.importexport.handlers.imports.ImportDependencyRelationsHelper;
import org.talend.repository.items.importexport.handlers.model.EmptyFolderImportItem;
@@ -342,7 +345,7 @@ public class ImportItemsWizardPage extends WizardPage {
if (GlobalServiceRegister.getDefault().isServiceRegistered(IExchangeService.class)) {
archivePathField.setEditable(false);
IExchangeService service = (IExchangeService) GlobalServiceRegister.getDefault().getService(
IExchangeService service = GlobalServiceRegister.getDefault().getService(
IExchangeService.class);
String selectedArchive = service.openExchangeDialog();
@@ -807,9 +810,50 @@ public class ImportItemsWizardPage extends WizardPage {
// already checked all
return;
}
List<ItemImportNode> allImportItemNode = nodesBuilder.getAllImportItemNode();
ImportDependencyRelationsHelper.getInstance().checkImportRelationDependency(checkedNodeList, toSelectSet,
nodesBuilder.getAllImportItemNode());
allImportItemNode);
ITaCoKitService coKitService = ITaCoKitService.getInstance();
Set<ItemImportNode> parentNodetoSelectSet = new HashSet<ItemImportNode>();
if (coKitService != null) {
for (ItemImportNode itemImportNode : toSelectSet) {
ImportItem itemRecord = itemImportNode.getItemRecord();
if (itemRecord != null) {
ERepositoryObjectType repositoryType = itemRecord.getRepositoryType();
boolean isTaCoKitType = coKitService.isTaCoKitType(repositoryType);
if (isTaCoKitType) {
IImportItemsHandler importHandler = itemRecord.getImportHandler();
if (importHandler instanceof ImportBasicHandler) {
((ImportBasicHandler) importHandler).resolveItem(resManager, itemRecord);
Item item = itemRecord.getProperty().getItem();
String parentItemId = coKitService.getParentItemIdFromItem(item);
if (StringUtils.isNotBlank(parentItemId)) {
for (ItemImportNode importNode : allImportItemNode) {
ImportItem importItem = importNode.getItemRecord();
if (importItem != null && importItem.getProperty() != null
&& StringUtils.equals(parentItemId, importItem.getProperty().getId())) {
parentNodetoSelectSet.add(importNode);
break;
}
}
}
}
}
}
}
}
if (parentNodetoSelectSet.size() > 0) {
toSelectSet.addAll(parentNodetoSelectSet);
}
filteredCheckboxTree.getViewer().setCheckedElements(toSelectSet.toArray());
}

View File

@@ -10,8 +10,8 @@ LocalRepositoryFactory.Property_File_Broken=\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5
LocalRepositoryFactory.logonDenyMsg=\u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u53E4\u304F\u306A\u3063\u3066\u3044\u307E\u3059\u3002\n\u6700\u521D\u306B[{0}]\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044!
LocalRepositoryFactory.productionLower01=Studio\u3068\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 \n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u958B\u304F\u306B\u306F\u3001Studio [{0}]\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
LocalRepositoryFactory.productionLower02=Studio\u3068\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 \n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u958B\u304F\u306B\u306F\u3001Studio\u30D1\u30C3\u30C1[{0}]\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
LocalRepositoryFactory.productionNewer01=[{1}]\u306B\u66F4\u65B0\u3057\u3088\u3046\u3068\u3057\u3066\u3044\u307E\u3059\u3002\n\u3053\u306E\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u3044\u3061\u3069\u9069\u7528\u3055\u308C\u308B\u3068\u3001\u305D\u308C\u3088\u308A\u53E4\u3044Studio\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306F\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u79FB\u884C\u3057\u307E\u3059\u304B?
LocalRepositoryFactory.productionNewer02=[{1}]\u306B\u66F4\u65B0\u3057\u3088\u3046\u3068\u3057\u3066\u3044\u307E\u3059\u3002\n\u3053\u306E\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u3044\u3061\u3069\u9069\u7528\u3055\u308C\u308B\u3068\u3001\u305D\u308C\u3088\u308A\u53E4\u3044Studio\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306F\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u79FB\u884C\u3057\u307E\u3059\u304B? \n\u306A\u304A\u3001\u73FE\u5728\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3067\u4F7F\u308F\u308C\u3066\u3044\u308B\u30D0\u30FC\u30B8\u30E7\u30F3\u306F[{0}]\u3067\u3059\u3002
LocalRepositoryFactory.productionNewer01=[{1}]\u306B\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u3088\u3046\u3068\u3057\u3066\u3044\u307E\u3059\u3002\n\u3053\u306E\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u3044\u3061\u3069\u9069\u7528\u3055\u308C\u308B\u3068\u3001\u305D\u308C\u3088\u308A\u53E4\u3044Studio\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306F\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u79FB\u884C\u3057\u307E\u3059\u304B?
LocalRepositoryFactory.productionNewer02=[{1}]\u306B\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u3088\u3046\u3068\u3057\u3066\u3044\u307E\u3059\u3002\n\u3053\u306E\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u306E\u9069\u7528\u5F8C\u306F\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092Studio\u306E\u4E0B\u4F4D\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u958B\u304F\u3053\u3068\u306F\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u79FB\u884C\u3057\u307E\u3059\u304B? \n\u306A\u304A\u3001\u73FE\u5728\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3067\u4F7F\u308F\u308C\u3066\u3044\u308B\u30D0\u30FC\u30B8\u30E7\u30F3\u306F[{0}]\u3067\u3059\u3002
LocalRepositoryFactory.logonWarningTitle=\u30ED\u30B0\u30A4\u30F3\u60C5\u5831
LocalRepositoryFactory.login.userCancel=\u30ED\u30B0\u30A4\u30F3\u304C\u30E6\u30FC\u30B6\u30FC\u306B\u3088\u3063\u3066\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F

View File

@@ -102,12 +102,12 @@ MdmReceiveForm.previewNotAvailable=XSD\u30D5\u30A1\u30A4\u30EB\u306B\u5229\u7528
FileStep3.metadataName=\u540D\u524D
FileStep3.metadataComment=\u30B3\u30E1\u30F3\u30C8
FileStep3.groupMetadata=\u30B9\u30AD\u30FC\u30DE
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044
FileStep3.guess=\u63A8\u5B9A
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3059
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059
FileStep3.metadataDescription=\u30B9\u30AD\u30FC\u30DE\u306E\u8AAC\u660E
FileStep3.guessConfirmation=\u5909\u66F4\u3092\u78BA\u5B9A\u3057\u307E\u3059\u304B?
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u3068\u3001\u73FE\u5728\u306E\u30C7\u30FC\u30BF\u304C\u3059\u3079\u3066\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u3044\u3044\u3048\u3092\u9078\u629E\u3059\u308C\u3070\u3001\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u7D9A\u884C\u3057\u307E\u3059\u304B?
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u3068\u3001\u73FE\u5728\u306E\u30C7\u30FC\u30BF\u304C\u3059\u3079\u3066\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u3044\u3044\u3048\u3092\u9078\u629E\u3059\u308C\u3070\u3001\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u7D9A\u884C\u3057\u307E\u3059\u304B?
FileStep3.guessIsDone=\u63A8\u5B9A\u306E\u6210\u529F
FileStep1.nameAlert=\u540D\u524D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044
FileStep1.nameAlertIllegalChar=\u540D\u524D\u30B3\u30F3\u30C6\u30F3\u30C4\u306E\u7981\u6B62\u6587\u5B57

View File

@@ -980,6 +980,9 @@ DatabaseForm.hc.link.repository=R\u00E9f\u00E9rentiel
DatabaseForm.hc.link.title=Cluster Hadoop
DatabaseForm.helpInfo.installDriverLink.url=https://document-link.us.cloud.talend.com/ts_ig_install-external-modules?version=80&lang=fr&env=prd
DatabaseForm.helpInfo.installDriverLink.label=Installer un pilote
DatabaseForm.redshift.driverVersion=Version du pilote
DatabaseForm.redshift.driverVersion.tip=S\u00E9lectionnez un pilote Redshift
DatabaseForm.redshift.useStringAdditionParam=Utiliser un param\u00E8tre de cha\u00EEne de caract\u00E8res
DatabaseTableFilterForm.allSynonyms=Tous les synonymes
DatabaseTableFilterForm.edit=Modifier...
DatabaseTableFilterForm.editFilterName=Modifier le nom du filtre

View File

@@ -154,8 +154,8 @@ DocumentationPage.sourceDocDoNotExist=\u30BD\u30FC\u30B9\u30C9\u30AD\u30E5\u30E1
DocumentationPage.sourceDocIsNotSet=\u30BD\u30FC\u30B9\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u304C\u672A\u8A2D\u5B9A\u3067\u3059\u3002
DocumentationPage.thisTitle.document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3
DocumentationPreferencePage.sourceCodeToHTML=HTML\u751F\u6210\u3078\u306E\u30BD\u30FC\u30B9\u30B3\u30FC\u30C9
DocumentationUpdateWizard.mainPageDescription=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0
DocumentationUpdateWizard.windowTitle=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0
DocumentationUpdateWizard.mainPageDescription=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DocumentationUpdateWizard.windowTitle=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
EbcdicForm.noDir=x2j\u30D5\u30A1\u30A4\u30EB\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30FC\u304C\u5B58\u5728\u3057\u307E\u305B\u3093\u3002
EbcdicForm.genarateFailure=XC2J\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3067\u304D\u307E\u305B\u3093\u3002
EbcdicForm.dataFile=\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB
@@ -183,7 +183,7 @@ ExportProjectsAsAction.processProject=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092
ExportTreeViewer.hideJobTree=\u30B8\u30E7\u30D6\u30C4\u30EA\u30FC\u3092\u975E\u8868\u793A
ExportTreeViewer.selectItems=\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3059\u308B\u30A2\u30A4\u30C6\u30E0\u3092\u9078\u629E:
ExportTreeViewer.showJobTree=\u30B8\u30E7\u30D6\u30C4\u30EA\u30FC\u3092\u8868\u793A
ExtractDocumentationAction.fileErrorMessages=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u306E\u30EA\u30F3\u30AF\u3092\u66F4\u65B0\u3057\u3066\u304F\u3060\u3055\u3044\u3002
ExtractDocumentationAction.fileErrorMessages=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u306E\u30EA\u30F3\u30AF\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u3066\u304F\u3060\u3055\u3044\u3002
ExtractDocumentationAction.fileErrorTitle=\u30D5\u30A1\u30A4\u30EB\u30A8\u30E9\u30FC
ExtractDocumentationAction.text.saveAs=\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58...
ExtractDocumentationAction.toolTipText.extractDoctoFileSys=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u306B\u62BD\u51FA
@@ -282,14 +282,14 @@ FileStep3.filepathAlert=\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\u3092\u6307\u5B9A\u
FileStep3.groupMetadata=\u30B9\u30AD\u30FC\u30DE
FileStep3.guess=\u63A8\u5B9A
FileStep3.guessConfirmation=\u5909\u66F4\u3092\u78BA\u5B9A\u3057\u307E\u3059\u304B?
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u3068\u73FE\u5728\u306E\u30C7\u30FC\u30BF\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u66F4\u65B0\u3057\u306A\u3044\u5834\u5408\u3001\u30C7\u30FC\u30BF\u306F\u73FE\u5728\u306E\u307E\u307E\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u64CD\u4F5C\u3092\u7D9A\u3051\u307E\u3059\u304B?
FileStep3.guessConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u3068\u73FE\u5728\u306E\u30C7\u30FC\u30BF\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u306A\u3044\u5834\u5408\u3001\u30C7\u30FC\u30BF\u306F\u73FE\u5728\u306E\u307E\u307E\u4E0A\u66F8\u304D\u3055\u308C\u307E\u305B\u3093\u3002\u64CD\u4F5C\u3092\u7D9A\u3051\u307E\u3059\u304B?
FileStep3.guessFailure=\u63A8\u5B9A\u306E\u5931\u6557
FileStep3.guessFailureTip=\u63A8\u5B9A\u306E\u5931\u6557
FileStep3.guessFailureTip2=\u30B9\u30C6\u30C3\u30D72\u306E\u30D7\u30EC\u30D3\u30E5\u30FC\u306B\u57FA\u3065\u304F\u63A8\u5B9A
FileStep3.guessIsDone=\u63A8\u5B9A\u306E\u6210\u529F
FileStep3.guessProgress=\u63A8\u5B9A\u3092\u5B9F\u884C\u4E2D...
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3059
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044
FileStep3.guessTip=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059
FileStep3.informationLabel=\u8A2D\u5B9A\u306B\u5F93\u3063\u3066\u4EE5\u4E0B\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044
FileStep3.itemAlert=\u5C11\u306A\u304F\u3066\u30821\u3064\u306E\u30A2\u30A4\u30C6\u30E0\u304C\u30B9\u30AD\u30FC\u30DE\u306B\u5FC5\u8981\u3067\u3059
FileStep3.metadataComment=\u30B3\u30E1\u30F3\u30C8
FileStep3.metadataDescription=\u30B9\u30AD\u30FC\u30DE\u306E\u8AAC\u660E
@@ -633,15 +633,15 @@ StatusEditor.labelColumnTitle=\u30E9\u30D9\u30EB
StatusPreferencePage.docStatusLabel=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u30B9\u30C6\u30FC\u30BF\u30B9
StatusPreferencePage.technicalStatusLabel=\u30C6\u30AF\u30CB\u30AB\u30EB\u30B9\u30C6\u30FC\u30BF\u30B9
StoppablePreviewLoader.inforLabelText.previewInterrupted=\u4E2D\u65AD\u3055\u308C\u305F\u30D7\u30EC\u30D3\u30E5\u30FC
UpdateDocumentationAction.updateDocActionText.updateDoc=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0...
UpdateDocumentationAction.updateDocActionTipText.updateDoc=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u66F4\u65B0
UpdateDocumentationAction.updateDocActionText.updateDoc=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8...
UpdateDocumentationAction.updateDocActionTipText.updateDoc=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C6\u30FC\u30B7\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
VersionAuthorSection.authorLabel=\u4F5C\u6210\u8005
VersionAuthorSection.lockerLabel=\u30ED\u30C3\u30AF\u4FDD\u6301\u8005
VersionAuthorSection.versionLabel=\u30D0\u30FC\u30B8\u30E7\u30F3
VersionManagementDialog.ConfirmMessage=\u9078\u629E\u3055\u308C\u305F\u30A2\u30A4\u30C6\u30E0\u3092\u3059\u3079\u3066\u30D0\u30FC\u30B8\u30E7\u30F3{0}\u306B\u66F4\u65B0\u3057\u307E\u3059\u304B?
VersionManagementDialog.ConfirmMessage=\u9078\u629E\u3055\u308C\u305F\u30A2\u30A4\u30C6\u30E0\u3092\u3059\u3079\u3066\u30D0\u30FC\u30B8\u30E7\u30F3{0}\u306B\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u304B?
VersionManagementDialog.ConfirmTitle=\u78BA\u8A8D
VersionManagementDialog.DeletedTip=\u524A\u9664
VersionManagementDialog.EachVersion=\u5404\u30A2\u30A4\u30C6\u30E0\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u66F4\u65B0\u3057\u307E\u3059\u3002
VersionManagementDialog.EachVersion=\u5404\u30A2\u30A4\u30C6\u30E0\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u3002
VersionManagementDialog.FixedVersion=\u30A2\u30A4\u30C6\u30E0\u3092\u3059\u3079\u3066\u4E00\u5B9A\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5909\u66F4\u3057\u307E\u3059\u3002
VersionManagementDialog.Items=\u30A2\u30A4\u30C6\u30E0
VersionManagementDialog.MajorVersionTip=\u30E1\u30B8\u30E3\u30FC\u30D0\u30FC\u30B8\u30E7\u30F3
@@ -658,7 +658,7 @@ VersionManagementDialog.WarningTitle=\u5909\u66F4\u306A\u3057
VersionManagementDialog.AllDependencies=\u4F9D\u5B58\u9805\u76EE\u3092\u3059\u3079\u3066\u9078\u629E
VersionManagementDialog.Subjob=\u30B5\u30D6\u30B8\u30E7\u30D6\u3092\u3059\u3079\u3066\u9078\u629E
VersionManagementDialog.FixVersion=\u6700\u65B0\u306E\u5834\u5408\u306FtRunJob\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u540C\u4E00\u306B\u3059\u308B
VersionManagementDialog.FixLastVersion=\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u66F4\u65B0\u3059\u308B\u6642\u306BtRunJob\u304C\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u3059\u3079\u3066\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u3053\u306E\u51E6\u7406\u3092\u884C\u3046\u3068\u524D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5FA9\u5143\u3055\u308C\u307E\u3059\u3002\n\u305F\u3068\u3048\u3070\u7236\u89AA\u304C1.0 (tRunJob<child, Latest>)\u3067\u3042\u308B\u3068\u3057\u307E\u3059\u3002\n\u30D0\u30FC\u30B8\u30E7\u30F31.1\u306B\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u3059\u308B\u5834\u5408: \n - \u89AA\u306E\u30D0\u30FC\u30B8\u30E7\u30F31.0\u306F(tRunJob<child, 1.0>)\u3092\u542B\u307F\u307E\u3059\u3002\u5B50\u3082\u30D0\u30FC\u30B8\u30E7\u30F31.0\u3067\u5B9F\u884C\u3059\u308B\u305F\u3081\u3067\u3059\u3002\n - \u6700\u65B0\u7248\u3092\u4F7F\u3044\u7D9A\u3051\u308B\u305F\u3081\u3001\u7236\u89AA\u30D0\u30FC\u30B8\u30E7\u30F31.1\u306B\u306F(tRunJob<child, Latest>)\u304C\u542B\u307E\u308C\u308B\u3088\u3046\u306B\u306A\u308A\u307E\u3059\u3002\n\n\u6CE8\u610F: \u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u65E2\u306B\u56FA\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u304A\u3088\u3073\u6700\u65B0\u7248\u3092\u4F7F\u7528\u3057\u306A\u3044\u5834\u5408\u306F\u4F55\u3082\u3057\u307E\u305B\u3093\u3002
VersionManagementDialog.FixLastVersion=\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u6642\u306BtRunJob\u304C\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u3059\u3079\u3066\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u3053\u306E\u51E6\u7406\u3092\u884C\u3046\u3068\u524D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5FA9\u5143\u3055\u308C\u307E\u3059\u3002\n\u305F\u3068\u3048\u3070\u7236\u89AA\u304C1.0 (tRunJob<child, Latest>)\u3067\u3042\u308B\u3068\u3057\u307E\u3059\u3002\n\u30D0\u30FC\u30B8\u30E7\u30F31.1\u306B\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u3059\u308B\u5834\u5408: \n - \u89AA\u306E\u30D0\u30FC\u30B8\u30E7\u30F31.0\u306F(tRunJob<child, 1.0>)\u3092\u542B\u307F\u307E\u3059\u3002\u5B50\u3082\u30D0\u30FC\u30B8\u30E7\u30F31.0\u3067\u5B9F\u884C\u3059\u308B\u305F\u3081\u3067\u3059\u3002\n - \u6700\u65B0\u7248\u3092\u4F7F\u3044\u7D9A\u3051\u308B\u305F\u3081\u3001\u7236\u89AA\u30D0\u30FC\u30B8\u30E7\u30F31.1\u306B\u306F(tRunJob<child, Latest>)\u304C\u542B\u307E\u308C\u308B\u3088\u3046\u306B\u306A\u308A\u307E\u3059\u3002\n\n\u6CE8\u610F: \u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u65E2\u306B\u56FA\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u304A\u3088\u3073\u6700\u65B0\u7248\u3092\u4F7F\u7528\u3057\u306A\u3044\u5834\u5408\u306F\u4F55\u3082\u3057\u307E\u305B\u3093\u3002
XPathProposalProvider.contentProposal=<< \u3042\u307E\u308A\u306B\u3082\u591A\u304F\u306E\u30CE\u30FC\u30C9\u3001\u5024\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093 ... >>,
XmlFileStep1.groupSchemaTarget=\u30BF\u30FC\u30B2\u30C3\u30C8\u30B9\u30AD\u30FC\u30DE
XmlFileStep1.sourceSchema=\u30BD\u30FC\u30B9\u30B9\u30AD\u30FC\u30DE
@@ -736,7 +736,7 @@ ExportItemWizardPage.labelText=\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3059\u308B\
ExportItemWizardPage.waring=\u8B66\u544A
ReloadSystemRoutinesAction.logInfo.sysRoutinesSuccessfullyReloaded=\u30B7\u30B9\u30C6\u30E0\u30EB\u30FC\u30C1\u30F3\u304C\u6B63\u3057\u304F\u30EA\u30ED\u30FC\u30C9\u3055\u308C\u307E\u3057\u305F
StatusManagementDialog.FixedStatus=\u3059\u3079\u3066\u306E\u30C6\u30AF\u30CB\u30AB\u30EB\u30A2\u30A4\u30C6\u30E0\u3092\u4E00\u5B9A\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u306B\u5909\u66F4\u3057\u307E\u3059\u3002
StatusManagementDialog.EachStatus=\u5404\u30A2\u30A4\u30C6\u30E0\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u3092\u66F4\u65B0
StatusManagementDialog.EachStatus=\u5404\u30A2\u30A4\u30C6\u30E0\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
StatusManagementDialog.FixedDocumentStatus=\u3059\u3079\u3066\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u9805\u76EE\u3092\u540C\u4E00\u30B9\u30C6\u30FC\u30BF\u30B9\u3078\u5909\u66F4
StatusManagementDialog.Status=\u30B9\u30C6\u30FC\u30BF\u30B9
StatusManagementDialog.NewStatus=\u65B0\u898F\u30B9\u30C6\u30FC\u30BF\u30B9
@@ -802,8 +802,8 @@ AbstractSalesforceStepForm.fetchModule=Salesforce\u30B5\u30FC\u30D3\u30B9\u306B\
ConnectionContextHelper.ContextTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9
ConnectionContextHelper.InConextMessages=\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u3057\u305F\u3002
ConnectionContextHelper.OutConextMessages=\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
ConnectionContextHelper.UpdateMessages=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B?
ConnectionContextHelper.UpdateTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u66F4\u65B0
ConnectionContextHelper.UpdateMessages=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059\u304B?
ConnectionContextHelper.UpdateTitle=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
ContextSetsSelectionDialog.ContextSets=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30C8
ContextSetsSelectionDialog.Messages=\u73FE\u5728\u306E\u63A5\u7D9A\u306F\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E2\u30FC\u30C9\u3067\u3059\u3002
ContextSetsSelectionDialog.Source=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BD\u30FC\u30B9:
@@ -916,7 +916,7 @@ DatabaseForm.encryption=\u6697\u53F7\u5316
DatabaseForm.encryption.useSSLEncryption=SSL\u6697\u53F7\u5316\u3092\u4F7F\u7528
DatabaseForm.encryption.useSSLEncryption.trustStorePath=\u30C8\u30E9\u30B9\u30C8\u30B9\u30C8\u30A2\u30D1\u30B9
DatabaseForm.encryption.useSSLEncryption.trustStorePassword=\u30C8\u30E9\u30B9\u30C8\u30B9\u30C8\u30A2\u30D1\u30B9\u30EF\u30FC\u30C9
DatabaseForm.encryption.useSSLEncryption.needClientAuth=\u30AF\u30E9\u30A4\u30A8\u30F3\u30C8\u8A8D\u8A3C\u304C\u5FC5\u8981
DatabaseForm.encryption.useSSLEncryption.needClientAuth=\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u8A8D\u8A3C\u304C\u5FC5\u8981
DatabaseForm.encryption.useSSLEncryption.keyStorePath=\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9
DatabaseForm.encryption.useSSLEncryption.keyStorePassword=\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9
DatabaseForm.encryption.useSSLEncryption.disableCBCProtection=CBC\u4FDD\u8B77\u3092\u7121\u52B9\u5316
@@ -1010,7 +1010,7 @@ DatabaseTableForm.illegalChar==\u540D\u524D\u306B\u4E0D\u6B63\u306A\u6587\u5B57\
DatabaseTableForm.no_such_table=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u5B58\u5728\u3059\u308B\u30C6\u30FC\u30D6\u30EB\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
DatabaseTableForm.refresh.text=\u3053\u306E\u30DC\u30BF\u30F3\u3092\u62BC\u3057\u3066\u30B9\u30AD\u30FC\u30DE\u3092\u3059\u3079\u3066\u53D6\u5F97\u3057\u307E\u3059
DatabaseTableForm.retreiveButtonConfirmation=\u5909\u66F4\u3092\u78BA\u5B9A\u3057\u307E\u3059\u304B?
DatabaseTableForm.retreiveButtonConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u306F\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3059\u308B\u3068\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002\u7D9A\u3051\u307E\u3059\u304B\uFF1F
DatabaseTableForm.retreiveButtonConfirmationMessage=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u3001\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u306F\u7570\u306A\u308A\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3059\u308B\u3068\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002\u7D9A\u3051\u307E\u3059\u304B\uFF1F
DatabaseTableForm.retreiveButtonIsAccessible=[Retrieve Schema] (\u30B9\u30AD\u30FC\u30DE\u306E\u53D6\u5F97)\u30DC\u30BF\u30F3\u304C\u5229\u7528\u53EF\u80FD\u306B\u306A\u308A\u307E\u3057\u305F\u3002
DatabaseTableForm.guessSchema=\u30B9\u30AD\u30FC\u30DE\u3092\u63A8\u6E2C
DatabaseTableForm.type=\u578B: {0}
@@ -1019,15 +1019,15 @@ DatabaseTableForm.typeTable=\u30BF\u30A4\u30D7: TABLE
DatabaseTableWizard.description=\u30C6\u30FC\u30D6\u30EB\u7528\u30D5\u30A3\u30EB\u30BF\u30FC\u3002
DatabaseWizard.windowTitle=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A
DatabaseWizard.ReloadTitle=\u30EA\u30ED\u30FC\u30C9\u3092\u78BA\u8A8D
DatabaseWizard.ReloadMessages=\u63A5\u7D9A\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F\u3002\u5206\u6790\u304C\u4F9D\u5B58\u3057\u3066\u3044\u308B\u3053\u306E\u63A5\u7D9A\u306E\u5206\u6790\u6E08\u307F\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
DatabaseWizard.ReloadMessages=\u63A5\u7D9A\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u304C\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3055\u308C\u307E\u3057\u305F\u3002\u5206\u6790\u304C\u4F9D\u5B58\u3057\u3066\u3044\u308B\u3053\u306E\u63A5\u7D9A\u306E\u5206\u6790\u6E08\u307F\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
DatabaseWizardPage.descriptionCreate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u5B9A\u7FA9
DatabaseWizardPage.descriptionCreate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u5B9A\u7FA9
DatabaseWizardPage.descriptionUpdate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u66F4\u65B0
DatabaseWizardPage.descriptionUpdate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u66F4\u65B0
DatabaseWizardPage.descriptionUpdate.Step1=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DatabaseWizardPage.descriptionUpdate.Step2=\u63A5\u7D9A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
DatabaseWizardPage.titleCreate.Step1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u4E0A\u306E\u65B0\u898F\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A - \u30B9\u30C6\u30C3\u30D7 1/2
DatabaseWizardPage.titleCreate.Step2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u4E0A\u306E\u65B0\u898F\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A - \u30B9\u30C6\u30C3\u30D7 2/2
DatabaseWizardPage.titleUpdate.Step1=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u66F4\u65B0 - \u30B9\u30C6\u30C3\u30D71/2
DatabaseWizardPage.titleUpdate.Step2=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u66F4\u65B0 - \u30B9\u30C6\u30C3\u30D72/2
DatabaseWizardPage.titleUpdate.Step1=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 - \u30B9\u30C6\u30C3\u30D71/2
DatabaseWizardPage.titleUpdate.Step2=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 - \u30B9\u30C6\u30C3\u30D72/2
DelimitedFilePreview.column=\u30AB\u30E9\u30E0
DelimitedFileStep2Form.14=\u6570\u5024\u306E\u307F\u53EF\u80FD\u3067\u3059\u3002
DelimitedFileStep2Form.onlyNumber=\u6570\u5024\u306E\u307F\u53EF\u80FD\u3067\u3059\u3002
@@ -1057,27 +1057,27 @@ XmlFileStep2Form.Preview=\u30D7\u30EC\u30D3\u30E5\u30FC
XmlFileStep2Form.Output=\u51FA\u529B
XmlFileStep2Form.fileViewer=\u30D5\u30A1\u30A4\u30EB\u30D3\u30E5\u30FC\u30A2\u30FC
FileStep3Form.nameInvalid=\u540D\u524D\u304C\u7121\u52B9\u3067\u3059
FileStep3.guessConfirmationMessageWithDQ=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u306E\u66F4\u65B0\u3092\u884C\u3046\u3068\u73FE\u6642\u70B9\u306E\u30C7\u30FC\u30BF\u304A\u3088\u3073DQ\u95A2\u9023\u306E\u5206\u6790\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002NO\u3092\u9078\u629E\u3059\u308B\u3068\u73FE\u6642\u70B9\u306E\u30C7\u30FC\u30BF\u3092\u305D\u306E\u307E\u307E\u4F7F\u7528\u3057\u307E\u3059\u3002\u64CD\u4F5C\u3092\u7D9A\u3051\u307E\u3059\u304B\uFF1F,,
FileStep3.guessConfirmationMessageWithDQ=\u30B9\u30AD\u30FC\u30DE\u8A2D\u5B9A\u304C\u5909\u66F4\u3055\u308C\u73FE\u5728\u306E\u30B9\u30AD\u30FC\u30DE\u30D7\u30EC\u30D3\u30E5\u30FC\u3068\u7570\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u30B9\u30AD\u30FC\u30DE\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u884C\u3046\u3068\u73FE\u6642\u70B9\u306E\u30C7\u30FC\u30BF\u304A\u3088\u3073DQ\u95A2\u9023\u306E\u5206\u6790\u306F\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\u3002NO\u3092\u9078\u629E\u3059\u308B\u3068\u73FE\u6642\u70B9\u306E\u30C7\u30FC\u30BF\u3092\u305D\u306E\u307E\u307E\u4F7F\u7528\u3057\u307E\u3059\u3002\u64CD\u4F5C\u3092\u7D9A\u3051\u307E\u3059\u304B\uFF1F,,
FileTableWizardPage.descriptionCreate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0
FileTableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u3042\u308B\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3057\u307E\u3059
FileTableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u3042\u308B\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u307E\u3059
FileTableWizardPage.titleCreate="{0}"\u4E0A\u306E\u65B0\u3057\u3044\u30B9\u30AD\u30FC\u30DE
FileTableWizardPage.titleUpdate="{0}"\u3068\u3044\u3046\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
FileTableWizardPage.titleUpdate="{0}"\u3068\u3044\u3046\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizard.windowTitleCreate=\u65B0\u898F\u306E\u56FA\u5B9A\u9577\u30D5\u30A1\u30A4\u30EB
FileWizard.windowTitleUpdate=\u65E2\u5B58\u306E\u56FA\u5B9A\u9577\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6
FileWizardPage.descriptionCreateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionCreateStep3=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0\n\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9
FileWizardPage.descriptionUpdateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u66F4\u65B0
FileWizardPage.descriptionUpdateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u66F4\u65B0
FileWizardPage.descriptionUpdateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u66F4\u65B0\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.descriptionUpdateStep0=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizardPage.descriptionUpdateStep1=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6\n\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u3068\u5F62\u5F0F\u8A2D\u5B9A\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
FileWizardPage.descriptionUpdateStep2=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u3067\u65E2\u5B58\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\n\u89E3\u6790\u30B8\u30E7\u30D6\u306E\u8A2D\u5B9A\u3092\u5B9A\u7FA9
FileWizardPage.of=of
FileWizardPage.titleCreate=\u30D5\u30A1\u30A4\u30EB - \u30B9\u30C6\u30C3\u30D7
FileWizardPage.titleUpdate=\u30D5\u30A1\u30A4\u30EB - \u30B9\u30C6\u30C3\u30D7
GenericSchemaStep2Form.SelectDatabaseType=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30DE\u30C3\u30D4\u30F3\u30B0\u30BF\u30A4\u30D7\u3092\u9078\u629E
GenericSchemaWizard.CreateNewGenericSchema=\u65B0\u3057\u3044\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
GenericSchemaWizard.SaveAsGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3068\u3057\u3066\u4FDD\u5B58
GenericSchemaWizard.UpdateGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
GenericSchemaWizard.UpdateGenericSchema=\u6C4E\u7528\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
LDAPSchemaStep1Form.CheckConnection= \u63A5\u7D9A\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B\u305F\u3081\u306B\u4E0B\u8A18\u306E\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002
LDAPSchemaStep1Form.CheckNetWorkParameter=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u30C1\u30A7\u30C3\u30AF
LDAPSchemaStep1Form.EncryptionMethod=\u6697\u53F7\u5316\u65B9\u5F0F\uFF1A
@@ -1112,7 +1112,7 @@ LDAPSchemaStep3Form.selectAllTipText=\u30B9\u30AD\u30FC\u30DE\u5C5E\u6027\u3092\
LDAPSchemaStep3Form.selectNoneText=\u4F55\u3082\u9078\u629E\u3057\u306A\u3044
LDAPSchemaStep3Form.selectNoneTipText=\u30B9\u30AD\u30FC\u30DE\u5C5E\u6027\u3092\u9078\u629E\u3057\u306A\u3044
LDAPSchemaWizard.CreateNewLdapSchema=\u65B0\u3057\u3044LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
LDAPSchemaWizard.UpdateLdapSchema=LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
LDAPSchemaWizard.UpdateLdapSchema=LDAP\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
LDIFReader.ioException.cannotConstrauctURL=: URL\u3092\u69CB\u6210\u3067\u304D\u307E\u305B\u3093
LDIFReader.ioException.protocolNotSupported=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30D7\u30ED\u30C8\u30B3\u30EB :
LDIFReader.ioException.unknow=\u672A\u77E5\u306E\u30BF\u30A4\u30D7\u3002
@@ -1193,9 +1193,9 @@ ShowAddedContextdialog.Title=\u8FFD\u52A0\u3055\u308C\u305F\u30B3\u30F3\u30C6\u3
ShowAddedContextdialog.Variables=\u5909\u6570
TableWizard.windowTitle=\u30B9\u30AD\u30FC\u30DE
TableWizardPage.descriptionCreate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u8FFD\u52A0
TableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306E\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
TableWizardPage.descriptionUpdate=\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC\u306E\u65E2\u5B58\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
TableWizardPage.titleCreate=\u63A5\u7D9A\u5185\u306E\u65B0\u3057\u3044\u30B9\u30AD\u30FC\u30DE
TableWizardPage.titleUpdate=\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
TableWizardPage.titleUpdate=\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
WSDLSchemaStep1Form.ENDPOINTURI=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8URI
WSDLSchemaStep1Form.MethodName=\u30E1\u30BD\u30C3\u30C9
WSDLSchemaStep1Form.NeedAuth=\u8A8D\u8A3C\u304C\u5FC5\u8981\u3067\u3059\u304B?
@@ -1218,7 +1218,7 @@ WSDLSchemaStep1Form.preview=\u30D7\u30EC\u30D3\u30E5\u30FC
WSDLSchemaStep1Form.TimeOutTitle=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8(\u79D2)
WSDLSchemaWizard.CreateNewWSDLSchema=\u65B0\u3057\u3044WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u4F5C\u6210
WSDLSchemaWizard.SaveAsWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3068\u3057\u3066\u4FDD\u5B58
WSDLSchemaWizard.UpdateWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0
WSDLSchemaWizard.UpdateWSDLSchema=WSDL\u30B9\u30AD\u30FC\u30DE\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
XmlFileStep1.filepathXml=XML
XmlFileStep1.groupFileViewer=\u30B9\u30AD\u30FC\u30DE\u30D3\u30E5\u30FC\u30A2\u30FC
XmlFileStep1Form.limitation=\u5236\u9650
@@ -1228,7 +1228,7 @@ XmlFileStep1Form.ImportSchemaNotExistError=\u5FC5\u8981\u306A\u53C2\u7167\u30B9\
XmlFileWizard.windowTitleCreate=\u65B0\u3057\u3044XML\u30D5\u30A1\u30A4\u30EB
XmlFileWizard.windowTitleUpdate=\u65E2\u5B58\u306EXML\u30D5\u30A1\u30A4\u30EB\u3092\u7DE8\u96C6
XmlFileWizard.newColumnsDectect.title=\u65B0\u3057\u3044\u30AB\u30E9\u30E0\u3092\u691C\u51FA
XmlFileWizard.newColumnsDectect.desc=\u65B0\u898F\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u62BD\u51FA\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u66F4\u65B0\u3092\u53CD\u6620\u3055\u305B\u308B\u305F\u3081\u306B\u306F\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9\u3057\u306A\u304A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
XmlFileWizard.newColumnsDectect.desc=\u65B0\u898F\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u62BD\u51FA\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u53CD\u6620\u3055\u305B\u308B\u305F\u3081\u306B\u306F\u30B9\u30AD\u30FC\u30DE\u3092\u5B9A\u7FA9\u3057\u306A\u304A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
XmlFileOutputStep2Form.refresh=[\u30B9\u30AD\u30FC\u30DE\u30EA\u30B9\u30C8]\u30D3\u30E5\u30FC\u30A2\u30FC\u306E\u66F4\u65B0
MetadataTableEditor.ColumnNameIsNull=\u30A8\u30E9\u30FC: \u30AB\u30E9\u30E0\u540D\u304CNULL\u3067\u3059\u3002
MetadataTalendTypeEditor.button.edit=\u7DE8\u96C6(&D)

View File

@@ -88,6 +88,7 @@ import org.talend.metadata.managment.connection.manager.HiveConnectionManager;
import org.talend.metadata.managment.repository.ManagerConnection;
import org.talend.metadata.managment.ui.utils.ConnectionContextHelper;
import org.talend.metadata.managment.ui.utils.SwitchContextGroupNameImpl;
import org.talend.metadata.managment.utils.MetadataConnectionUtils;
import org.talend.repository.RepositoryWorkUnit;
import org.talend.repository.metadata.i18n.Messages;
import org.talend.repository.model.IProxyRepositoryFactory;
@@ -719,7 +720,7 @@ public abstract class AbstractCreateTableAction extends AbstractCreateAction {
ISAPProviderService sapService = null;
if (GlobalServiceRegister.getDefault().isServiceRegistered(ISAPProviderService.class)) {
sapService = (ISAPProviderService) GlobalServiceRegister.getDefault().getService(ISAPProviderService.class);
sapService = GlobalServiceRegister.getDefault().getService(ISAPProviderService.class);
if (sapService != null) {
IWizard sapWizard = sapService.newWizard(PlatformUI.getWorkbench(), creation, node, getExistingNames());
if (sapWizard != null) {
@@ -850,7 +851,12 @@ public abstract class AbstractCreateTableAction extends AbstractCreateAction {
ConnParameterKeys.CONN_PARA_KEY_USE_KRB));
// TUP-596 : Update the context name in connection when the user does a context switch in DI
String oldContextName = connection.getContextName();
IMetadataConnection metadataConnection = ConvertionHelper.convert(connection, false, null);
Connection copyConnection = MetadataConnectionUtils.prepareConection(connection);
if (copyConnection == null) {
return;
}
IMetadataConnection metadataConnection = ConvertionHelper.convert(copyConnection, false,
copyConnection.getContextName());
String newContextName = connection.getContextName();
if (oldContextName != null && newContextName != null && !oldContextName.equals(newContextName)) {
if (node != null && node.getObject() != null && node.getObject().getProperty() != null) {
@@ -864,7 +870,7 @@ public abstract class AbstractCreateTableAction extends AbstractCreateAction {
boolean isTcomDB = false;
IGenericDBService dbService = null;
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericDBService.class)) {
dbService = (IGenericDBService) GlobalServiceRegister.getDefault().getService(
dbService = GlobalServiceRegister.getDefault().getService(
IGenericDBService.class);
}
if(dbService != null){
@@ -982,7 +988,7 @@ public abstract class AbstractCreateTableAction extends AbstractCreateAction {
}
};
repositoryWorkUnit.setAvoidUnloadResources(isAvoidUnloadResources());
IRepositoryService repositoryService = (IRepositoryService) GlobalServiceRegister.getDefault().getService(
IRepositoryService repositoryService = GlobalServiceRegister.getDefault().getService(
IRepositoryService.class);
repositoryService.getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
monitor.done();

View File

@@ -109,6 +109,7 @@ import org.talend.core.hadoop.version.custom.HadoopCustomVersionDefineDialog;
import org.talend.core.hadoop.version.custom.HadoopVersionControlUtils;
import org.talend.core.language.ECodeLanguage;
import org.talend.core.language.LanguageManager;
import org.talend.core.model.context.ContextUtils;
import org.talend.core.model.metadata.IMetadataConnection;
import org.talend.core.model.metadata.MetadataTalendType;
import org.talend.core.model.metadata.builder.ConvertionHelper;
@@ -121,6 +122,7 @@ import org.talend.core.model.metadata.builder.database.JavaSqlFactory;
import org.talend.core.model.metadata.connection.hive.HiveModeInfo;
import org.talend.core.model.metadata.connection.hive.HiveServerVersionInfo;
import org.talend.core.model.properties.ConnectionItem;
import org.talend.core.model.properties.ContextItem;
import org.talend.core.model.repository.ERepositoryObjectType;
import org.talend.core.model.repository.IRepositoryViewObject;
import org.talend.core.model.utils.ContextParameterUtils;
@@ -665,7 +667,7 @@ public class DatabaseForm extends AbstractForm {
} else if (isDBTypeSelected(EDatabaseConnTemplate.IMPALA)) {
initImpalaSettings();
initImpalaInfo();
} else if (isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT)) {
} else if (isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT) || isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT_SSO)) {
initRedshiftAdditionalParamSetting();
} else if (isHiveDBConnSelected()) {
// Changed by Marvin Wang on Oct. 15, 2012 for but TDI-23235.
@@ -4182,7 +4184,8 @@ public class DatabaseForm extends AbstractForm {
}
private void setupDefaultRedshiftAdditionalParamSetting() {
boolean isRedshiftSelected = isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT);
boolean isRedshiftSelected = isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT)
|| isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT_SSO);
if (isRedshiftSelected) {
redshiftDriverCombo.setText(ERedshiftDriver.DRIVER_V2.getDisplayName());
}
@@ -4513,16 +4516,26 @@ public class DatabaseForm extends AbstractForm {
}
final ManagerConnection managerConnection = new ManagerConnection();
StringBuffer sgb = new StringBuffer();
Connection connection = connectionItem.getConnection();
Connection copyConnection = connection;
if (isContextMode()) { // context mode
String connectionTypeName = connectionItem.getConnection().getConnectionTypeName();
String connectionTypeName = connection.getConnectionTypeName();
if (connectionTypeName.equals(EDatabaseConnTemplate.HBASE.getDBDisplayName())
|| connectionTypeName.equals(EDatabaseConnTemplate.HIVE.getDBDisplayName())) {
selectedContextType = ConnectionContextHelper.getContextTypeForContextMode(connectionItem.getConnection(), true);
selectedContextType = ConnectionContextHelper.getContextTypeForContextMode(connection, true);
} else {
selectedContextType = ConnectionContextHelper.getContextTypeForContextMode(connectionItem.getConnection());
JavaSqlFactory.clearPromptContextCache();
copyConnection = MetadataConnectionUtils.prepareConection(connection);
if (copyConnection == null) {
checkButton.setEnabled(true);
return;
}
ContextItem contextItem = ContextUtils.getContextItemById2(copyConnection.getContextId());
selectedContextType = ContextUtils.getContextTypeByName(contextItem.getContext(), copyConnection.getContextName(),
contextItem.getDefaultContext());
}
String urlStr = null;
urlStr = DBConnectionContextUtils.setManagerConnectionValues(managerConnection, connectionItem, selectedContextType,
urlStr = DBConnectionContextUtils.setManagerConnectionValues(managerConnection, copyConnection, selectedContextType,
getConnectionDBType());
if (isImpalaDBConnSelected()) {
String contextName = getConnection().getContextName();
@@ -4558,6 +4571,25 @@ public class DatabaseForm extends AbstractForm {
}
}
urlConnectionStringText.setText(urlStr);
if (isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT) || isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT_SSO)) {
if (ERedshiftDriver.DRIVER_V2.getDisplayName().equals(redshiftDriverCombo.getText())
&& !useStringAdditionParam.getSelection()) {
Properties info = new Properties();
List<Map<String, Object>> entryProperties = additionParamTable.getPropertiesTableModel().getBeansList();
for (Map<String, Object> entryMap : entryProperties) {
String key = TalendQuoteUtils.removeQuotes(String.valueOf(entryMap.get("KEY")));
if (StringUtils.isNotBlank(key)) {
String value = TalendQuoteUtils.removeQuotes(String.valueOf(entryMap.get("VALUE")));
ConvertionHelper.updateAdditionParam(sgb, info, key, value);
}
}
managerConnection.setAdditionalParams(sgb.toString());
}
String driverVName = ERedshiftDriver.getEnameByDisplayName(redshiftDriverCombo.getText());
if (StringUtils.isNotBlank(driverVName)) {
managerConnection.setDbVersionString(driverVName);
}
}
} else {
String versionStr = dbVersionCombo.getText();
if (isHiveDBConnSelected()) {
@@ -4613,7 +4645,7 @@ public class DatabaseForm extends AbstractForm {
}
String dbVersionString = enableDbVersion() ? versionStr : null;
if (isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT)) {
if (isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT) || isDBTypeSelected(EDatabaseConnTemplate.REDSHIFT_SSO)) {
if (ERedshiftDriver.DRIVER_V2.getDisplayName().equals(redshiftDriverCombo.getText())
&& !useStringAdditionParam.getSelection()) {
Properties info = new Properties();
@@ -4749,7 +4781,7 @@ public class DatabaseForm extends AbstractForm {
setPropertiesFormEditable(true);
}
}
String msg = checkDBVersion();
String msg = checkDBVersion(copyConnection);
if (msg != null) {
updateStatus(IStatus.WARNING, msg);
}
@@ -7401,7 +7433,7 @@ public class DatabaseForm extends AbstractForm {
return false;
}
EDatabaseConnTemplate template = EDatabaseConnTemplate.indexOfTemplate(getConnectionDBType());
return template != null && template == EDatabaseConnTemplate.REDSHIFT;
return template != null && (template == EDatabaseConnTemplate.REDSHIFT || template == EDatabaseConnTemplate.REDSHIFT_SSO);
}
/**
@@ -7648,11 +7680,11 @@ public class DatabaseForm extends AbstractForm {
return getConnectionDBType().trim().length() == 0;
}
private String checkDBVersion() {
private String checkDBVersion(Connection conn) {
String msg = null;
EDatabaseVersion4Drivers version = EDatabaseVersion4Drivers.indexOfByVersionDisplay(dbVersionCombo.getText());
ExtractMetaDataUtils extractMeta = ExtractMetaDataUtils.getInstance();
DatabaseConnection connection = getConnection();
DatabaseConnection connection = (DatabaseConnection) conn;
List<EDatabaseVersion4Drivers> dbTypeList = EDatabaseVersion4Drivers.indexOfByDbType(connection.getDatabaseType());
if (version != null && dbTypeList.size() > 1) {
EDatabaseTypeName dbType = EDatabaseTypeName.getTypeFromDbType(getConnection().getDatabaseType());

View File

@@ -15,17 +15,17 @@ UpdateWizardModel.local.folder.must.be.folder=\u30ED\u30FC\u30AB\u30EB\u30D5\u30
UpdateWizardModel.local.folder.must.exist.error=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u5B58\u5728\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
UpdateWizardModel.local.folder.required.error=\u65E2\u5B58\u306E\u30ED\u30FC\u30AB\u30EB\u30D5\u30A9\u30EB\u30C0\u30FC\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
UpdateWizardModel.url.invalid.error=\u30AB\u30B9\u30BF\u30E0\u30B5\u30A4\u30C8\u306EURL\u304C\u7121\u52B9\u3067\u3059\u3002
UpdateWizardModel.url.missing.error=\u30AB\u30B9\u30BF\u30E0\u66F4\u65B0\u30B5\u30A4\u30C8\u306EURL\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
UpdateWizardModel.url.missing.error=\u30AB\u30B9\u30BF\u30E0\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u306EURL\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
SelectExtraFeaturesToInstallWizardPage.one.feature.must.be.selected=\u6A5F\u80FD\u3092\u5C11\u306A\u304F\u3068\u30821\u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044
ChooseUpdateSitesWizardPage.choose.local.folder.dialog.title=\u66F4\u65B0\u30B5\u30A4\u30C8\u306E\u30D5\u30A9\u30EB\u30C0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002
ChooseUpdateSitesWizardPage.custom.remote.site.tooltip=\u30AB\u30B9\u30BF\u30E0\u66F4\u65B0\u30B5\u30A4\u30C8\u306EURL\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u9078\u629E\u3055\u308C\u305F\u6A5F\u80FD\u3092Talend\u66F4\u65B0\u30B5\u30A4\u30C8\u304B\u3089\u306E\u307F1\u56DE\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3001\u3053\u306E\u5185\u90E8\u66F4\u65B0\u30B5\u30A4\u30C8\u3092\u7D4C\u7531\u3057\u3066\u3055\u307E\u3056\u307E\u306AStudio\u306B\u914D\u5E03\u3067\u304D\u307E\u3059\u3002\u4F8B: http://update.talend.org/
ChooseUpdateSitesWizardPage.custom.remote.update.site=\u30AB\u30B9\u30BF\u30E0\u30EA\u30E2\u30FC\u30C8\u66F4\u65B0\u30B5\u30A4\u30C8
ChooseUpdateSitesWizardPage.choose.local.folder.dialog.title=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u306E\u30D5\u30A9\u30EB\u30C0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002
ChooseUpdateSitesWizardPage.custom.remote.site.tooltip=\u30AB\u30B9\u30BF\u30E0\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u306EURL\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u9078\u629E\u3055\u308C\u305F\u6A5F\u80FD\u3092Talend\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u304B\u3089\u306E\u307F1\u56DE\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3001\u3053\u306E\u5185\u90E8\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u3092\u7D4C\u7531\u3057\u3066\u3055\u307E\u3056\u307E\u306AStudio\u306B\u914D\u5E03\u3067\u304D\u307E\u3059\u3002\u4F8B: http://update.talend.org/
ChooseUpdateSitesWizardPage.custom.remote.update.site=\u30AB\u30B9\u30BF\u30E0\u30EA\u30E2\u30FC\u30C8\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8
ChooseUpdateSitesWizardPage.default.remote.site.tooltip=\u9078\u629E\u3055\u308C\u305F\u6A5F\u80FD\u306FTalend\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30FC\u304B\u3089\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3055\u308C\u307E\u3059\u3002\u305D\u308C\u305E\u308C\u306EStudio\u3067\u9078\u629E\u3055\u308C\u305F\u6A5F\u80FD\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3059\u308B\u3053\u3068\u304C\u5FC5\u8981\u3068\u306A\u308A\u307E\u3059\u3002
ChooseUpdateSitesWizardPage.default.remote.update.site=Talend\u30EA\u30E2\u30FC\u30C8\u66F4\u65B0\u30B5\u30A4\u30C8(\u30C7\u30D5\u30A9\u30EB\u30C8)
ChooseUpdateSitesWizardPage.default.remote.update.site=Talend\u30EA\u30E2\u30FC\u30C8\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8(\u30C7\u30D5\u30A9\u30EB\u30C8)
ChooseUpdateSitesWizardPage.local.folder=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A9\u30EB\u30C0\u30FC
ChooseUpdateSitesWizardPage.local.folder.tooltip=\u4E00\u3064\u307E\u305F\u306F\u8907\u6570(zip\u3055\u308C\u305F)\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u3092\u4FDD\u7BA1\u53EF\u80FD\u306A\u30ED\u30FC\u30AB\u30EB\u30D5\u30A9\u30EB\u30C0\u306B\u30D1\u30B9\u3092\u5B9A\u7FA9\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u9078\u629E\u3055\u308C\u305F\u6A5F\u80FD\u306F\u30ED\u30FC\u30AB\u30EB\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u304B\u3089\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3055\u308C\u307E\u3059\u3002
ChooseUpdateSitesWizardPage.page.description=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u306F\u30EA\u30E2\u30FC\u30C8\u3067\u3082\u30ED\u30FC\u30AB\u30EB\u3067\u3082\u7D50\u69CB\u3067\u3059\u3002\u30ED\u30FC\u30AB\u30EB\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u8907\u6570\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u3092\u540C\u3058\u30D5\u30A9\u30EB\u30C0\u30FC\u306B\u4FDD\u5B58\u3067\u304D\u307E\u3059\u3002
ChooseUpdateSitesWizardPage.page.title=\u66F4\u65B0\u30B5\u30A4\u30C8\u3092\u9078\u629E
ChooseUpdateSitesWizardPage.page.title=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30B5\u30A4\u30C8\u3092\u9078\u629E
SelectExtraFeaturesToInstallWizardPage.description.label=\u8AAC\u660E:
SelectExtraFeaturesToInstallWizardPage.feature.column.name.name=\u540D\u524D
SelectExtraFeaturesToInstallWizardPage.feature.list.label=\u4F7F\u7528\u53EF\u80FD\u306A\u6A5F\u80FD:
@@ -50,7 +50,7 @@ ExtraFeaturesFactory.failed.to.read.licence=\u30E9\u30A4\u30BB\u30F3\u30B9\u304B
ExtraFeaturesFactory.back.config.error=config.ini\u3092\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
ExtraFeaturesFactory.restore.config.error=config.ini\u3092\u5FA9\u5143\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
ExtraFeature.checking.is.installed={0}\u304C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u308B\u304B\u3069\u3046\u304B\u30C1\u30A7\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059\u3002
ExtraFeature.checking.need.update=\u6A5F\u80FD"{0}"\u306E\u66F4\u65B0\u3092\u30C1\u30A7\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059\u3002
ExtraFeature.checking.need.update=\u6A5F\u80FD"{0}"\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u30C1\u30A7\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059\u3002
ExtraFeature.coud.not.create.p2.agent=P2\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F:
ExtraFeature.could.not.find.feature=\u4EE5\u4E0B\u306E\u30EA\u30DD\u30B8\u30C8\u30EA\u30FC{2}\u306B\u6A5F\u80FD{0}({1})\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F
ExtraFeature.error.installing.feature.uri.exception=URI\u4F8B\u5916\u306E\u305F\u3081\u3001{0} ({1})\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F:

View File

@@ -0,0 +1,59 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.database.conn;
import static org.junit.Assert.assertTrue;
import java.util.Arrays;
import java.util.List;
import org.junit.Test;
import org.talend.core.database.EDatabaseTypeName;
import org.talend.core.database.ERedshiftDriver;
import org.talend.core.database.conn.version.EDatabaseVersion4Drivers;
/**
* DOC jding class global comment. Detailled comment
*/
public class DatabaseVersion4DriversTest {
@Test
public void testGetDriversByDriverVersion4Redshift() {
String[] redshiftDrivers = new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar", "antlr4-runtime-4.8-1.jar" };
List<String> drivers = EDatabaseVersion4Drivers.getDrivers(EDatabaseTypeName.REDSHIFT.getDisplayName(),
ERedshiftDriver.DRIVER_V1.name());
assertTrue(drivers.containsAll(Arrays.asList(redshiftDrivers)));
redshiftDrivers = new String[] { "redshift-jdbc42-2.1.0.3.jar", "antlr4-runtime-4.8-1.jar" };
drivers = EDatabaseVersion4Drivers.getDrivers(EDatabaseTypeName.REDSHIFT.getDisplayName(),
ERedshiftDriver.DRIVER_V2.name());
assertTrue(drivers.containsAll(Arrays.asList(redshiftDrivers)));
String[] redshiftSSODrivers = new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar", "antlr4-runtime-4.8-1.jar",
"aws-java-sdk-1.11.848.jar", "jackson-core-2.11.4.jar", "jackson-databind-2.11.4.jar",
"jackson-annotations-2.11.4.jar", "httpcore-4.4.13.jar", "httpclient-4.5.13.jar", "joda-time-2.8.1.jar",
"commons-logging-1.2.jar", "commons-codec-1.14.jar", "aws-java-sdk-redshift-internal-1.12.x.jar" };
drivers = EDatabaseVersion4Drivers.getDrivers(EDatabaseTypeName.REDSHIFT_SSO.getDisplayName(),
ERedshiftDriver.DRIVER_V1.name());
assertTrue(drivers.containsAll(Arrays.asList(redshiftSSODrivers)));
redshiftSSODrivers = new String[] { "redshift-jdbc42-2.1.0.3.jar", "antlr4-runtime-4.8-1.jar",
"aws-java-sdk-1.11.848.jar", "jackson-core-2.11.4.jar", "jackson-databind-2.11.4.jar",
"jackson-annotations-2.11.4.jar", "httpcore-4.4.13.jar", "httpclient-4.5.13.jar", "joda-time-2.8.1.jar",
"commons-logging-1.2.jar", "commons-codec-1.14.jar", "aws-java-sdk-redshift-internal-1.12.x.jar" };
drivers = EDatabaseVersion4Drivers.getDrivers(EDatabaseTypeName.REDSHIFT_SSO.getDisplayName(),
ERedshiftDriver.DRIVER_V2.name());
assertTrue(drivers.containsAll(Arrays.asList(redshiftSSODrivers)));
}
}

View File

@@ -12,14 +12,16 @@
// ============================================================================
package org.talend.core.model.process;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import org.talend.core.utils.TalendQuoteUtils;
import org.talend.utils.security.StudioEncryption;
/**
@@ -34,6 +36,7 @@ public class ElementParameterParserTest {
input = input.replace("\"", "");
return SE.decrypt(input);
}
@Test
public void testCanEncrypt() {
String paramName = "__PASSWORD__";
@@ -84,56 +87,76 @@ public class ElementParameterParserTest {
elementParametersWithChildrens.add(parameter);
when(node.getElementParametersWithChildrens()).thenReturn(elementParametersWithChildrens);
// "ab"
// input: "ab"
String val = "\"ab\"";
when(parameter.getValue()).thenReturn(val);
String targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
assertEquals(targetVal,
assertEquals("ab",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// "a\"b"
// input: "a\"b"
val = "\"a\\\"b\"";
targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
when(parameter.getValue()).thenReturn(val);
assertEquals(targetVal,
assertEquals("a\"b",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// "a\\b"
// input: "a\\b" (keep the studio behavior)
val = "\"a\\\\b\"";
targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
when(parameter.getValue()).thenReturn(val);
assertEquals(targetVal,
assertEquals("a\\\\b",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// "a\\\\b"
// input: "a\\\\b" (keep the studio behavior)
val = "\"a\\\\\\\\b\"";
targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
when(parameter.getValue()).thenReturn(val);
assertEquals(targetVal,
assertEquals("a\\\\\\\\b",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// "test"+context.mypassword + "a"
// input: "test"+context.mypassword + "a"
val = "\"test\"+context.mypassword + \"a\"";
when(parameter.getValue()).thenReturn(val);
assertEquals(val,
ElementParameterParser.getEncryptedValue(node, paramName));
// "a" + "b"
// input: "a" + "b"
val = "\"a\" + \"b\"";
when(parameter.getValue()).thenReturn(val);
assertEquals(val, ElementParameterParser.getEncryptedValue(node, paramName));
// \\123456/
// input: "\\123456/" (keep the studio behavior)
val = "\"\\\\123456/\"";
targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
when(parameter.getValue()).thenReturn(val);
assertEquals(targetVal,
assertEquals("\\\\123456/",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// \123456/
// input: "\123456/" (keep the studio behavior)
val = "\"\\123456/\"";
targetVal = TalendQuoteUtils.removeQuotes(val);
targetVal = TalendQuoteUtils.checkSlashAndRemoveQuotation(targetVal);
final String exp = "\\123456/";
when(parameter.getValue()).thenReturn(val);
assertEquals(targetVal,
assertEquals(exp,
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
// input: "\,\n123\"" (keep the studio behavior)
val = "\"\\,\\n123\\\"\"";
when(parameter.getValue()).thenReturn(val);
assertEquals("\\,\\n123\"", decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
}
@Test
public void testGetEncryptedValue_multiLine() {
String paramName = "__PASSWORD__";
// mock parameter
IElementParameter parameter = mock(IElementParameter.class);
when(parameter.getVariableName()).thenReturn(paramName);
when(parameter.getName()).thenReturn("PASSWORD");
// mock the node
IElement node = mock(IElement.class);
List elementParametersWithChildrens = new ArrayList();
elementParametersWithChildrens.add(parameter);
when(node.getElementParametersWithChildrens()).thenReturn(elementParametersWithChildrens);
// {
// "a":"b",
// "c":"d"
// }
// "{\r\n\"a\":\"b\",\r\n\"c\":\"d\"\r\n}" (keep the studio behavior)
String val = "\"{\r\n\\\"a\\\":\\\"b\\\",\r\n\\\"c\\\":\\\"d\\\"\r\n}\"";
when(parameter.getValue()).thenReturn(val);
assertEquals("{\r\n\"a\":\"b\",\r\n\"c\":\"d\"\r\n}",
decryptPassword(ElementParameterParser.getEncryptedValue(node, paramName)));
}
}

View File

@@ -0,0 +1,62 @@
// ============================================================================
//
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
//
// This source code is available under agreement available at
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
//
// You should have received a copy of the agreement
// along with this program; if not, write to Talend SA
// 9 rue Pages 92150 Suresnes, France
//
// ============================================================================
package org.talend.core.ui.proposal;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
import org.talend.core.model.context.JobContext;
import org.talend.core.model.context.JobContextParameter;
import org.talend.core.model.metadata.types.JavaTypesManager;
import org.talend.core.model.process.IContextParameter;
/**
* created by hcyi on Apr 25, 2022
* Detailled comment
*
*/
public class ContextParameterProposalTest {
@Test
public void testGetDescription4PasswordType() {
IContextParameter contextParam = new JobContextParameter();
JobContext newContext = new JobContext("JobContext");//$NON-NLS-1$
contextParam.setName("abc");//$NON-NLS-1$
contextParam.setComment("abc");//$NON-NLS-1$
contextParam.setContext(newContext);
contextParam.setType(JavaTypesManager.PASSWORD.getId());
contextParam.setValue("abc123");//$NON-NLS-1$
ContextParameterProposal proposal = new ContextParameterProposal(contextParam);
String desc = proposal.getDescription();
assertEquals("Description: abc\n\nDefault context environment: JobContext\n\nType: id_Password\nValue: ******\n", //$NON-NLS-1$
desc);
}
@Test
public void testGetDescription4DefaultJavaType() {
IContextParameter contextParam = new JobContextParameter();
JobContext newContext = new JobContext("JobContext");//$NON-NLS-1$
contextParam.setName("abc");//$NON-NLS-1$
contextParam.setComment("abc");//$NON-NLS-1$
contextParam.setContext(newContext);
contextParam.setType(JavaTypesManager.getDefaultJavaType().getId());
contextParam.setValue("abc123");//$NON-NLS-1$
ContextParameterProposal proposal = new ContextParameterProposal(contextParam);
String desc = proposal.getDescription();
assertEquals("Description: abc\n\nDefault context environment: JobContext\n\nType: id_String\nValue: abc123\n", //$NON-NLS-1$
desc);
}
}

View File

@@ -12,6 +12,7 @@
// ============================================================================
package org.talend.librariesmanager.model;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -19,6 +20,8 @@ import java.util.Set;
import org.junit.Assert;
import org.junit.Test;
import org.talend.core.model.general.ModuleNeeded;
import org.talend.core.model.general.ModuleNeeded.ELibraryInstallStatus;
import org.talend.core.model.general.ModuleStatusProvider;
import org.talend.core.model.properties.PropertiesFactory;
import org.talend.core.model.properties.RoutineItem;
import org.talend.core.model.repository.ERepositoryObjectType;
@@ -93,4 +96,26 @@ public class ModulesNeededProviderTest {
Assert.assertEquals(module1.get(0).getContext(), "Global Routines " + routineItem.getProperty().getLabel());
Assert.assertEquals(module2.get(0).getContext(), "Global Routines " + routineItem.getProperty().getLabel());
}
@Test
public void testInstallModuleForRoutineOrBeans() throws Exception {
ModuleNeeded module1 = new ModuleNeeded("", "ModulesNeededProviderTest", "description", false, null, null,
"mvn:org.talend.librariesmanager.model/ModulesNeededProviderTest/8.0.1");
try {
ModuleStatusProvider.putStatus(module1.getMavenUri(), ELibraryInstallStatus.NOT_INSTALLED);
ModulesNeededProvider.getModulesNeeded().add(module1);
ModulesNeededProvider.checkInstallStatus(Arrays.asList(module1));
Assert.assertTrue("Don't need to rebuild the codes project here",
ModulesNeededProvider.installModuleForRoutineOrBeans() == false);
ModuleStatusProvider.putStatus(module1.getMavenUri(), ELibraryInstallStatus.INSTALLED);
Assert.assertTrue("Need to rebuild the codes project here",
ModulesNeededProvider.installModuleForRoutineOrBeans() == true);
ModulesNeededProvider.setInstallModuleForRoutineOrBeans();
Assert.assertTrue("Don't need to rebuild the codes project here",
ModulesNeededProvider.installModuleForRoutineOrBeans() == false);
} finally {
ModulesNeededProvider.getModulesNeeded().remove(module1);
}
}
}

View File

@@ -42,7 +42,6 @@ import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
import org.eclipse.core.runtime.preferences.InstanceScope;
import org.eclipse.emf.common.util.EMap;
import org.eclipse.m2e.core.MavenPlugin;
import org.junit.Assert;
import org.junit.Before;
@@ -60,6 +59,7 @@ import org.talend.core.language.ECodeLanguage;
import org.talend.core.model.components.IComponentsService;
import org.talend.core.model.general.ModuleNeeded;
import org.talend.core.model.general.ModuleNeeded.ELibraryInstallStatus;
import org.talend.core.model.general.ModuleStatusProvider;
import org.talend.core.model.general.Project;
import org.talend.core.nexus.ArtifactRepositoryBean;
import org.talend.core.nexus.NexusServerUtils;
@@ -67,7 +67,6 @@ import org.talend.core.nexus.TalendLibsServerManager;
import org.talend.core.prefs.ITalendCorePrefConstants;
import org.talend.core.runtime.maven.MavenArtifact;
import org.talend.core.runtime.maven.MavenUrlHelper;
import org.talend.librariesmanager.emf.librariesindex.LibrariesIndex;
import org.talend.librariesmanager.maven.MavenArtifactsHandler;
import org.talend.librariesmanager.prefs.LibrariesManagerUtils;
import org.talend.repository.ProjectManager;
@@ -531,6 +530,22 @@ public class LocalLibraryManagerTest {
assertFalse(lm.isResolveAllowed("a")); //$NON-NLS-1$
}
@Test
public void testResolveLocallySnapshotNoUpdate() {
IEclipsePreferences node = InstanceScope.INSTANCE.getNode(NexusServerUtils.ORG_TALEND_DESIGNER_CORE);
int bak = node.getInt(ITalendCorePrefConstants.NEXUS_REFRESH_FREQUENCY, 0);
String mvnUrl = "mvn:a.b.c/d/1.0/jar";
try {
ModuleStatusProvider.putDeployStatus(mvnUrl, ELibraryInstallStatus.DEPLOYED);
node.putInt(ITalendCorePrefConstants.NEXUS_REFRESH_FREQUENCY, -1);
LocalLibraryManager lm = new LocalLibraryManager();
assertNull(lm.resolveStatusLocally(mvnUrl));
} finally {
node.putInt(ITalendCorePrefConstants.NEXUS_REFRESH_FREQUENCY, bak);
ModuleStatusProvider.putDeployStatus(mvnUrl, ELibraryInstallStatus.NOT_INSTALLED);
}
}
@Test
@Ignore
public void testNexusUpdateJar() throws Exception {

View File

@@ -12,11 +12,17 @@
// ============================================================================
package org.talend.core.model.metadata.builder.database;
import static org.junit.Assert.*;
import static org.junit.Assert.assertEquals;
import java.util.List;
import org.junit.Test;
import org.talend.core.model.context.JobContextManager;
import org.talend.core.model.context.JobContextParameter;
import org.talend.core.model.metadata.builder.connection.ConnectionPackage;
import org.talend.core.model.metadata.builder.connection.DatabaseConnection;
import org.talend.core.model.metadata.types.JavaTypesManager;
import org.talend.core.model.process.IContextParameter;
/**
* created by mzhao on Nov 12, 2012 Detailled comment
@@ -61,4 +67,51 @@ public class JavaSqlFactoryTest {
assertEquals("talend4ever", userName); //$NON-NLS-1$
}
@Test
public void testPromptPassword() {
DatabaseConnection conn = getConnection();
JobContextManager contextManager = getContextManager();
for (IContextParameter contextParam : contextManager.getDefaultContext().getContextParameterList()) {
JavaSqlFactory.savePromptConVars2Cache(conn, contextParam);
}
JavaSqlFactory.haveSetPromptContextVars = true;
String pwd = JavaSqlFactory.getPassword(conn);
assertEquals("Il1O0@01I", pwd); //$NON-NLS-1$
JavaSqlFactory.haveSetPromptContextVars = false;
}
private DatabaseConnection getConnection() {
DatabaseConnection conn = ConnectionPackage.eINSTANCE.getConnectionFactory().createDatabaseConnection();
conn.setDatabaseType("MySQL");
conn.setCdcTypeMode("true");
conn.setContextId("_t6JiIL-JEeytPPESGs4uTQ");
conn.setContextMode(true);
conn.setPassword("context.mysql_Password");
conn.setUsername("context.mysql_Login");
return conn;
}
public JobContextManager getContextManager() {
JobContextManager contextManager = new JobContextManager();
List<IContextParameter> contextParameterList = contextManager.getDefaultContext().getContextParameterList();
IContextParameter contextParam = new JobContextParameter();
contextParam.setName("mysql_Password");
contextParam.setPrompt("mysql_Password?");
contextParam.setPromptNeeded(true);
contextParam.setType(JavaTypesManager.PASSWORD.getId());
contextParam.setValue("enc:system.encryption.key.v1:XvDCYmNqHBiWwueysEnyHM0Pl925+BNYbHHOpR+u4EGBX8d4MA==");
contextParameterList.add(contextParam);
contextParam = new JobContextParameter();
contextParam.setName("mysql_Login");
contextParam.setPrompt("mysql_Login?");
contextParam.setPromptNeeded(true);
contextParam.setType(JavaTypesManager.getDefaultJavaType().getId());
contextParam.setValue("xyz");
contextParameterList.add(contextParam);
return contextManager;
}
}

View File

@@ -71,7 +71,7 @@ public class DBConnectionContextUtilsTest {
conn.setPort("3050");
conn.setFileFieldName("/databases/TUJ");
connectionItem.setConnection(conn);
String setManagerConnectionValues = DBConnectionContextUtils.setManagerConnectionValues(managerConnection, connectionItem,
String setManagerConnectionValues = DBConnectionContextUtils.setManagerConnectionValues(managerConnection, connectionItem.getConnection(),
null, conn.getDatabaseType());
Assert.assertEquals(EXPECT_URL, setManagerConnectionValues);
}