Compare commits

..

5 Commits

Author SHA1 Message Date
Jane Ding
206e1c89d3 Revert "fix(TUP-28898):Drag Exasol connection to a job choose tDBOutput(Exasol) (#7023)" (#7217) (#7218)
This reverts commit 6b82e95328.
2022-02-18 17:27:01 +08:00
AlixMetivier
7828ead0be feat(TBD-12989): add databricks to universal plugins (#7143) (#7215)
* feat(TBD-12989): add databricks to universal plugins

* feat(TBD-12989): add databricks to universal plugin
2022-02-17 17:48:42 +01:00
ypiel
0e3c7526c0 fix(TDI-46848): mscrm oauth2+on-premise + client secret (#7157)
* fix(TDI-46848): add mscrm oauth2 logs

* fix(TDI-46848): Add client secret for oauth2 on-premise

* fix(TDI-46848): Fix pom version.

* fix(TDI-46848): client_secret not mandatory
2022-02-17 11:26:07 +01:00
kjwang
65c9752f76 Revert "Fix TUP-32950 On Ubuntu 18.04.5 documentation comment is displayed as a (#7098)" (#7211) (#7212)
This reverts commit 20a1cd9476.
2022-02-17 17:44:18 +08:00
kjwang
2e1e3cf573 TUP-34156 UI is broken for TCK Table structures in 8.0.1 + nighty (#7203)
TUP-34156 UI is broken for TCK Table structures in 8.0.1 + nighty
https://jira.talendforge.org/browse/TUP-34156
2022-02-17 11:46:31 +08:00
7498 changed files with 333207 additions and 63633 deletions

View File

@@ -7,5 +7,4 @@ Huge thanks to these people who contributed in making Talend product better:
- [overpackaging](https://github.com/overpackaging) (Steeve Dreux)
- [brazabr](https://github.com/brazabr) (Thiago Benvenuto)
- [phoflack](https://jira.talendforge.org/secure/ViewProfile.jspa?name=phoflack) (Philip Hoflack)
- [bgunics-talend](https://github.com/bgunics-talend) (Balasz Gunics)
- [cflamain](https://github.com/cflamain) (Christophe Flamain)
- [bgunics-talend](https://github.com/bgunics-talend) (Balasz Gunics)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -16,7 +16,6 @@
<import plugin="org.talend.repository" version="0.0.0" match="greaterOrEqual"/>
<import plugin="org.talend.utils" version="0.0.0" match="greaterOrEqual"/>
</requires>
<plugin id="org.talend.common.ui.runtime.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.commons.runtime.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.commons.ui.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.core.repository.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
@@ -44,14 +43,11 @@
<plugin id="org.talend.migrationTool.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.model.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.generic.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.json.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.items.importexport.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.items.importexport.ui.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.localprovider.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.metadata.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.sqlbuilder.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.presentation.onboarding.resource.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.view.di.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.repository.view.test" download-size="0" install-size="0" version="0.0.0" fragment="true" unpack="false"/>
<plugin id="org.talend.testutils" download-size="0" install-size="0" version="0.0.0" unpack="false"/>

View File

@@ -139,6 +139,12 @@
version="0.0.0"
unpack="false"/>
<plugin
id="org.talend.designer.components.exchange"
download-size="0"
install-size="0"
version="0.0.0"/>
<plugin
id="org.talend.designer.components.localprovider"
download-size="0"
@@ -158,7 +164,7 @@
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="org.talend.designer.filemultischemas"
download-size="0"
@@ -242,12 +248,5 @@
install-size="0"
version="0.0.0"
unpack="false"/>
<plugin
id="org.talend.designer.esb.components.rs.consumer"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature>

View File

@@ -46,5 +46,4 @@
<plugin id="org.talend.libraries.slf4j" download-size="0" install-size="0" version="0.0.0"/>
<plugin id="org.talend.libraries.xml" download-size="0" install-size="0" version="0.0.0"/>
<plugin id="org.talend.libraries.zmq" download-size="0" install-size="0" version="0.0.0"/>
<plugin id="org.talend.libraries.esb" download-size="0" install-size="0" version="0.0.0"/>
</feature>

View File

@@ -6,7 +6,7 @@ prefs.configuration.LINK_STYLE.LINE=Lignes (rapide)
DraggingInfosPopup.draggingEntry=Glissement de {0} entr\u00E9e(s).
DraggingInfosPopup.dropInvalid=\n<< D\u00E9p\u00F4t impossible >>\n
DraggingInfosPopup.draggingEntries=Glissement de {0} entr\u00E9es.
DraggingInfosPopup.dropInvalidWithKey=\n<< D\u00E9p\u00F4t impossible >>\nAppuyez sur Maj et Ctrl pour mapper en un pour un et \u00E9craser
DraggingInfosPopup.dropInvalidWithKey=\n<<D\u00E9p\u00F4t impossible>>\n : appuyez sur Maj et Ctrl pour mapper en un pour un et \u00E9craser
DraggingInfosPopup.overwriteMode= > Mode \u00E9crasement
DraggingInfosPopup.appendMode= > Mode \u00E9criture \u00E0 la suite
DraggingInfosPopup.appendModeToOverwrite= > Mode \u00E9criture \u00E0 la suite (Ctrl pour \u00E9craser)

View File

@@ -2,11 +2,11 @@ prefs.configuration.title=\u30DE\u30C3\u30D7\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3
prefs.configuration.LINK_STYLE=\u30C7\u30D5\u30A9\u30EB\u30C8\u30DE\u30C3\u30D4\u30F3\u30B0\u30EA\u30F3\u30AF\u306E\u8868\u793A:
prefs.configuration.LINK_STYLE.AUTO=\u81EA\u52D5
prefs.configuration.LINK_STYLE.BEZIER_CURVE=\u66F2\u7DDA
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA(\u9AD8\u901F)
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA\uFF08\u9AD8\u901F\uFF09
DraggingInfosPopup.draggingEntry={0}\u30A8\u30F3\u30C8\u30EA\u30FC\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u3044\u307E\u3059\u3002
DraggingInfosPopup.dropInvalid=\n<< \u7121\u52B9\u306A\u30C9\u30ED\u30C3\u30D7 >>\n
DraggingInfosPopup.draggingEntries={0}\u30A8\u30F3\u30C8\u30EA\u30FC\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u3044\u307E\u3059\u3002
DraggingInfosPopup.dropInvalidWithKey=\n<< \u7121\u52B9\u306A\u30C9\u30ED\u30C3\u30D7 >>\nShift\u30AD\u30FC\u3068Ctrl\u30AD\u30FC\u3092\u540C\u6642\u306B\u62BC\u3059\u3068\u30011\u5BFE1\u3067\u30DE\u30C3\u30D4\u30F3\u30B0\u3055\u308C\u3066\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059
DraggingInfosPopup.dropInvalidWithKey=\n<< \u7121\u52B9\u306A\u30C9\u30ED\u30C3\u30D7 >>\n\u4E00\u5BFE\u4E00\u30DE\u30C3\u30D4\u30F3\u30B0\u3057\u3001\u4E0A\u66F8\u304D\u3059\u308B\u5834\u5408\u306F\u3001Shift\u30AD\u30FC\u3068Ctrl\u30AD\u30FC\u3092\u540C\u6642\u306B\u62BC\u3057\u307E\u3059
DraggingInfosPopup.overwriteMode= > \u4E0A\u66F8\u304D\u30E2\u30FC\u30C9
DraggingInfosPopup.appendMode= > \u8FFD\u52A0\u30E2\u30FC\u30C9
DraggingInfosPopup.appendModeToOverwrite= > \u8FFD\u52A0\u30E2\u30FC\u30C9(\u4E0A\u66F8\u304D\u3059\u308B\u306B\u306F[Ctrl]\u30AD\u30FC)

View File

@@ -6,7 +6,7 @@ prefs.configuration.LINK_STYLE.LINE=\u76F4\u7EBF (\u5FEB)
DraggingInfosPopup.draggingEntry=\u62D6\u52A8 {0} \u6761\u76EE
DraggingInfosPopup.dropInvalid=\n<< \u65E0\u6548\u91CA\u653E >>\n
DraggingInfosPopup.draggingEntries=\u62D6\u52A8 {0} \u4E2A\u6761\u76EE\u3002
DraggingInfosPopup.dropInvalidWithKey=\n<< \u65E0\u6548\u653E\u7F6E >>\n\u6309\u4F4F Shift \u548C Ctrl \u952E\u4EE5\u8FDB\u884C\u4E00\u5BF9\u4E00\u6620\u5C04\u5E76\u6539\u5199
DraggingInfosPopup.dropInvalidWithKey=\n<<\u65E0\u6548\u653E\u7F6E>>\n\u6309\u4F4F Shift \u548C Ctrl \u952E\u4EE5\u8FDB\u884C\u4E00\u5BF9\u4E00\u6620\u5C04\u5E76\u6539\u5199
DraggingInfosPopup.overwriteMode= > \u91CD\u5199\u6A21\u5F0F
DraggingInfosPopup.appendMode= >\u9644\u52A0\u6A21\u5F0F
DraggingInfosPopup.appendModeToOverwrite= > \u8FFD\u52A0\u6A21\u5F0F (Ctrl \u952E\u6765\u6539\u5199)

View File

@@ -13,10 +13,6 @@
package org.talend.designer.abstractmap.managers;
import org.apache.log4j.Level;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.widgets.Display;
import org.talend.commons.ui.runtime.ITalendThemeService;
import org.talend.commons.ui.runtime.exception.ExceptionHandler;
import org.talend.designer.abstractmap.ui.dnd.DraggingInfosPopup;
import org.talend.designer.abstractmap.ui.properties.LINK_STYLE;

View File

@@ -1,4 +1,4 @@
AlfrescoOutputManager.failedLoadModel=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u304B\u3089\u30E2\u30C7\u30EB\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u518D\u521D\u671F\u5316\u4E2D
AlfrescoOutputManager.failedLoadModel=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u304B\u3089\u30E2\u30C7\u30EB\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u518D\u521D\u671F\u5316\u4E2D,
AlfrescoOutputManager.schemaError.title=\u30B9\u30AD\u30FC\u30DE\u306E\u30A8\u30E9\u30FC
AlfrescoOutputManager.schemaError.msg=\u6700\u521D\u306B\u30B9\u30AD\u30FC\u30DE\u3092\u540C\u671F\u3057\u3066\u304F\u3060\u3055\u3044\u3002
AlfrescoOutputModelManager.alreadyAdded=\u3053\u306E\u30E2\u30C7\u30EB\u306F\u65E2\u306B\u8FFD\u52A0\u6E08\u307F\u3067\u3059\u3002
@@ -13,8 +13,8 @@ AlfrescoModelDialog.addModelFailed=\u30E2\u30C7\u30EB\u8FFD\u52A0\u306B\u5931\u6
AlfrescoModelDialog.remove=\u524A\u9664
AlfrescoModelDialog.removeModelFailed=\u30E2\u30C7\u30EB\u306E\u524A\u9664\u306B\u5931\u6557\u3057\u307E\u3057\u305F
AlfrescoModelDialog.missingTypeDefinitions.title=\u578B\u5B9A\u7FA9\u304C\u3042\u308A\u307E\u305B\u3093
AlfrescoModelDialog.missingTypeDefinitions.msg=\u9078\u629E\u3055\u308C\u305F\u30BF\u30A4\u30D7\u306F\u3001Alfresco\u306E\u4E0D\u660E\u306A\u30BF\u30A4\u30D7\u307E\u305F\u306F\u30A2\u30B9\u30DA\u30AF\u30C8: ${0}\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002\n\u305D\u308C\u3089\u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u308Balfresco\u306E\u30E2\u30C7\u30EB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
AlfrescoModelDialog.missingTypeDefinitions.msg=\u9078\u629E\u3057\u305F\u65B9\u306F\u4E0D\u660E\u306EAlfresco\u578B\u3082\u3057\u304F\u306F\u30A2\u30B9\u30DA\u30AF\u30C8: ${0}\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002\n\u305D\u308C\u3089\u3092\u5B9A\u7FA9\u3057\u305FAlfresco\u30E2\u30C7\u30EB\u30D5\u30A1\u30A4\u30EB\u3092\u63D0\u4F9B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
AlfrescoModelDialog.missingAspectDefinitions.title=\u30A2\u30B9\u30DA\u30AF\u30C8\u5B9A\u7FA9\u304C\u3042\u308A\u307E\u305B\u3093\u3002
AlfrescoModelDialog.missingAspectDefinitions.msg=\u9078\u629E\u3055\u308C\u305F\u30A2\u30B9\u30DA\u30AF\u30C8\u306F\u3001Alfresco\u306E\u4E0D\u660E\u306A\u30A2\u30B9\u30DA\u30AF\u30C8: ${0}\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002\n\u305D\u308C\u3089\u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u308Balfresco\u306E\u30E2\u30C7\u30EB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
AlfrescoModelDialog.missingAspectDefinitions.msg=\u9078\u629E\u3055\u308C\u305F\u30A2\u30B9\u30DA\u30AF\u30C8\u306F\u4E0D\u660E\u306EAlfresco\u30A2\u30B9\u30DA\u30AF\u30C8: ${0}\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002\n\u305D\u308C\u3089\u3092\u5B9A\u7FA9\u3057\u305FAlfresco\u30E2\u30C7\u30EB\u30D5\u30A1\u30A4\u30EB\u3092\u63D0\u4F9B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
AlfrescoModelDialog.modelTable.title=\u30BF\u30A4\u30C8\u30EB
AlfrescoModelDialog.modelTable.name=\u540D\u524D

View File

@@ -13,8 +13,8 @@ AlfrescoModelDialog.addModelFailed=\u6DFB\u52A0\u6A21\u578B\u5931\u8D25
AlfrescoModelDialog.remove=\u79FB\u9664
AlfrescoModelDialog.removeModelFailed=\u79FB\u9664\u6A21\u578B\u5931\u8D25
AlfrescoModelDialog.missingTypeDefinitions.title=\u7F3A\u7701\u7C7B\u578B\u5B9A\u4E49
AlfrescoModelDialog.missingTypeDefinitions.msg=\u6240\u9009\u62E9\u7684\u7C7B\u578B\u6D89\u53CA\u672A\u77E5\u7684 Alfresco \u7C7B\u578B\u6216\u65B9\u9762: ${0}\u3002\n\u8BF7\u63D0\u4F9B\u5B9A\u4E49\u8FD9\u4E9B aspect \u7684 Alfresco \u6A21\u578B\u6587\u4EF6\u3002
AlfrescoModelDialog.missingTypeDefinitions.msg=\u6240\u9009\u62E9\u7684\u7C7B\u578B\u6D89\u53CA\u4E00\u4E2A\u6216\u591A\u4E2A\u672A\u77E5\u7684 Alfresco \u7C7B\u578B\u6216asepct: ${0}.\n \u8BF7\u63D0\u4F9B\u5B9A\u4E49\u8FD9\u4E9B \u7C7B\u578B\u6216 aspect \u7684 Alfresco \u6A21\u578B\u6587\u4EF6\u3002
AlfrescoModelDialog.missingAspectDefinitions.title=\u7F3A\u7701\u65B9\u9762\u5B9A\u4E49
AlfrescoModelDialog.missingAspectDefinitions.msg=\u6240\u9009\u62E9\u7684\u65B9\u9762\u6D89\u53CA\u672A\u77E5\u7684Alfresco\u65B9\u9762: ${0}.\n\u8BF7\u63D0\u4F9B\u5B9A\u4E49\u8FD9\u4E9B aspect \u7684 Alfresco \u6A21\u578B\u6587\u4EF6\u3002
AlfrescoModelDialog.missingAspectDefinitions.msg=\u6240\u9009\u62E9\u7684\u65B9\u9762\u6D89\u53CA\u4E00\u4E2A\u6216\u591A\u4E2A\u672A\u77E5\u7684 Alfresco aspect: ${0}.\n \u8BF7\u63D0\u4F9B\u5B9A\u4E49\u8FD9\u4E9B aspect \u7684 Alfresco \u6A21\u578B\u6587\u4EF6\u3002
AlfrescoModelDialog.modelTable.title=\u6807\u9898
AlfrescoModelDialog.modelTable.name=\u540D\u79F0

View File

@@ -90,9 +90,11 @@ if((codePart.equals(ECodePart.END))&&(stat || logstashCurrent)){
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String targetNodeLabel = NodeUtil.getLabel(node);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
for (INode jobStructureCatcher : jobCatcherNodes) {
@@ -122,9 +124,11 @@ if((codePart.equals(ECodePart.END))&&(stat || logstashCurrent)){
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetNodeLabel = NodeUtil.getLabel(node);
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
for (INode jobStructureCatcher : jobCatcherNodes) {

View File

@@ -137,7 +137,7 @@
}
%>
currentComponent="<%=node.getUniqueName() %>";
<%
connSet = new HashSet<IConnection>();
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MAIN));
@@ -155,17 +155,6 @@
//about performance monitor, no way to support more than one job catcher component, also that is not necessary
final String subprocessName4Catcher = logstashCurrent ? jobCatcherNodes.get(0).getDesignSubjobStartNode().getUniqueName() : null;
if(logstashCurrent) {
String currentLabel = ElementParameterParser.getValue(node, "__LABEL__");
if(currentLabel==null || "".equals(currentLabel) || "__UNIQUE_NAME__".equals(currentLabel) || cid.endsWith(NodeUtil.getLabel(node))) {
//not generate the unnecessary statement if label is default one
} else {
%>
cLabel="<%=NodeUtil.getLabel(node)%>";
<%
}
}
if ((codePart.equals(ECodePart.BEGIN))&&(stat || logstashCurrent)&&connSet.size()>0) {
if(containsTPartitioner) {
%>
@@ -207,9 +196,11 @@
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetNodeLabel = NodeUtil.getLabel(node);
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
%>
@@ -241,9 +232,11 @@
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String targetNodeLabel = NodeUtil.getLabel(node);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
%>
@@ -266,9 +259,11 @@
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String targetNodeLabel = NodeUtil.getLabel(node);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
@@ -300,9 +295,11 @@
INode source = con.getSource();
String sourceNodeId = source.getUniqueName();
String sourceNodeLabel = NodeUtil.getLabel(source);
String sourceLabel = ElementParameterParser.getValue(source, "__LABEL__");
String sourceNodeLabel = ((sourceLabel==null || "__UNIQUE_NAME__".equals(sourceLabel) || sourceLabel.contains("\"")) ? sourceNodeId : sourceLabel.trim());
String targetNodeLabel = NodeUtil.getLabel(node);
String targetLabel = ElementParameterParser.getValue(node, "__LABEL__");
String targetNodeLabel = ((targetLabel==null || "__UNIQUE_NAME__".equals(targetLabel) || targetLabel.contains("\"")) ? node.getUniqueName() : targetLabel.trim());
String sourceNodeComponent = source.getComponent().getName();
@@ -437,7 +434,8 @@
if(logstashCurrent) {
for (INode jobStructureCatcher : jobCatcherNodes) {
String nodeLabel = NodeUtil.getLabel(node);
String label = ElementParameterParser.getValue(node, "__LABEL__");
String nodeLabel = ((label==null || "__UNIQUE_NAME__".equals(label) || label.contains("\"")) ? node.getUniqueName() : label.trim());
%>
if(enableLogStash) {
<%=jobStructureCatcher.getUniqueName() %>.addCM("<%=node.getUniqueName()%>", "<%=nodeLabel%>", "<%=node.getComponent().getName()%>");

View File

@@ -56,9 +56,8 @@
String jobClassPackageFolder = codeGenArgument.getCurrentProjectName().toLowerCase() + '/' + jobFolderName;
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));//log4j enable
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
boolean isLog4j1Enabled = !isLog4j2Enabled;//log4j1 enable
String MDC_CLASS = "org.slf4j.MDC";
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
boolean isLog4j1Enabled = !isLog4j2Enabled;//log4j1 enable
boolean exist_tParallelize = false;
List<? extends INode> tParallelizeList = process.getNodesOfType("tParallelize");
@@ -224,7 +223,7 @@
public boolean useDatastax(INode node){
String dbVersion = ElementParameterParser.getValue(node, "__DB_VERSION__");
String apiType = ElementParameterParser.getValue(node, "__API_TYPE__");
return "CASSANDRA_2_2".equals(dbVersion) || "CASSANDRA_3_0".equals(dbVersion) || "CASSANDRA_4_0".equals(dbVersion) || ("CASSANDRA_2_0_0".equals(dbVersion) && "DATASTAX".equals(apiType));
return "CASSANDRA_2_2".equals(dbVersion) || "CASSANDRA_3_0".equals(dbVersion) || ("CASSANDRA_2_0_0".equals(dbVersion) && "DATASTAX".equals(apiType));
}
}
%>
@@ -322,11 +321,6 @@
globalMap.put(GLOBAL_CONNECTION_POOL_KEY, connectionPool);
}
<%}%>
private final static java.util.Properties jobInfo = new java.util.Properties();
private final static java.util.Map<String,String> mdcInfo = new java.util.HashMap<>();
private final static java.util.concurrent.atomic.AtomicLong subJobPidCounter = new java.util.concurrent.atomic.AtomicLong();
public static void main(String[] args){
final <%=className %> <%=className %>Class = new <%=className %>();
@@ -340,42 +334,6 @@
System.exit(exitCode);
}
private void getjobInfo() {
final String TEMPLATE_PATH = "src/main/templates/jobInfo_template.properties";
final String BUILD_PATH = "../jobInfo.properties";
final String path = this.getClass().getResource("").getPath();
if(path.lastIndexOf("target") > 0) {
final java.io.File templateFile = new java.io.File(
path.substring(0, path.lastIndexOf("target")).concat(TEMPLATE_PATH));
if (templateFile.exists()) {
readJobInfo(templateFile);
return;
}
}
readJobInfo(new java.io.File(BUILD_PATH));
}
private void readJobInfo(java.io.File jobInfoFile){
if(jobInfoFile.exists()) {
try (java.io.InputStream is = new java.io.FileInputStream(jobInfoFile)) {
jobInfo.load(is);
} catch (IOException e) {
<%if(isLog4jEnabled){%>
log.debug("Read jobInfo.properties file fail: " + e.getMessage());
<%}%>
}
}
<%if(isLog4jEnabled){%>
log.info(String.format("Project name: %s\tJob name: %s\tGIT Commit ID: %s\tTalend Version: %s",
projectName,jobName,jobInfo.getProperty("gitCommitId"), "<%=System.getProperties().getProperty("talend.studio.version")%>"));
<%}%>
}
<%
if (isTestContainer) {
@@ -556,61 +514,17 @@
}
org.apache.logging.log4j.core.config.Configurator.setLevel(org.apache.logging.log4j.LogManager.getRootLogger().getName(), log.getLevel());
<%}%>
}
getjobInfo();
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Start.");
<%}%>
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
java.util.Set<Object> jobInfoKeys = jobInfo.keySet();
for(Object jobInfoKey: jobInfoKeys) {
<%=MDC_CLASS%>.put("_" + jobInfoKey.toString(), jobInfo.get(jobInfoKey).toString());
}
<%=MDC_CLASS%>.put("_pid", pid);
<%=MDC_CLASS%>.put("_rootPid", rootPid);
<%=MDC_CLASS%>.put("_fatherPid", fatherPid);
<%=MDC_CLASS%>.put("_projectName", projectName);
<%=MDC_CLASS%>.put("_startTimestamp",java.time.ZonedDateTime.now(java.time.ZoneOffset.UTC ).format( java.time.format.DateTimeFormatter.ISO_INSTANT ));
<%=MDC_CLASS%>.put("_jobRepositoryId","<%=process.getId() %>");
<%=MDC_CLASS%>.put("_compiledAtTimestamp","<%=java.time.ZonedDateTime.now(java.time.ZoneOffset.UTC ).format( java.time.format.DateTimeFormatter.ISO_INSTANT )%>");
java.lang.management.RuntimeMXBean mx = java.lang.management.ManagementFactory.getRuntimeMXBean();
String[] mxNameTable = mx.getName().split("@"); //$NON-NLS-1$
if (mxNameTable.length == 2) {
<%=MDC_CLASS%>.put("_systemPid", mxNameTable[0]);
} else {
<%=MDC_CLASS%>.put("_systemPid", String.valueOf(java.lang.Thread.currentThread().getId()));
}
<%
}%>
<%
INode jobCatcherNode = null;
int threadPoolSize = 0;
boolean tRESTRequestLoopExists = false;
}
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Start.");
<%}%>
<%
INode jobCatcherNode = null;
for (INode nodeInProcess : process.getGeneratingNodes()) {
String componentName = nodeInProcess.getComponent().getName();
if(jobCatcherNode==null && "tJobStructureCatcher".equals(componentName)) {
if("tJobStructureCatcher".equals(componentName)) {
jobCatcherNode = nodeInProcess;
continue;
}
if(!nodeInProcess.isActivate()) continue;
if("tRESTRequestLoop".equals(componentName)) {
tRESTRequestLoopExists = true;
continue;
}
if("tWriteXMLFieldOut".equals(componentName)) {
IConnection nextMergeConn = NodeUtil.getNextMergeConnection(nodeInProcess);
if(nextMergeConn == null || nextMergeConn.getInputId()==1){
threadPoolSize++;
}
break;
}
}
@@ -710,26 +624,14 @@
pid = TalendString.getAsciiRandomString(6);
}
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
<%=MDC_CLASS%>.put("_pid", pid);
<%}%>
if (rootPid==null) {
rootPid = pid;
}
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
<%=MDC_CLASS%>.put("_rootPid", rootPid);
<%}%>
if (fatherPid==null) {
fatherPid = pid;
}else{
isChildJob = true;
}
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
<%=MDC_CLASS%>.put("_fatherPid", fatherPid);
<%}%>
<%
if (stats) {
@@ -963,13 +865,7 @@
}
%>
//Resume: jobStart
resumeUtil.addLog("JOB_STARTED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","","","",resumeUtil.convertToJsonText(context,ContextProperties.class,parametersToEncrypt));
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
<%=MDC_CLASS%>.put("_context", contextStr);
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Started.");
java.util.Optional.ofNullable(<%=MDC_CLASS%>.getCopyOfContextMap()).ifPresent(mdcInfo::putAll);
<%}%>
resumeUtil.addLog("JOB_STARTED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","","","",resumeUtil.convertToJsonText(context,parametersToEncrypt));
<%
if (stats) {
@@ -1180,10 +1076,6 @@ this.globalResumeTicket = false;//to run others jobs
runningThreadCount.add(1);
new Thread(){
public void run() {
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
mdcInfo.forEach(<%=MDC_CLASS%>::put);
<% } %>
java.util.Map threadRunResultMap = new java.util.HashMap();
threadRunResultMap.put("errorCode", null);
threadRunResultMap.put("status", "");
@@ -1246,15 +1138,9 @@ this.globalResumeTicket = false;//to run others jobs
if (!componentName.equals("tJobStructureCatcher") && !componentName.equals("tLogCatcher") && !componentName.equals("tFlowMeterCatcher") && !componentName.equals("tAssertCatcher") && !componentName.equals("tStatCatcher") && !componentName.equals("tAsyncIn")) {
%>
<%=createCallProcess(rootNode, className, false) %>
<%
if (process.getNodesOfType("tStatCatcher").size() > 0) {
%>
<%=statsErrorHandlingAfterMainCall(rootNode, process.getNodesOfType("tStatCatcher"))%>
<%
}
}
}
}// end if(isRunInMultiThread)
<% }
}
}// end if(isRunInMultiThread)
%>
this.globalResumeTicket = true;//to run tPostJob
@@ -1312,26 +1198,6 @@ this.globalResumeTicket = true;//to run tPostJob
e.printStackTrace();
}
}
<%
}
//tRESTRequest may appear in microservice, the code may be called before call submit(task) method, so can't shutdown it here
if(!tRESTRequestLoopExists && threadPoolSize>0) {
%>
es.shutdown();
<%//shutdownNow should never be executed, only for safe%>
try {
if(!es.awaitTermination(60, java.util.concurrent.TimeUnit.SECONDS)) {
es.shutdownNow();
if(!es.awaitTermination(60, java.util.concurrent.TimeUnit.SECONDS)) {
}
}
} catch (java.lang.InterruptedException ie) {
es.shutdownNow();
} catch (java.lang.Exception e) {
}
<%
}
%>
@@ -1388,15 +1254,6 @@ if (execStat) {
returnCode = errorCode.intValue();
}
resumeUtil.addLog("JOB_ENDED", "JOB:" + jobName, parent_part_launcher, Thread.currentThread().getId() + "", "","" + returnCode,"","","");
resumeUtil.flush();
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
<%=MDC_CLASS%>.remove("_subJobName");
<%=MDC_CLASS%>.remove("_subJobPid");
<%=MDC_CLASS%>.remove("_systemPid");
log.info("TalendJob: '<%=codeGenArgument.getJobName()%>' - Finished - status: " + status + " returnCode: " + returnCode );
<%}%>
return returnCode;
@@ -1512,27 +1369,16 @@ if (execStat) {
Object obj_cluster;
Object obj_conn;
<% for (INode cassandraDbNode : cassandraComponentsList) {
String dbVersionCassandra = ElementParameterParser.getValue(cassandraDbNode, "__DB_VERSION__");
if((new API_selector()).useDatastax(cassandraDbNode)) {
if("CASSANDRA_4_0".equals(dbVersionCassandra)) {
%>
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");if(obj_conn != null) {
((com.datastax.oss.driver.api.core.CqlSession) obj_conn).close();
}
<%
} else {
%>
obj_cluster = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");
if(obj_conn != null) {
((com.datastax.driver.core.Session) obj_conn).close();
}
if(obj_cluster != null) {
((com.datastax.driver.core.Cluster) obj_cluster).close();
}
<%
}
} else { %>
if((new API_selector()).useDatastax(cassandraDbNode)) { %>
obj_cluster = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
obj_conn = globalMap.remove("connection_<%=cassandraDbNode.getUniqueName()%>");
if(obj_conn != null) {
((com.datastax.driver.core.Session) obj_conn).close();
}
if(obj_cluster != null) {
((com.datastax.driver.core.Cluster) obj_cluster).close();
}
<% } else { %>
obj_conn = globalMap.remove("cluster_<%=cassandraDbNode.getUniqueName()%>");
if(obj_conn!=null) {
((me.prettyprint.hector.api.Cluster) obj_conn).getConnectionManager().shutdown();

View File

@@ -42,10 +42,10 @@ public class CLASS
//List< ? extends IConnection> onSubJobErrorConns = rootNode.getOutgoingConnections(EConnectionType.ON_SUBJOB_ERROR);
//if(onSubJobErrorConns!=null){
// for(IConnection conn : onSubJobErrorConns) {
// for(IConnection conn : onSubJobErrorConns) {
// toReturn += createCallProcess(conn.getTarget(), className, isMultiThread);
// }
//}
//}
if(isMultiThread){
toReturn += "\n}catch (java.lang.Error e_" + rootNode.getUniqueName() + ") {\n";
toReturn += "globalMap.put(\""+rootNode.getUniqueName()+ "_SUBPROCESS_STATE\", -1);\n";
@@ -55,20 +55,7 @@ public class CLASS
toReturn += "\n}";
return toReturn;
}
public String statsErrorHandlingAfterMainCall(INode rootNode, List<? extends INode> statsNodes) {
String catchErrorReturn = "catch (Error error_" + rootNode.getUniqueName() + " ) {\n";
catchErrorReturn+="end = System.currentTimeMillis();\n";
for (INode statCatcherNode : statsNodes) {
catchErrorReturn += statCatcherNode.getUniqueName() + ".addMessage(\"failure\", (end-startTime));\n";
catchErrorReturn += "try {\n " + statCatcherNode.getDesignSubjobStartNode().getUniqueName() + "Process(globalMap);\n";
catchErrorReturn += "} catch (Exception e_" + statCatcherNode.getUniqueName() + ") {\n";
catchErrorReturn += "e_" + statCatcherNode.getUniqueName() + ".printStackTrace();\n}\n";
}
catchErrorReturn+= "throw error_" + rootNode.getUniqueName() + ";\n}\n";
return catchErrorReturn;
}
public String generate(Object argument) {
return "";
}

View File

@@ -170,8 +170,16 @@ class IndexedRecordToRowStructGenerator {
if (columnName.equals(dynamicColName)) {
%>
java.util.Map<String, Object> dynamicValue_<%=cid%> = (java.util.Map<String, Object>) <%=codeVarSchemaEnforcer%>.get(<%=i%>);
org.apache.avro.Schema dynSchema_<%=cid%> = ((org.talend.codegen.enforcer.OutgoingDynamicSchemaEnforcer) <%=codeVarSchemaEnforcer%>).getDynamicFieldsSchema();
for (org.apache.avro.Schema.Field dynamicField_<%=cid%> : dynSchema_<%=cid%>.getFields()){
String name = dynamicField_<%=cid%>.name();
if("true".equals(dynamicField_<%=cid%>.getProp("ENABLE_SPECIAL_TABLENAME"))){
dynamicValue_<%=cid%>.put(dynamicField_<%=cid%>.getProp("talend.field.dbColumnName"), dynamicValue_<%=cid%>.get(name));
dynamicValue_<%=cid%>.remove(name);
}
}
for (java.util.Map.Entry<String, Object> dynamicValueEntry_<%=cid%> : dynamicValue_<%=cid%>.entrySet()) {
<%=codeVarDynamic%>.addColumnValue(dynamicValueEntry_<%=cid%>.getValue());
<%=codeVarDynamic%>.setColumnValue(<%=codeVarDynamic%>.getIndex(dynamicValueEntry_<%=cid%>.getKey()), dynamicValueEntry_<%=cid%>.getValue());
}
<%=codeVarRowStruct%>.<%=dynamicColName%> = <%=codeVarDynamic%>;
<%

View File

@@ -36,15 +36,6 @@
boolean stats = codeGenArgument.isStatistics();
boolean trace = codeGenArgument.isTrace();
boolean isRunInMultiThread = codeGenArgument.getIsRunInMultiThread();
boolean exportTypeSpringBoot = false;
if (process instanceof org.talend.core.model.process.IProcess2) {
org.talend.core.model.process.IProcess2 p2 = (org.talend.core.model.process.IProcess2) process;
if (p2.getProperty() != null && p2.getProperty().getAdditionalProperties() != null) {
exportTypeSpringBoot = "REST_MS".equals(p2.getProperty().getAdditionalProperties().get(org.talend.core.runtime.process.TalendProcessArgumentConstant.ARG_BUILD_TYPE));
}
}
List<IContextParameter> params = new ArrayList<IContextParameter>();
params=process.getContextManager().getDefaultContext().getContextParameterList();
String className = process.getName();
@@ -150,8 +141,7 @@ for (INode node : process.getNodesOfType("tRESTClient")) {
}
}
boolean isChildRouteJob = !process.getNodesOfType("tRouteInput").isEmpty();
boolean talendEsbJobFactory = actAsProvider || isChildRouteJob;
boolean talendEsbJobFactory = actAsProvider || !process.getNodesOfType("tRouteInput").isEmpty();
boolean talendEsbJob = talendEsbJobFactory || actAsConsumer || ProcessorUtilities.isEsbJob(process);
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));//log4j enable
@@ -255,11 +245,6 @@ if(isRunInMultiThread){
<%//uft-8 is for temp file, for example: tSortRow, tMap. Because they need keep reversibility.%>
private final static String utf8Charset = "UTF-8";
<%
if(!exportTypeSpringBoot || isChildRouteJob){
%>
//contains type for every context property
public class PropertiesWithType extends java.util.Properties {
private static final long serialVersionUID = 1L;
@@ -280,16 +265,9 @@ if(!exportTypeSpringBoot || isChildRouteJob){
return propertyTypes.get(key);
}
}
<%
}
%>
// create and load default properties
private java.util.Properties defaultProps = new java.util.Properties();
<%
if(!exportTypeSpringBoot){
%>
// create application properties with default
public class ContextProperties extends PropertiesWithType {
@@ -355,10 +333,6 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
}
%>
}
<%
}
%>
protected ContextProperties context = new ContextProperties(); // will be instanciated by MS.
public ContextProperties getContext() {
return this.context;
@@ -369,10 +343,6 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
public Integer errorCode = null;
private String currentComponent = "";
<%
// is necessary? avoid some compiler issue as var name not found? TODO consider remove it, also the currentComponent above
%>
private String cLabel = null;
<%
//tParallelize will wrap globalMap with synchronizedMap
if(isRunInMultiThread || NodeUtil.containsMultiThreadComponent(process)){
%>
@@ -415,101 +385,11 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
<%
INode jobCatcherNode = null;
//one matched component or part, one thread
//why not computed by cpu or resource : please image this case :
//loop==>(input==>(twritexmlfield A)==>(twritexmlfield B)==>(twritexmlfield C)==>output), dead lock as cycle dependency and only one thead in thread pool
//maybe newCachedThreadPool is a better idea, but that have risk for creating more threads, then more memory for TDI-47230
//why not generate thread pool object in subprocess scope :
// 1: major reason : difficult to control the var scope, somewhere can't access it, then compiler issue
// 2: we may need this thread pool for bigger scope, not only for twritexmlfield/twritejsonfield in future
// 3: we don't suppose this thread pool cost big resource after all tasks done, so we can shutdown it more later,
// for example, most time, user will use less than 3 twritexmlfield in one job, then 3 threads thread pool, we can close them in job finish code part,
// not a big cost to keep that. And of course, we best to start&clean it in subprocess finish, but that's risk of 1 above.
int threadPoolSize = 0;
boolean tHMapExists = false;
boolean tHMapOutExists = false;
boolean tRESTRequestLoopExists = false;
for (INode nodeInProcess : processNodes) {
String componentName = nodeInProcess.getComponent().getName();
if(jobCatcherNode==null && "tJobStructureCatcher".equals(componentName)) {
if("tJobStructureCatcher".equals(componentName)) {
jobCatcherNode = nodeInProcess;
continue;
}
if(!nodeInProcess.isActivate()) continue;
if("tHMap".equals(componentName)) {
tHMapExists = true;
continue;
}
if("tHMapOut".equals(componentName)) {
tHMapOutExists = true;
continue;
}
if("tRESTRequestLoop".equals(componentName)) {
tRESTRequestLoopExists = true;
continue;
}
if("tWriteXMLFieldOut".equals(componentName)) {
IConnection nextMergeConn = NodeUtil.getNextMergeConnection(nodeInProcess);
if(nextMergeConn == null || nextMergeConn.getInputId()==1){
threadPoolSize++;
}
}
}
if(threadPoolSize>0) {
if(tRESTRequestLoopExists) {//miscroservice
%>
private class DaemonThreadFactory implements java.util.concurrent.ThreadFactory {
java.util.concurrent.ThreadFactory factory = java.util.concurrent.Executors.defaultThreadFactory();
public java.lang.Thread newThread(java.lang.Runnable r) {
java.lang.Thread t = factory.newThread(r);
t.setDaemon(true);
return t;
}
}
<%
}
if(tHMapExists || tHMapOutExists) {
%>
private final java.util.concurrent.ExecutorService es = java.util.concurrent.Executors.newFixedThreadPool(<%=threadPoolSize%> <%if(tRESTRequestLoopExists) {%>,new DaemonThreadFactory()<%}%>);
<%
} else {
%>
private final java.util.concurrent.ExecutorService es = java.util.concurrent.Executors.newCachedThreadPool(<%if(tRESTRequestLoopExists) {%>new DaemonThreadFactory()<%}%>);
<%
}
if(tRESTRequestLoopExists) {//miscroservice
%>
{
java.lang.Runtime.getRuntime().addShutdownHook(new java.lang.Thread() {
public void run() {
es.shutdown();
try {
if(!es.awaitTermination(60, java.util.concurrent.TimeUnit.SECONDS)) {
es.shutdownNow();
if(!es.awaitTermination(60, java.util.concurrent.TimeUnit.SECONDS)) {
}
}
} catch (java.lang.InterruptedException ie) {
es.shutdownNow();
} catch (java.lang.Exception e) {
}
}
});
}
<%
break;
}
}
@@ -627,10 +507,7 @@ private class TalendException extends Exception {
private java.util.Map<String, Object> globalMap = null;
private Exception e = null;
private String currentComponent = null;
private String cLabel = null;
private String virtualComponentName = null;
public void setVirtualComponentName (String virtualComponentName){
@@ -642,11 +519,6 @@ private class TalendException extends Exception {
this.globalMap = globalMap;
this.e = e;
}
private TalendException(Exception e, String errorComponent, String errorComponentLabel, final java.util.Map<String, Object> globalMap) {
this(e, errorComponent, globalMap);
this.cLabel = errorComponentLabel;
}
public Exception getException() {
return this.e;
@@ -706,15 +578,6 @@ private class TalendException extends Exception {
<%
boolean needCatchTalendException = false;
if(enableLogStash) {
%>
if(enableLogStash) {
<%=jobCatcherNode.getUniqueName() %>.addJobExceptionMessage(currentComponent, cLabel, null, e);
<%=jobCatcherNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
}
<%
}
if (process.getNodesOfType("tLogCatcher").size() > 0) {
List<INode> logCatchers = (List<INode>)process.getNodesOfType("tLogCatcher");
for (INode logCatcher : logCatchers) {
@@ -725,7 +588,7 @@ private class TalendException extends Exception {
<%
}
}
INode virtualNCatchNode = null;
boolean hasRealCatchNode = false;
for (INode logCatcher : logCatchers) {

View File

@@ -71,7 +71,7 @@
}
}
TalendException te = new TalendException(e, currentComponent, cLabel, globalMap);
TalendException te = new TalendException(e, currentComponent, globalMap);
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>

View File

@@ -30,10 +30,6 @@ boolean containsTPartitioner = node.getProcess().getNodesOfType("tPartitioner").
boolean isRunJob = "tRunJob".equals(node.getComponent().getName());
IProcess process = node.getProcess();
final boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J_ACTIVATE__"));
final boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(process, "__LOG4J2_ACTIVATE__"));//log4j2 enable
final String MDC_CLASS = "org.slf4j.MDC";
boolean isTestContainer=ProcessUtils.isTestContainer(process);
String className = process.getName();
if (isTestContainer) {
@@ -195,11 +191,8 @@ for (IConnection iterateConn : iterateConnSet) { //1
}
public void run() {
<% if(isLog4jEnabled && isLog4j2Enabled) { %>
mdcInfo.forEach(<%=MDC_CLASS%>::put);
<% } %>
public void run() {
java.util.Map threadRunResultMap = new java.util.HashMap();
threadRunResultMap.put("errorCode", null);
threadRunResultMap.put("status", "");
@@ -207,7 +200,6 @@ for (IConnection iterateConn : iterateConnSet) { //1
this.isRunning = true;
String currentComponent = "";
String cLabel = null;
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){

View File

@@ -67,7 +67,7 @@
this.errorCode = localErrorCode;
}
}
pool.setErrorThread(this, new TalendException(e, currentComponent, cLabel, globalMap));
pool.setErrorThread(this, new TalendException(e, currentComponent, globalMap));
//pool.setErrorThread(this,e);
pool.stopAllThreads();
}finally{
@@ -117,7 +117,7 @@
} catch (InterruptedException e) {
e.printStackTrace();
} catch (java.lang.Exception te) {
throw new TalendException(te, currentComponent, cLabel, globalMap);
throw new TalendException(te, currentComponent, globalMap);
}
<%
}else{
@@ -228,7 +228,7 @@
<%
}
%>
TalendException te = new TalendException(e, currentComponent, cLabel, globalMap);
TalendException te = new TalendException(e, currentComponent, globalMap);
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>

View File

@@ -32,8 +32,6 @@
boolean stat = codeGenArgument.isStatistics();
boolean containsTPartitioner = subTree.getRootNode().getProcess().getNodesOfType("tPartitioner").size() > 0 ? true : false;
boolean isLog4jEnabled = ("true").equals(ElementParameterParser.getValue(subTree.getRootNode().getProcess(), "__LOG4J_ACTIVATE__"));
boolean isLog4j2Enabled = ("true").equals(ElementParameterParser.getValue(subTree.getRootNode().getProcess(), "__LOG4J2_ACTIVATE__"));//log4j2 enable
String MDC_CLASS = "org.slf4j.MDC";
%>
<%
@@ -1098,8 +1096,7 @@ public static class <%=conn.getName() %>Struct<%=templateOrigin %> implements ro
<%
} else if(javaType.isObjectBased() || typeToGenerate.equals("Geometry") || typeToGenerate.equals("Dynamic")) {
%>
dos.clearInstanceCache();
dos.writeObject(this.<%=column.getLabel() %>);
dos.writeObject(this.<%=column.getLabel() %>);
<%
} else {
typeToGenerate =JavaTypesManager.getTypeToGenerate(column.getTalendType(), false);
@@ -1431,8 +1428,7 @@ public static class <%=conn.getName() %>Struct<%=templateOrigin %> implements ro
<%
} else if(typeToGenerate.equals("Object") || typeToGenerate.equals("Geometry") || typeToGenerate.equals("BigDecimal") || typeToGenerate.equals("List") || typeToGenerate.equals("Dynamic") || typeToGenerate.equals("Document")) {
%>
objectOut.clearInstanceCache();
objectOut.writeObject(this.<%=column.getLabel() %>);
objectOut.writeObject(this.<%=column.getLabel() %>);
<%
} else {
typeToGenerate =JavaTypesManager.getTypeToGenerate(column.getTalendType(), false);
@@ -1597,7 +1593,6 @@ public static class <%=conn.getName() %>Struct<%=templateOrigin %> implements ro
}
}
%>
<% if (subTree.isMethodSizeNeeded()){ %>
/**
* Start of Function: <%=subTree.getName() %>Process.
@@ -1608,12 +1603,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
globalMap.put("<%=subTree.getName() %>_SUBPROCESS_STATE", 0);
final boolean execStat = this.execStat;
<%if(isLog4jEnabled && isLog4j2Enabled) {%>
mdcInfo.forEach(<%=MDC_CLASS%>::put);
<%=MDC_CLASS%>.put("_subJobName", "<%=subTree.getName() %>");
<%=MDC_CLASS%>.put("_subJobPid", "<%=getAsciiRandomString(6)%>_" + subJobPidCounter.getAndIncrement());
<%}%>
<%
boolean isParallelize = false;
for (INode node : subTree.getNodes()) {
@@ -1652,7 +1641,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
this.isRunning = true;
String currentComponent = "";
String cLabel = null;
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>
@@ -1686,7 +1674,6 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
int iterateLoop = 0;
<%}%>
String currentComponent = "";
String cLabel = null;
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
try {

View File

@@ -93,25 +93,7 @@ public class CLASS
}
return toReturn;
}
// copy from routine TalendString
private static String getAsciiRandomString(int length) {
java.security.SecureRandom random = new java.security.SecureRandom();
int cnt = 0;
StringBuilder builder = new StringBuilder();
char ch;
int end = 'z' + 1;
int start = ' ';
while (cnt < length) {
ch = (char) (random.nextInt(end - start) + start);
if (Character.isLetterOrDigit(ch)) {
builder.append(ch);
cnt++;
}
}
return builder.toString();
}
public String generate(Object argument) {
return "";
}

View File

@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
CodeGenerator.JET.TimeOut=JET initialisation Time Out
CodeGenerator.newLine=\n\n\n\n
CodeGenerator.Node.NotFound=Node not found in current process
CodeGenerator.Components.NotFound={0}: Component is missing: {1}; use -D{2}=false in your studio or commandline to skip this check, and a warning message will be logged.
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=method not implemented: org.talend.designer.codegen.JavaRoutineSynchronizer line:49
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=method not implemented: org.talend.designer.codegen.JavaRoutineSynchronizer line:58
JetSkeletonManager.unableLoad=unable to load skeleton update cache file

View File

@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
CodeGenerator.JET.TimeOut=D\u00E9lai d'initialisation JET d\u00E9pass\u00E9
CodeGenerator.newLine=\n\n\n\n
CodeGenerator.Node.NotFound=N\u0153ud introuvable dans le processus courant
CodeGenerator.Components.NotFound={0}\u00A0: Le composant est manquant\u00A0: {1}; utilisez -D{2}=false dans votre Studio ou CommandLine pour ignorer cette v\u00E9rification. Un message d'avertissement sera enregistr\u00E9 dans les logs.
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=M\u00E9thode non impl\u00E9ment\u00E9e : org.talend.designer.codegen.JavaRoutineSynchronizer line:49
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=M\u00E9thode non impl\u00E9ment\u00E9e : org.talend.designer.codegen.JavaRoutineSynchronizer line:58
JetSkeletonManager.unableLoad=Impossible de charger le fichier de cache de la mise \u00E0 jour du squelette

View File

@@ -10,12 +10,11 @@ CodeGenerator.getGraphicalNode2=------process.getGeneratingNodes()------
CodeGenerator.JET.TimeOut=JET\u306E\u521D\u671F\u5316\u51E6\u7406\u304C\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8\u3057\u307E\u3057\u305F
CodeGenerator.newLine=\n\n\n\n
CodeGenerator.Node.NotFound=\u73FE\u5728\u306E\u30D7\u30ED\u30BB\u30B9\u306B\u30CE\u30FC\u30C9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
CodeGenerator.Components.NotFound={0}: \u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u304C\u6B20\u843D\u3057\u3066\u3044\u307E\u3059: {1}\u3002Studio\u3067 -D{2}=false\u3092\u4F7F\u3046\u3068\u3053\u306E\u30C1\u30A7\u30C3\u30AF\u304C\u30B9\u30AD\u30C3\u30D7\u3055\u308C\u3001\u8B66\u544A\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u30ED\u30B0\u30D5\u30A1\u30A4\u30EB\u306B\u8A18\u9332\u3055\u308C\u307E\u3059\u3002
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=\u30E1\u30BD\u30C3\u30C9\u304C\u5B9F\u88C5\u3055\u308C\u3066\u3044\u307E\u305B\u3093\\: org.talend.designer.codegen.JavaRoutineSynchronizer line\\:49
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=\u30E1\u30BD\u30C3\u30C9\u304C\u5B9F\u88C5\u3055\u308C\u3066\u3044\u307E\u305B\u3093\\: org.talend.designer.codegen.JavaRoutineSynchronizer line\\:58
JetSkeletonManager.unableLoad=\u30B9\u30B1\u30EB\u30C8\u30F3\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
JetSkeletonManager.unableSave=\u30B9\u30B1\u30EB\u30C8\u30F3\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
JetSkeletonManager.updateProblem=\u30B9\u30B1\u30EB\u30C8\u30F3\u6C38\u7D9A\u30C7\u30FC\u30BF\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u6642\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
JetSkeletonManager.unableLoad=\u30B9\u30B1\u30EB\u30C8\u30F3\u66F4\u65B0\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
JetSkeletonManager.unableSave=\u30B9\u30B1\u30EB\u30C8\u30F3\u66F4\u65B0\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
JetSkeletonManager.updateProblem=\u30B9\u30B1\u30EB\u30C8\u30F3\u6C38\u7D9A\u30C7\u30FC\u30BF\u66F4\u65B0\u6642\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F,
EmfEmittersPersistence.CodeGen.DataMissing=\u30B3\u30FC\u30C9\u751F\u6210\u306E\u30C7\u30FC\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002\u5B8C\u5168\u306A\u30B3\u30FC\u30C9\u751F\u6210\u3092\u958B\u59CB\u3057\u3066\u3044\u307E\u3059\u3002
CodeGeneratorEmittersPoolFactory.PersitentData.Error=\u6301\u7D9A\u30C7\u30FC\u30BF\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093:
CodeGeneratorEmittersPoolFactory.JETEmitters.NoPresent=JETEmitter \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u5B58\u5728\u3057\u307E\u305B\u3093\u3001\u5168\u4F53\u306E\u518D\u521D\u671F\u5316\u304C\u5FC5\u8981\u3067\u3059\u3002
@@ -29,14 +28,14 @@ CodeGeneratorEmittersPoolFactory.initialException=\u521D\u671F\u5316\u4E2D\u306B
CodeGeneratorEmittersPoolFactory.initMessage=\u751F\u6210\u30A8\u30F3\u30B8\u30F3\u306E\u521D\u671F\u5316\u4E2D...
CodeGeneratorEmittersPoolFactory.jetEmitterInitialException=JetEmitter\u306E\u521D\u671F\u5316\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
CodeGeneratorEmittersPoolFactory.operationCanceled=\u64CD\u4F5C\u306F\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F
CodeGeneratorEmittersPoolFactory.updatePaletteForEditors=\u30D1\u30EC\u30C3\u30C8\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8
CodeGeneratorEmittersPoolFactory.updatePaletteForEditors=\u30D1\u30EC\u30C3\u30C8\u3092\u66F4\u65B0
CodeGeneratorService.invalidLanguage1=\u7121\u52B9\u306A\u8A00\u8A9E\u30BF\u30A4\u30D7\u3067\u3059\u3002
CodeGeneratorService.invalidLanguage2=\u7121\u52B9\u306A\u8A00\u8A9E\u30BF\u30A4\u30D7\u3067\u3059\u3002
CodeGenInit.addMarkers=\u30EF\u30FC\u30AF\u30B9\u30DA\u30FC\u30B9\u306B\u30DE\u30FC\u30AB\u30FC\u3092\u8FFD\u52A0\u4E2D
CodeGenInit.createProject={0}\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u4F5C\u6210
CodeGenInit.deleteProject={0}\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664
CodeGenInit.initTemplate=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u521D\u671F\u5316
CodeGenInit.removeLink=\u30EA\u30F3\u30AF\u3055\u308C\u305F\u30EA\u30BD\u30FC\u30B9\u3092\u524A\u9664
CodeGenInit.removeLink=\u30EA\u30F3\u30AF\u3055\u308C\u305F\u30EA\u30BD\u30FC\u30B9\u306E\u524A\u9664
CodeGenInit.saveWorkspace=\u30EF\u30FC\u30AF\u30B9\u30DA\u30FC\u30B9\u306E\u4FDD\u5B58\u4E2D
DocumentRootImpl.mixed= (\u4E21\u7528:
NodesSubTree.enableParallel=__ENABLE_PARALLEL__
@@ -45,7 +44,7 @@ TalendJetEmitter.compileFail= \u30B3\u30F3\u30D1\u30A4\u30EB\u5931\u6557: {0} :
TalendJetEmitter.exception=\u4F8B\u5916
JetFilesProviderManager.unableLoad={0}\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
ComponentsFactory.afterSystemComponent=\u30B7\u30B9\u30C6\u30E0\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u5F8C
ComponentsFactory.componentNotFound=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093:
ComponentsFactory.componentNotFound=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093 \\:
ComponentsFactory.load.components=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30ED\u30FC\u30C9...
ComponentsFactory.parentNotRecompiled=\u8B66\u544A: *.inc.javajet\u306E\u89AA\u306F\u518D\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
ComponentsFactory.loadComponents.missingFolder=\u30D7\u30E9\u30B0\u30A4\u30F3"{1}"\u306B\u30D5\u30A9\u30EB\u30C0\u30FC"{0}"\u304C\u3042\u308A\u307E\u305B\u3093\u3002
@@ -58,15 +57,15 @@ ComponentsPreferencePage.configuration.LINK_STYLE=\u30C7\u30D5\u30A9\u30EB\u30C8
ComponentsPreferencePage.rowLimit=\u884C\u6570\u5236\u9650
ComponentsPreferencePage.WarningMsg=Talend Open Studio\u3092\u518D\u8D77\u52D5\u3057\u3066\u3001\u62E1\u5F35\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30ED\u30FC\u30C9\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
ComponentsPreferencePage.WarningTitle=\u8B66\u544A
ComponentsPreferencePage.directoryFieldLabel=\u30E6\u30FC\u30B6\u30FC\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0:
ComponentsPreferencePage.notValidDirectory=\u3053\u308C\u3092\u9078\u629E\u3059\u308B\u3068\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u30CD\u30B9\u30C8\u3055\u308C\u307E\u3059\u3002\u3053\u308C\u306F\u63A8\u5968\u3055\u308C\u307E\u305B\u3093\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?
ComponentsPreferencePage.directoryFieldLabel=\u30E6\u30FC\u30B6\u30FC\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D5\u30A9\u30EB\u30C0 \\:
ComponentsPreferencePage.notValidDirectory=\u3053\u308C\u3092\u9078\u629E\u3059\u308B\u3068\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u30CD\u30B9\u30C8\u3055\u308C\u307E\u3059\u3002\u3053\u308C\u306F\u63A8\u5968\u3055\u308C\u307E\u305B\u3093\u3002 \u7D9A\u884C\u3057\u307E\u3059\u304B?,
ComponentsPreferencePage.installComponentsFailure=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306B\u5931\u6557\u3057\u307E\u3057\u305F
ComponentsProviderManager.unableLoad=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30D7\u30ED\u30D0\u30A4\u30C0\u306E\u30ED\u30FC\u30C9\u304C\u3067\u304D\u307E\u305B\u3093
ComponenttRunJobPreferencePage.label=tRunJob\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u5F8C\u3001\u5BFE\u5FDC\u30B8\u30E7\u30D6\u3092\u8868\u793A\u3057\u306A\u3044\u3002
ComponentJobletPreferencePage.label=Joblet\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u5F8C\u3001\u5BFE\u5FDC\u30B8\u30E7\u30D6\u3092\u8868\u793A\u3057\u306A\u3044\u3002
ComponentsPreferencePage_SuccessTitle=\u6210\u529F
ComponentsPreferencePage_SuccessMessage1=\u65B0\u898F\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30ED\u30FC\u30C9\u3059\u308B\u305F\u3081\u306B\u306F\u3001Studio\u3092\u518D\u8D77\u52D5\u3057\u307E\u3059\u3002\u307E\u305F\u306F\u6B21\u56DE\u306E\u958B\u59CB\u6642\u306B\u30ED\u30FC\u30C9\u3055\u308C\u307E\u3059\u3002
ComponentsPreferencePage_SuccessMessage2=\u518D\u8D77\u52D5\u3057\u307E\u3059\u304B?
ComponentsPreferencePage_SuccessMessage2=\u518D\u8D77\u52D5\u3057\u307E\u3059\u304B\uFF1F
ComponentsPreferencePage.enableOnLineHelp=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30AA\u30F3\u30E9\u30A4\u30F3\u30D8\u30EB\u30D7\u3092\u6709\u52B9\u5316
ComponentsPreferencePage.titleInstallHelp=\u30AA\u30D5\u30E9\u30A4\u30F3\u30D8\u30EB\u30D7\u6A5F\u80FD\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u307E\u3059\u304B?
ComponentsPreferencePage.msgInstallHelp=\u3053\u308C\u306B\u3088\u3063\u3066\u8FFD\u52A0\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30C0\u30A4\u30A2\u30ED\u30B0\u304C\u958B\u304D\u3001\u30AA\u30D5\u30E9\u30A4\u30F3\u30D8\u30EB\u30D7\u6A5F\u80FD\u304C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u307E\u3059\u3002\u7D9A\u884C\u3057\u307E\u3059\u304B?
@@ -76,7 +75,7 @@ XsdValidationCacheManager.unableLoadxsd=XSD\u30D0\u30EA\u30C7\u30FC\u30B7\u30E7\
XsdValidationCacheManager.unableSavexsd=XSD\u30D0\u30EA\u30C7\u30FC\u30B7\u30E7\u30F3\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u30D5\u30A1\u30A4\u30EB\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093
prefs.configuration.LINK_STYLE.AUTO=\u81EA\u52D5
prefs.configuration.LINK_STYLE.BEZIER_CURVE=\u66F2\u7DDA
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA(\u9AD8\u901F)
prefs.configuration.LINK_STYLE.LINE=\u76F4\u7DDA\uFF08\u9AD8\u901F\uFF09
FAMILY.AS400=AS400
FAMILY.Access=\u30A2\u30AF\u30BB\u30B9
FAMILY.Alfresco=Alfresco
@@ -88,7 +87,7 @@ FAMILY.Connections=\u63A5\u7D9A
FAMILY.Custom_Code=\u30AB\u30B9\u30BF\u30E0\u30B3\u30FC\u30C9
FAMILY.DB2=DB2
FAMILY.DB_Generic=\u6C4E\u7528ODBC
FAMILY.DB_JDBC=\u30B8\u30A7\u30CD\u30EA\u30C3\u30AFJDBC
FAMILY.DB_JDBC=\u6C4E\u7528JDBC
FAMILY.DB_SCD=DB SCD
FAMILY.Data_Quality=\u30C7\u30FC\u30BF\u30AF\u30AA\u30EA\u30C6\u30A3
FAMILY.Data_Privacy=\u30C7\u30FC\u30BF\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC

View File

@@ -10,7 +10,6 @@ CodeGenerator.getGraphicalNode2=\u8FDB\u7A0B\u5F97\u5230\u751F\u6210\u8282\u70B9
CodeGenerator.JET.TimeOut=JET \u521D\u59CB\u5316\u8D85\u65F6
CodeGenerator.newLine=\n\n\n\n
CodeGenerator.Node.NotFound=\u5728\u5F53\u524D
CodeGenerator.Components.NotFound={0}: \u7EC4\u4EF6\u7F3A\u5931: {1}; \u5728 Studio \u6216\u547D\u4EE4\u884C\u4E2D\u4F7F\u7528 -D{2}=false \u53EF\u8DF3\u8FC7\u6B64\u9879\u68C0\u67E5\uFF0C\u540C\u65F6\u89E6\u53D1\u8B66\u544A\u6D88\u606F\u3002
JavaRoutineSynchronizer.UnsupportedOperation.Exception1=\u65B9\u6CD5\u672A\u5B9E\u65BD\uFF1Aorg.talend.designer.codegen.JavaRoutineSynchronizer line:49
JavaRoutineSynchronizer.UnsupportedOperation.Exception2=\u65B9\u6CD5\u672A\u5B9E\u65BD\uFF1Aorg.talend.designer.codegen.JavaRoutineSynchronizer line:58
JetSkeletonManager.unableLoad=\u65E0\u6CD5\u52A0\u8F7D\u4E3B\u5E72\u66F4\u65B0\u7F13\u5B58\u6587\u4EF6

View File

@@ -66,7 +66,6 @@ import org.talend.designer.codegen.model.CodeGeneratorEmittersPoolFactory;
import org.talend.designer.codegen.model.CodeGeneratorInternalTemplatesFactoryProvider;
import org.talend.designer.codegen.proxy.JetProxy;
import org.talend.designer.core.generic.model.Component;
import org.talend.designer.core.model.components.DummyComponent;
import org.talend.designer.runprocess.ProcessorUtilities;
/**
@@ -846,25 +845,6 @@ public class CodeGenerator implements ICodeGenerator {
IComponentFileNaming componentFileNaming = ComponentsFactoryProvider.getFileNamingInstance();
IComponent component = node.getComponent();
if (component instanceof DummyComponent) {
if (((DummyComponent) component).isMissingComponent()) {
String processName = "";
try {
IProcess proc = node.getProcess();
processName = proc.getName() + " " + proc.getVersion();
} catch (Exception e) {
ExceptionHandler.process(e);
}
if (IProcess.ERR_ON_COMPONENT_MISSING) {
throw new CodeGeneratorException(Messages.getString("CodeGenerator.Components.NotFound", processName,
component.getName(), IProcess.PROP_ERR_ON_COMPONENT_MISSING));
}
if (ECodePart.BEGIN.equals(part)) {
log.warn(Messages.getString("CodeGenerator.Components.NotFound", processName, component.getName(),
IProcess.PROP_ERR_ON_COMPONENT_MISSING));
}
}
}
// some code unification to handle all component types the same way.
String templateURI = component.getTemplateFolder() + TemplateUtil.DIR_SEP
+ componentFileNaming.getJetFileName(component.getTemplateNamePrefix(), language.getExtension(), part);

View File

@@ -152,9 +152,7 @@ public class CodeGeneratorService implements ICodeGeneratorService {
ComponentsFactoryProvider.getInstance().resetCache();
ILibraryManagerService librairesManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault().getService(
ILibraryManagerService.class);
//TUP-31721: The generated studio index will include every possible values with TP_ALL license .
//Studio 8 will not re-generate the index after applying patch and installing any component.
librairesManagerService.clearCache(false);
librairesManagerService.clearCache();
CorePlugin.getDefault().getLibrariesService().syncLibraries();
Job job = CodeGeneratorEmittersPoolFactory.initialize();
// achen modify to record ctrl+shift+f3 is pressed to fix bug 0006107

View File

@@ -46,7 +46,6 @@ import org.talend.commons.exception.BusinessException;
import org.talend.commons.exception.ExceptionHandler;
import org.talend.commons.utils.io.FilesUtils;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.ILibraryManagerService;
import org.talend.core.language.LanguageManager;
import org.talend.core.model.component_cache.ComponentsCache;
import org.talend.core.model.components.AbstractComponentsProvider;
@@ -91,8 +90,6 @@ public class ComponentsFactory implements IComponentsFactory {
private static Set<IComponent> customComponentList = new HashSet<>(); // user/exchange/tck components
private static Map<IComponent, File> customComponentFolderMap = new HashMap<IComponent, File>();
private IProgressMonitor monitor;
private SubMonitor subMonitor;
@@ -135,7 +132,6 @@ public class ComponentsFactory implements IComponentsFactory {
componentList.clear();
skeletonList.clear();
customComponentList.clear();
customComponentFolderMap.clear();
boolean needRegenerate = false;
if (CodeGeneratorActivator.getDefault().getBundle().getBundleContext().getProperty("osgi.dev") != null) {
@@ -173,8 +169,6 @@ public class ComponentsFactory implements IComponentsFactory {
initComponentNameMap();
isInitializing.set(false);
// sync custom component libs after init
syncCustomComponentLibs();
// TimeMeasure.step("initComponents", "createCache");
log.info(componentList.size() + " components loaded in " + (System.currentTimeMillis() - startTime) + " ms"); //$NON-NLS-1$ //$NON-NLS-2$
@@ -374,7 +368,6 @@ public class ComponentsFactory implements IComponentsFactory {
} else {
componentList.add(currentComp);
customComponentList.add(currentComp);
customComponentFolderMap.put(currentComp, currentFolder);
}
} catch (MissingMainXMLComponentFileException e) {
log.trace(currentFolder.getName() + " is not a " + getCodeLanguageSuffix() + " component", e); //$NON-NLS-1$ //$NON-NLS-2$
@@ -394,23 +387,6 @@ public class ComponentsFactory implements IComponentsFactory {
}
}
private void syncCustomComponentLibs() {
try {
if (GlobalServiceRegister.getDefault().isServiceRegistered(ILibraryManagerService.class)) {
ILibraryManagerService libraryService = GlobalServiceRegister.getDefault()
.getService(ILibraryManagerService.class);
if (libraryService != null) {
customComponentFolderMap.forEach((component, componentFolder) -> libraryService
.deployLibsFromCustomComponents(componentFolder, component.getModulesNeeded()));
}
}
} catch (Exception e) {
ExceptionHandler.process(e);
} finally {
customComponentFolderMap.clear();
}
}
private void loadComponentsFromFolder(String pathSource, AbstractComponentsProvider provider) {
// Changed by Marvin Wang on Feb.22 for bug TDI-19166, caz the test ConnectionManagerTest maybe get the null
// context.

View File

@@ -13,7 +13,6 @@
package org.talend.designer.codegen.components.model;
import java.util.List;
import java.util.stream.Collectors;
import org.talend.core.model.components.IComponent;
import org.talend.core.ui.component.ComponentsFactoryProvider;
@@ -46,7 +45,6 @@ public class UserComponentsTokenCollector extends AbstractTokenCollector {
public JSONObject collect() throws Exception {
JSONObject object = new JSONObject();
List<IComponent> customComponents = ComponentsFactoryProvider.getInstance().getCustomComponents();
customComponents = filterOutComponents(customComponents);
JSONArray customComponentsArray = new JSONArray();
if (customComponents != null) {
for (int i = 0; i < customComponents.size(); i++) {
@@ -57,9 +55,4 @@ public class UserComponentsTokenCollector extends AbstractTokenCollector {
return object;
}
private List<IComponent> filterOutComponents(List<IComponent> customComponents) {
customComponents = customComponents.stream().filter(comp ->!"tTaCoKitGuessSchema".equals(comp.getName())).collect(Collectors.toList());
return customComponents;
}
}

View File

@@ -55,9 +55,6 @@ public enum EInternalTemplate {
CAMEL_RUNIF("camel_run_if", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
CAMEL_SPECIALLINKS("camel_speciallinks", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
MICROSERVICE_APP("microservice_app", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
MICROSERVICE_APP_MS_CONTEXT_PROPERTIES("microservice_app_ms_context_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
MICROSERVICE_APP_CONTEXT_PROPERTIES("microservice_app_context_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
MICROSERVICE_APP_PROPERTIES("microservice_app_properties","0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$
HEADER_ADDITIONAL("header_additional", "0.0.1"), //$NON-NLS-1$ //$NON-NLS-2$

View File

@@ -418,13 +418,6 @@ public final class CodeGeneratorEmittersPoolFactory {
jetBean.setClassLoader(createDelegateClassLoader(jetBean.getClassLoader(), sparkUtilsPluginName,
"org.talend.designer.spark.SparkPlugin")); //$NON-NLS-1$
}
String bigdataDIUtilsPluginName = "org.talend.designer.bigdata.di"; //$NON-NLS-1$
if (PluginChecker.isPluginLoaded(bigdataDIUtilsPluginName)) {
jetBean.addClassPath("BIGDATA_DI_LIBRARIES", bigdataDIUtilsPluginName); //$NON-NLS-1$
jetBean.setClassLoader(createDelegateClassLoader(jetBean.getClassLoader(), bigdataDIUtilsPluginName,
"org.talend.designer.bigdata.di.BigdataDiPlugin")); //$NON-NLS-1$
}
return jetBean;
}
@@ -480,7 +473,6 @@ public final class CodeGeneratorEmittersPoolFactory {
// generate the code.
String sparkUtilsPluginName = "org.talend.designer.spark"; //$NON-NLS-1$
String bigDataUtilsPluginName = "org.talend.designer.bigdata"; //$NON-NLS-1$
String bigdataDIUtilsPluginName = "org.talend.designer.bigdata.di"; //$NON-NLS-1$
if (PluginChecker.isPluginLoaded(sparkUtilsPluginName) && ("SPARK".equals(component.getPaletteType()) //$NON-NLS-1$
|| "MR".equals(component.getPaletteType()) || "STORM".equals(component.getPaletteType()) //$NON-NLS-1$ //$NON-NLS-2$
|| "SPARKSTREAMING".equals(component.getPaletteType()))) { //$NON-NLS-1$
@@ -502,22 +494,6 @@ public final class CodeGeneratorEmittersPoolFactory {
jetBean.getClassLoader()));
}
} else if (PluginChecker.isPluginLoaded(bigdataDIUtilsPluginName)) { //$NON-NLS-1$
jetBean.addClassPath("BIGDATA_DI_LIBRARIES", bigdataDIUtilsPluginName); //$NON-NLS-1$
jetBean.setClassLoader(createDelegateClassLoader(new CodeGeneratorEmittersPoolFactory().getClass().getClassLoader(),
bigdataDIUtilsPluginName, "org.talend.designer.bigdata.di.BigdataDiPlugin")); //$NON-NLS-1$
// If Big Data DI AND with an external component, use the external component as the parent classloader and
// Big Data DI as a secondary, delegate classloader.
if (component.getPluginExtension() != null) {
jetBean.addClassPath(
"EXTERNAL_COMPONENT_" + component.getPluginExtension().toUpperCase().replaceAll("\\.", "_"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
component.getPluginExtension());
jetBean.setClassLoader(new DelegateClassLoader(
ExternalNodesFactory.getInstance(component.getPluginExtension()).getClass().getClassLoader(),
jetBean.getClassLoader()));
}
} else if (component.getPluginExtension() != null) {
jetBean.addClassPath("EXTERNAL_COMPONENT_" + component.getPluginExtension().toUpperCase().replaceAll("\\.", "_"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="class"/>
</classpath>

View File

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>org.talend.designer.components.exchange</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

View File

@@ -0,0 +1,3 @@
#Wed Aug 31 14:34:59 CST 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

View File

@@ -0,0 +1,41 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Exchange Plug-in
Bundle-SymbolicName: org.talend.designer.components.exchange;singleton:=true
Bundle-Version: 8.0.1.qualifier
Bundle-Activator: org.talend.designer.components.exchange.ExchangePlugin
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui,
org.apache.log4j,
org.apache.commons.collections,
org.apache.commons.discovery,
org.apache.commons.logging,
org.apache.commons.commons-beanutils,
org.apache.commons.io,
org.apache.commons.lang,
org.apache.commons.httpclient,
org.talend.commons.ui,
org.talend.core,
org.talend.core.ui,
org.talend.utils,
org.talend.librariesmanager,
org.talend.libraries.mozilla;resolution:=optional,
org.talend.libraries.uniserv;resolution:=optional,
org.talend.designer.core,
org.talend.model,
org.talend.repository,
org.talend.core.repository,
org.talend.updates.runtime,
org.eclipse.ui.intro,
org.eclipse.ui.forms,
org.eclipse.jface.text
Bundle-ActivationPolicy: lazy
Bundle-Vendor: .Talend SA.
Export-Package: org.talend.designer.components.exchange,
org.talend.designer.components.exchange.i18n,
org.talend.designer.components.exchange.ui,
org.talend.designer.components.exchange.ui.views
Eclipse-BundleShape: dir
Import-Package: org.codehaus.jackson,
org.codehaus.jackson.map,
org.talend.registration.wizards.register

View File

@@ -0,0 +1,16 @@
source.. = src/main/java/
output.. = class/
bin.includes = META-INF/,\
.,\
plugin.xml,\
icons/,\
plugin.properties,\
model/,\
content/,\
plugin_de.properties,\
plugin_fr.properties,\
plugin_it.properties,\
plugin_ja.properties,\
plugin_ru.properties,\
plugin_swtbot.properties,\
plugin_zh_CN.properties

View File

@@ -0,0 +1,204 @@
body, td, th {
font-size: 12px;
color: #404040;
line-height: 23px;
font-family: Verdana, Arial, Helvetica, sans-serif;
padding: 5px;
}
input, textarea {
border: 1px solid #9BB9F5;
}
body {
margin: 0px;
height: 100%;
background-color: #EBEBDB;
}
ul {
margin: 0px;
padding: 0px;
list-style-type: none;
}
a:link.xh {
color: #000000;
text-decoration: none;
}
a:hover.xh {
text-decoration: none;
}
a:visited.xh {
text-decoration: none;
color: #000000;
}
.hover {
background: rgb(167,207,223); /* Old browsers */
color: white
}
.leave {
background: none;
}
img {
border: 0px;
}
.style_1 {
font-size: 16px;
}
.style_2 {
color: #000000;
}
.style_3 {
font-weight: bold;
}
.style_4{
font-size: 16px;
font-weight: bold;
color: #000000;
}
div {
margin: 0;
padding: 0
}
#container {
position:relative;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
#container .menu {
position: absolute;
left: 0;
top: 0;
width: 200px;
height: 100%;
float: left;
border: 1px solid #9BB9F5;
border-right: 0px;
}
#container .main1 {
position: absolute;
left: 200;
top: 0;
float: left;
background: #FFFFFF;
}
#menu li {
display: block;
cursor: pointer;
text-align: left;
padding: 0px 0px;
}
.ulhide {
display: none;
overflow: auto;
}
.ulblock {
display: block;
}
.left_1 {
width: 100px;
margin-top: 10px;
float: left;
padding-left: 0px;
vertical-align: top;
margin-right: 10px;
}
.compDesc {
height: 200px;
margin-top: 10px;
margin-bottom: 30px;
padding-left: 20px;
overflow: auto;
border: 1px solid #9BB9F5;
}
.compImg {
height: 200px;
margin-top: 10px;
margin-bottom: 30px;
padding-left: 10px;
border: 1px solid #9BB9F5;
}
.reviews {
width: 60%;
height: 350px;
margin-bottom: 10px;
padding-left: 10px;
word-break: break-all;
WORD-WRAP: break-word;
}
.userreview {
font-size: 13px;
color: #000000;
font-weight: bold;
padding-left: 10px;
}
.left_11 {
width: 100px;
margin-top: 10px;
float: left;
padding-left: 0px;
vertical-align: top;
margin-right: 10px;
}
.toolbar {
background-color: #EBEBDB;
border: 1px solid #9BB9F5;
border-bottom: 0px;
height: 40px;
padding: 5px;
}
.icon {
-moz-border-radius: 3px;
border: 1px solid #EBEBDB;
border-radius: 3px;
padding: 5px;
vertical-align: middle;
cursor: pointer;
}
a.icon:hover {
border: 1px solid #9BB9F5;
}
.toolbarButton {
-moz-border-radius: 3px;
border: 1px solid #EBEBDB;
border-radius: 3px;
cursor: pointer;
padding: 5px;
text-align: center;
width: 140px;
}
a.toolbarButton:hover {
border: 1px solid #9BB9F5;
}
table.tableStyle {
width: 600px;
}
.formStyle {
position: relative;
height: 100%;
border: 1px solid #9BB9F5;
border-top: 0px;
}
div.fileinputs {
position: relative;
}
div.fakefile {
position: absolute;
top: 0px;
left: 0px;
z-index: 1;
}
input.file {
position: relative;
text-align: right;
-moz-opacity:0 ;
filter:alpha(opacity: 0);
opacity: 0;
z-index: 2;
width: 260px;
cursor: pointer;
}

View File

@@ -0,0 +1,620 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
<script type="text/javascript">
String.prototype.replaceAll = function(s1, s2) {
return this.replace(new RegExp(s1, "gm"), s2);
}
String.prototype.replaceAll2Excep = function(s1, s2) {
var temp = this;
while(temp.indexOf(s1) != -1) {
temp = temp.replace(s1, s2);
}
return temp;
}
function onResizeDocument () {
var navName = navigator.appName;
var newWidth = null;
var tabs;
var intWidth = null;
var newWidth = null;
if(navName == 'Microsoft Internet Explorer'){
intWidth = (document.body.clientWidth - 213);
}else{
intWidth = (document.width - 213);
}
newWidth = intWidth+"px";
tabs = document.getElementsByTagName("table");
tabs[0].style.width = newWidth;
tabs[1].style.width = newWidth;
tabs[2].style.width = (intWidth - 20)+"px";
tabs[4].style.width = newWidth;
tabs[5].style.width = newWidth;
tabs[6].style.width = newWidth;
tabs[9].style.width = newWidth;
tabs[12].style.width = newWidth;
}
function onchangeFileUpload(fileId,fakefileId){
var v = document.getElementById(fileId).value;
document.getElementById(fakefileId).value=v;
}
function filterReWriteUrl() {
var prefix = "http://org.eclipse.ui.intro/runAction?pluginId=org.talend.designer.components.exchange&amp;class=org.talend.designer.components.exchange.ui.actions.FilterExtensionAction&amp;id=org.talend.designer.components.exchange.ui.actions.FilterExtensionAction&amp;text="
var jsonObj = document.getElementById("avialable_filter_text").value;
var url = prefix + jsonObj;
document.getElementById('commit_filter').href = url;
}
function createNewExtensionWriteUrl() {
var prefix = "http://org.eclipse.ui.intro/runAction?pluginId=org.talend.designer.components.exchange&amp;class=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;id=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;type=UPLOAD_MY_EXTENSION"
var label = "label:" + "'" + document.getElementById("extension_label").value + "'";
var lastVersionAvailable = "lastVersionAvailable:" + "'" + document.getElementById("lastVersionAvailable").value + "'";
var description = "description:" + "'" + document.getElementById("extension_description").value + "'";
description = description.replaceAll2Excep("\r\n", "/n/r");
var checkedType = "";
var filtervalue = "";
var compatibilities = document.getElementsByName("compatibility");
if(compatibilities[0].checked == true) {
checkedType = "all"
filtervalue = null;
} else if(compatibilities[1].checked == true) {
checkedType = "older"
filtervalue = document.getElementById(checkedType).value;
} else if(compatibilities[2].checked == true) {
checkedType = "newer"
filtervalue = document.getElementById(checkedType).value;
} else if(compatibilities[3].checked == true) {
checkedType = "except"
filtervalue = document.getElementById(checkedType).value;
} else if(compatibilities[4].checked == true) {
checkedType = "only"
filtervalue = document.getElementById(checkedType).value;
}
<!-- validate the createNewExtension text start-->
var labelValidate = document.getElementById("extension_label").value;
var lastVersionAvailableValidate = document.getElementById("lastVersionAvailable").value;
var filename = document.getElementById("filename").value;
var isSkipPage = true;
if(labelValidate.replace(/\s/g,"")==""){
alert("Extension Title is empty");
isSkipPage = false;
}else if(labelValidate!=labelValidate.replace(/(^\s*)|(\s*$)/g,"")){
alert("Extension Title contains incorrect characters!");
isSkipPage = false;
}else if(labelValidate=="null"){
alert("Extension Title can not be null");
isSkipPage = false;
}else if(lastVersionAvailableValidate.replace(/\s/g,"")==""){
alert("Initial Version is empty");
isSkipPage = false;
}else if(lastVersionAvailableValidate!=lastVersionAvailableValidate.replace(/[^\w\.\/]/ig,'')){
alert("Initial Version contains incorrect characters!");
isSkipPage = false;
}else if(lastVersionAvailableValidate=="null"){
alert("Initial Version can not be null");
isSkipPage = false;
}else if(filename.replace(/\s/g,"")==""){
alert("Please input a vaild File path");
isSkipPage = false;
}
<!-- validate the createNewExtension text end-->
if (isSkipPage == true) {
var listVersionCompatibles = "listVersionCompatibles:" + "'" + checkedType + "'";
var filter = "filter:" + "'" + filtervalue + "'";
var filename = "filename:" + "'" + document.getElementById("filename").value + "'";
filename = filename.replaceAll2Excep("\\", "/");
var jsonObj = "{" + label + "," + lastVersionAvailable + "," + description + "," + listVersionCompatibles + "," + filter + "," + filename + "}"
var url = prefix + "&amp;extensionValues=" + jsonObj;
document.getElementById('commit').href = url;
window.location.href = document.getElementById('commit').href;
}
}
function updateReWriteUrl() {
var prefix = "http://org.eclipse.ui.intro/runAction?pluginId=org.talend.designer.components.exchange&amp;class=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;id=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;type=UPDATE_MY_EXTENSION"
var lastVersionAvailable = "lastVersionAvailable:" + "'" + document.getElementById("lastVersionAvailable_update").value + "'";
var checkedType = "";
var filtervalue = "";
var compatibilities = document.getElementsByName("compatibility_update");
if(compatibilities[0].checked == true) {
checkedType = "all"
filtervalue = null;
} else if(compatibilities[1].checked == true) {
checkedType = "older"
filtervalue = document.getElementById(checkedType + "_update").value;
} else if(compatibilities[2].checked == true) {
checkedType = "newer"
filtervalue = document.getElementById(checkedType + "_update").value;
} else if(compatibilities[3].checked == true) {
checkedType = "except"
filtervalue = document.getElementById(checkedType + "_update").value;
} else if(compatibilities[4].checked == true) {
checkedType = "only"
filtervalue = document.getElementById(checkedType + "_update").value;
}
<!-- validate the updateExtension text start-->
var lastVersionAvailable_updateValidate = document.getElementById("lastVersionAvailable_update").value;
var filename_update = document.getElementById("filename_update").value;
var isSkipPage = true;
if(lastVersionAvailable_updateValidate.replace(/\s/g,"")==""){
alert("New Version is empty");
isSkipPage = false;
}else if(lastVersionAvailable_updateValidate!=lastVersionAvailable_updateValidate.replace(/[^\w\.\/]/ig,'')){
alert("New Version contains incorrect characters!");
isSkipPage = false;
}else if(lastVersionAvailable_updateValidate=="null"){
alert("New Version can not be null");
isSkipPage = false;
}else if(filename_update.replace(/\s/g,"")==""){
alert("Please input a vaild File path");
isSkipPage = false;
}
<!-- validate the updateExtension text end-->
if (isSkipPage == true) {
var listVersionCompatibles = "listVersionCompatibles:" + "'" + checkedType + "'";
var filter = "filter:" + "'" + filtervalue + "'";
var filename = "filename:" + "'" + document.getElementById("filename_update").value + "'";
filename = filename.replaceAll2Excep("\\", "/");
var jsonObj = "{" + lastVersionAvailable + "," + listVersionCompatibles + "," + filter + "," + filename + "}"
var url = prefix + "&amp;extensionValues=" + jsonObj;
document.getElementById('commit_update').href = url;
window.location.href = document.getElementById('commit_update').href;
}
}
function modifyReWriteUrl() {
var prefix = "http://org.eclipse.ui.intro/runAction?pluginId=org.talend.designer.components.exchange&amp;class=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;id=org.talend.designer.components.exchange.ui.htmlcontent.MyExtensionAction&amp;type=MODIFY_MY_EXTENSION"
var leabel = "label:" + "'" + document.getElementById("extension_label_modify").value + "'"
var description = "description:" + "'" + document.getElementById("extension_description_modify").value + "'"
description = description.replaceAll2Excep("\r\n", "/n/r");
var checkedType = "";
var filtervalue = "";
var compatibilities = document.getElementsByName("compatibility_modify");
if(compatibilities[0].checked == true) {
checkedType = "all"
filtervalue = null;
} else if(compatibilities[1].checked == true) {
checkedType = "older"
filtervalue = document.getElementById(checkedType + "_modify").value;
} else if(compatibilities[2].checked == true) {
checkedType = "newer"
filtervalue = document.getElementById(checkedType + "_modify").value;
} else if(compatibilities[3].checked == true) {
checkedType = "except"
filtervalue = document.getElementById(checkedType + "_modify").value;
} else if(compatibilities[4].checked == true) {
checkedType = "only"
filtervalue = document.getElementById(checkedType + "_modify").value;
}
var listVersionCompatibles = "listVersionCompatibles:" + "'" + checkedType + "'";
var filter = "filter:" + "'" + filtervalue + "'";
var jsonObj = "{" + leabel + "," + description + "," + listVersionCompatibles + "," + filter + "}"
var url = prefix + "&amp;extensionValues=" + jsonObj;
document.getElementById('commit_modify').href = url;
}
//can't use for cycle in the javascript,each time call the length fuction ,get error in document parser
function setTab(tabIndex, pageId) {
var tli = document.getElementById("menu").getElementsByTagName("li");
var mli = document.getElementById("main1").getElementsByTagName("ul");
if(tabIndex == 0) {
tli[0].className = "hover"
tli[1].className = "leave"
tli[2].className = "leave"
} else if(tabIndex == 1) {
tli[0].className = "leave"
tli[1].className = "hover"
tli[2].className = "leave"
} else if(tabIndex == 2) {
tli[0].className = "leave"
tli[1].className = "leave"
tli[2].className = "hover"
}
if(pageId == mli[0].id) {
mli[0].className = "ulblock"
mli[1].className = "ulhide"
mli[2].className = "ulhide"
mli[3].className = "ulhide"
mli[4].className = "ulhide"
mli[5].className = "ulhide"
mli[6].className = "ulhide"
} else if(pageId == mli[1].id) {
mli[0].className = "ulhide"
mli[1].className = "ulblock"
mli[2].className = "ulhide"
mli[3].className = "ulhide"
mli[4].className = "ulhide"
mli[5].className = "ulhide"
mli[6].className = "ulhide"
} else if(pageId == mli[2].id) {
mli[0].className = "ulhide"
mli[1].className = "ulhide"
mli[2].className = "ulblock"
mli[3].className = "ulhide"
mli[4].className = "ulhide"
mli[5].className = "ulhide"
mli[6].className = "ulhide"
} else if(pageId == mli[3].id) {
mli[0].className = "ulhide"
mli[1].className = "ulhide"
mli[2].className = "ulhide"
mli[3].className = "ulblock"
mli[4].className = "ulhide"
mli[5].className = "ulhide"
mli[6].className = "ulhide"
} else if(pageId == mli[4].id) {
mli[0].className = "ulhide"
mli[1].className = "ulhide"
mli[2].className = "ulhide"
mli[3].className = "ulhide"
mli[4].className = "ulblock"
mli[5].className = "ulhide"
mli[6].className = "ulhide"
} else if(pageId == mli[5].id) {
mli[0].className = "ulhide"
mli[1].className = "ulhide"
mli[2].className = "ulhide"
mli[3].className = "ulhide"
mli[4].className = "ulhide"
mli[5].className = "ulblock"
mli[6].className = "ulhide"
} else if(pageId == mli[6].id) {
mli[0].className = "ulhide"
mli[1].className = "ulhide"
mli[2].className = "ulhide"
mli[3].className = "ulhide"
mli[4].className = "ulhide"
mli[5].className = "ulhide"
mli[6].className = "ulblock"
}
}
</script>
<link rel="stylesheet" href="css/exchange.css" type="text/css" media="screen" title="no title" charset="utf-8"/>
</head>
<body onresize="onResizeDocument()" onload="onResizeDocument()" >
<div id="container">
<div class="menu" id="menu">
<ul id="ul_menu">
<li class="hover" id="tab1" onclick="setTab(0,'list_available_extensions')">
Available Extensions
</li>
<li id="tab2" onclick="setTab(1,'downloaded_extensions')">
Downloaded Extensions
</li>
<li id="tab3" onclick="setTab(2,'list_my_extensions')">
My Extensions
</li>
</ul>
</div>
<div class="main1" id="main1">
<!-- available extension list -->
<ul class="ulhide" id="list_available_extensions">
<li>
<table align="center" cellpadding="0" cellspacing="0" class="tableStyle">
<tr align="right">
<td colspan="5" class="toolbar">
<input id="avialable_filter_text" name="avialable_filter_text" type="text" />
<a class="icon" href="http://org.eclipse.ui.intro/runAction?pluginId=org.talend.designer.components.exchange&amp;class=org.talend.designer.components.exchange.ui.actions.FilterExtensionAction&amp;id=org.talend.designer.components.exchange.ui.actions.FilterExtensionAction&amp;text=" id="commit_filter"><img onmouseover="filterReWriteUrl()" src="imgs/refresh.gif"/> </a></td>
</tr>
<div id="INSERT_EXTENSION_DATA" xmlns="">
<contentProvider id="INSERT_EXTENSION_DATA" class="org.talend.designer.components.exchange.ui.htmlcontent.AvailableCompositeProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</table>
</li>
</ul>
<!-- extension details -->
<ul class="ulblock" id="extension_details">
<li>
<table align="center" cellpadding="0" cellspacing="0" class="tableStyle" style="border: 1px solid #9BB9F5;" >
<tr align="left">
<td class="toolbar" colspan="5" style="border:0px;border-bottom:1px solid #9BB9F5;"><a class="icon"><img onclick="setTab(0,'list_available_extensions')" src="imgs/backward_nav.gif"/></a></td>
</tr>
<tr align="center">
<td>
<div id="div_name_part">
<div id="LEFT_NAME_PART" xmlns="">
<contentProvider id="LEFT_NAME_PART" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</div></td>
</tr>
<tr align="left" valign="top">
<td valign="top">
<table cellpadding="0" cellspacing="0">
<tr>
<td width="75%">
<div class="compDesc" id="component_description_part">
<div id="COMPONENT_DESCRIPTION" xmlns="">
<contentProvider id="COMPONENT_DESCRIPTION" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</div>
</td>
<td width="25%">
<div class="compImg" id="component_Image_part">
<table align="center" border="0">
<tr>
<td>
<div id="GET_EXTENSION_IMAGE" xmlns="">
<contentProvider id="GET_EXTENSION_IMAGE" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</td>
</tr>
<tr>
<td>
<div id="RATE_IMANGE" xmlns="">
<contentProvider id="RATE_IMANGE" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</td>
</tr>
<tr>
<td>
<div id="INSTALL_COMPONENT" xmlns="">
<contentProvider id="INSTALL_COMPONENT" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</td>
</tr>
</table>
</div>
</td>
</tr>
<tr>
<td class="userreview">User Reviews </td>
<td>
<div id="WRITE_REVIEWS" xmlns="">
<contentProvider id="WRITE_REVIEWS" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</td>
</tr>
<tr>
<td colspan="2">
<div class="reviews" id="component_reviews_part">
<div id="EXTENSION_REVIEWS" xmlns=""/>
<contentProvider id="EXTENSION_REVIEWS" class="org.talend.designer.components.exchange.ui.htmlcontent.ExchangeContentProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</li>
</ul>
<!--downloaded extensions page -->
<ul class="ulhide" id="downloaded_extensions">
<li>
<table align="center" cellpadding="0" cellspacing="0" class="tableStyle">
<tr align="left">
<td class="toolbar" colspan="5" style="border-bottom:0px solid #9BB9F5;"><a class="icon"><img onclick="setTab(2,'list_my_extensions')" src="imgs/backward_nav.gif"/></a></td>
</tr>
<div id="DOWNLOADEXTENSION_DATA" xmlns="">
<contentProvider id="DOWNLOADEXTENSION_DATA" class="org.talend.designer.components.exchange.ui.htmlcontent.DownloadExtensionProvider" pluginId="org.talend.designer.components.exchange"> </contentProvider>
</div>
</table>
</li>
</ul>
<!-- my extension list -->
<ul class="ulhide" id="list_my_extensions">
<li>
<table align="center" cellpadding="0" cellspacing="0" id="table" class="tableStyle">
<tr align="right">
<td class="toolbar" colspan="5">
<a onclick="setTab(2,'creat_new_extension')" class="toolbarButton">
Add New Extension
</a></td>
</tr>
<div id="LIST_MY_EXTENSION" xmlns="">
<contentProvider id="LIST_MY_EXTENSION" class="org.talend.designer.components.exchange.ui.htmlcontent.MyExchangeContentProvider" pluginId="org.talend.designer.components.exchange"/>
</div>
</table>
</li>
</ul>
<!-- create new extension -->
<ul class="ulhide" id="creat_new_extension">
<li>
<table align="center" cellpadding="0" cellspacing="0" id="tab_creat_new_extension" class="tableStyle">
<tr align="left">
<td class="toolbar" colspan="5" style="border-bottom:1px solid #9BB9F5;"><a class="icon"><img onclick="setTab(2,'list_my_extensions')" src="imgs/backward_nav.gif"/></a></td>
</tr>
<tr>
<td style="padding: 0px">
<div class="formStyle">
<table>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;font-weight:bold;"> Add New Extension </span></td>
<td width="100%"></td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;"> Extension Title: </span></td>
<td width="100%"><input id="extension_label" name="extension_label" style="width:230px;margin-left:5px" type="text"/></td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px"> Initial Version: </span></td>
<td><input id="lastVersionAvailable" name="lastVersionAvailable" style="width:100px;margin-left:5px" type="text"/></td>
</tr>
<tr>
<td nowrap="nowrap" valign="top"><span style="margin-left:10px;"> Compatibility: </span></td>
<td>
<table cellpadding="0" cellspacing="0">
<tr ><td><input checked="checked" name="compatibility" type="radio"/></td><td>All versions</td><td></td></tr>
<tr><td><input name="compatibility" type="radio"/></td><td nowrap="nowrap">Version and older:</td><td width="100%"><input id="older" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility" type="radio"/></td><td nowrap="nowrap">Versions and newer:</td><td><input id="newer" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility" type="radio"/></td><td nowrap="nowrap">All versions except:</td><td><input id="except" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility" type="radio"/></td><td nowrap="nowrap">Only these versions:</td><td><input id="only" style="width:100%;" type="text"/></td></tr>
</table>
</td>
</tr>
<tr>
<td nowrap="nowrap" valign="top"><span style="margin-left:10px;"> Description: </span></td>
<td><textarea id="extension_description" name="extension_description" style="width:100%;height:100px;margin-left:5px" type="text"> </textarea></td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;"> File: </span></td>
<td>
<div class="fileinputs" style="margin-left:3px;">
<input id="filename" name="filename" type="file" class="file myFileUpload" onchange="onchangeFileUpload('filename','fake_filename')" style="cursor: pointer" />
<div class="fakefile" style="cursor: pointer; width: 260px">
<input id="fake_filename" style="cursor: pointer; width: 230px" class="myFileUpload"/>
<img src="imgs/upload.png" style="cursor: pointer"/>
</div>
</div>
</td>
</tr>
<tr>
<td ></td>
<td>
<a class="xh" href="" id="commit" style="margin-left:5px;">
<button onclick="createNewExtensionWriteUrl()" style="width: 176px">
Add Extension
</button>
</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- update extension -->
<ul class="ulblock" id="upload_extension_version">
<li>
<table align="center" cellpadding="0" cellspacing="0" class="tableStyle" id="tab_upload_extension_version">
<tr align="left">
<td class="toolbar" colspan="5" style="border-bottom:1px solid #9BB9F5;"><a class="icon"><img onclick="setTab(2,'list_my_extensions')" src="imgs/backward_nav.gif"/></a></td>
</tr>
<tr>
<td style="padding: 0px">
<div class="formStyle">
<table>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;font-weight:bold;"> Upload New Version </span></td>
<td width="100%"></td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px"> New Version: </span></td>
<td><contentProvider id="LAST_AVAILABLE_VERSION" class="org.talend.designer.components.exchange.ui.htmlcontent.MyExchangeContentProvider" pluginId="org.talend.designer.components.exchange"/></td>
</tr>
<tr>
<td nowrap="nowrap" valign="top"><span style="margin-left:10px;"> Compatibility: </span></td>
<td>
<table cellpadding="0" cellspacing="0">
<tr ><td><input checked="checked" name="compatibility_update" type="radio"/></td><td>All versions</td><td></td></tr>
<tr><td><input name="compatibility_update" type="radio"/></td><td nowrap="nowrap">Version and older:</td><td width="100%"><input id="older_update" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_update" type="radio"/></td><td nowrap="nowrap">Versions and newer:</td><td><input id="newer_update" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_update" type="radio"/></td><td nowrap="nowrap">All versions except:</td><td><input id="except_update" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_update" type="radio"/></td><td nowrap="nowrap">Only these versions:</td><td><input id="only_update" style="width:100%;" type="text"/></td></tr>
</table>
</td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;"> File: </span></td>
<td>
<div class="fileinputs" style="margin-left:3px;">
<input id="filename_update" name="filename" type="file" class="file myFileUpload" onchange="onchangeFileUpload('filename_update','fake_filename_update')" style="cursor: pointer" /> <div class="fakefile" style="cursor: pointer; width: 260px">
<input id="fake_filename_update" style="cursor: pointer; width: 230px" class="myFileUpload"/>
<img src="imgs/upload.png" style="cursor: pointer"/>
</div>
</div>
</td>
</tr>
<tr>
<td ></td>
<td>
<a class="xh" href="" id="commit_update" style="margin-left:5px;">
<button onclick="updateReWriteUrl()" style="width: 176px">
Upload Extension
</button>
</a>
</td>
</tr>
</table>
</div></td>
</tr>
</table>
</li>
</ul>
<!-- modify myextension -->
<ul class="ulblock" id="modify_my_extension_page">
<li>
<table align="center" border="0" cellpadding="0" cellspacing="0" id="tab_modify_my_extension_page" class="tableStyle">
<tr align="left">
<td class="toolbar" colspan="5" style="border-bottom:1px solid #9BB9F5;"><a class="icon"><img onclick="setTab(2,'list_my_extensions')" src="imgs/backward_nav.gif" /></a></td>
</tr>
<tr>
<td style="padding: 0px">
<table style="border: 1px solid #9BB9F5; border-top: 0px">
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;font-weight:bold;"> Modify Last Revision </span></td>
<td width="100%"></td>
</tr>
<tr>
<td nowrap="nowrap"><span style="margin-left:10px;"> Extension Title: </span></td>
<td width="100%"><contentProvider id="EXTENSION_LABEL" class="org.talend.designer.components.exchange.ui.htmlcontent.MyExchangeContentProvider" pluginId="org.talend.designer.components.exchange"/></td>
</tr>
<tr>
<td nowrap="nowrap" valign="top"><span style="margin-left:10px;"> Compatibility: </span></td>
<td>
<table cellpadding="0" cellspacing="0">
<tr ><td><input checked="checked" name="compatibility_modify" type="radio"/></td><td>All versions</td><td></td></tr>
<tr><td><input name="compatibility_modify" type="radio"/></td><td nowrap="nowrap">Version and older:</td><td width="100%"><input id="older_modify" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_modify" type="radio"/></td><td nowrap="nowrap">Versions and newer:</td><td><input id="newer_modify" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_modify" type="radio"/></td><td nowrap="nowrap">All versions except:</td><td><input id="except_modify" style="width:100%;" type="text"/></td></tr>
<tr><td><input name="compatibility_modify" type="radio"/></td><td nowrap="nowrap">Only these versions:</td><td><input id="only_modify" style="width:100%;" type="text"/></td></tr>
</table>
</td>
</tr>
<tr>
<td nowrap="nowrap" valign="top"><span style="margin-left:10px;"> Description: </span></td>
<td><textarea id="extension_description_modify" name="extension_description" style="width:100%;height:100px;margin-left:5px" type="text"> </textarea></td>
</tr>
<tr>
<td></td>
<td>
<a class="xh" href="" id="commit_modify" style="margin-left:5px;">
<button onclick="window.location.href=document.getElementById('commit_modify').href" onmouseover="modifyReWriteUrl()" style="width: 176px">
Modify Last Revision
</button>
</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
</li>
</ul>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 952 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 B

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="model"
nsURI="exchange" nsPrefix="exchange">
<eClassifiers xsi:type="ecore:EEnum" name="Language">
<eLiterals name="PERL" value="1"/>
<eLiterals name="JAVA" value="2"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Category">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="categoryId" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="categoryName" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="VersionRevision">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="versionId" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="versionName" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ComponentExtension">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="idExtension" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="typeExtension" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="versionExtension" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastVersionAvailable" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationDate" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="rate" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="language" lowerBound="1"
eType="#//Language" defaultValueLiteral=""/>
<eStructuralFeatures xsi:type="ecore:EReference" name="reviews" lowerBound="1"
upperBound="-1" eType="#//AvailableExtensionViewDetail" containment="true"
eOpposite="#//AvailableExtensionViewDetail/extension"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="downloadedVersion" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="dateDownload" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="listVersionCompatibles"
lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="filename" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="linkDownload" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AvailableExtensionViewDetail">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="title" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="comment" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="reviewrate" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="extension" lowerBound="1"
eType="#//ComponentExtension" eOpposite="#//ComponentExtension/reviews"/>
</eClassifiers>
</ecore:EPackage>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="// ============================================================================&#xD;&#xA;//&#xD;&#xA;// Copyright (C) 2006-2019 Talend Inc. - www.talend.com&#xD;&#xA;//&#xD;&#xA;// This source code is available under agreement available at&#xD;&#xA;// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt&#xD;&#xA;//&#xD;&#xA;// You should have received a copy of the agreement&#xD;&#xA;// along with this program; if not, write to Talend SA&#xD;&#xA;// 9 rue Pages 92150 Suresnes, France&#xD;&#xA;//&#xD;&#xA;// ============================================================================"
modelDirectory="/org.talend.designer.components.exchange/src/main/java" editDirectory="/org.talend.designer.components.exchange.edit/src"
editorDirectory="/org.talend.designer.components.exchange.editor/src" modelPluginID="org.talend.designer.components.exchange"
modelName="Exchange" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
copyrightFields="false" editPluginID="org.talend.designer.components.exchange.edit"
editorPluginID="org.talend.designer.components.exchange.editor">
<foreignModel>exchange.ecore</foreignModel>
<genPackages prefix="Exchange" basePackage="org.talend.designer.components.exchange"
disposableProviderFactory="true" ecorePackage="exchange.ecore#/">
<genEnums typeSafeEnumCompatible="false" ecoreEnum="exchange.ecore#//Language">
<genEnumLiterals ecoreEnumLiteral="exchange.ecore#//Language/PERL"/>
<genEnumLiterals ecoreEnumLiteral="exchange.ecore#//Language/JAVA"/>
</genEnums>
<genClasses ecoreClass="exchange.ecore#//Category">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//Category/categoryId"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//Category/categoryName"/>
</genClasses>
<genClasses ecoreClass="exchange.ecore#//VersionRevision">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//VersionRevision/versionId"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//VersionRevision/versionName"/>
</genClasses>
<genClasses ecoreClass="exchange.ecore#//ComponentExtension">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/idExtension"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/label"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/typeExtension"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/versionExtension"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/lastVersionAvailable"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/publicationDate"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/description"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/rate"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/author"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/language"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference exchange.ecore#//ComponentExtension/reviews"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/downloadedVersion"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/dateDownload"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/listVersionCompatibles"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/filename"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//ComponentExtension/linkDownload"/>
</genClasses>
<genClasses ecoreClass="exchange.ecore#//AvailableExtensionViewDetail">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//AvailableExtensionViewDetail/author"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//AvailableExtensionViewDetail/title"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//AvailableExtensionViewDetail/comment"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute exchange.ecore#//AvailableExtensionViewDetail/reviewrate"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference exchange.ecore#//AvailableExtensionViewDetail/extension"/>
</genClasses>
</genPackages>
</genmodel:GenModel>

View File

@@ -0,0 +1,5 @@
Exchange=Exchange
DownloadComponenentsAction.Label=Download Selected Components
RefreshComponenentsAction.Label=Refresh Components List
providerName=www.example.org
pluginName=Exchange Model

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension
point="org.talend.core.components_provider">
<ComponentsProvider
class="org.talend.designer.components.exchange.ExchangeComponentsProvider"
folderName="exchange"
id="org.talend.designer.components.exchange.ExchangeComponentsProvider">
</ComponentsProvider>
</extension>
<extension
point="org.talend.core.components_provider">
<ComponentsProvider
class="org.talend.designer.components.exchange.SharedStudioExchangeComponentsProvider"
folderName="exchange"
id="org.talend.designer.components.exchange.SharedStudioExchangeComponentsProvider">
</ComponentsProvider>
</extension>
<extension
point="org.talend.core.runtime.service">
<Service
class="org.talend.designer.components.exchange.ui.dialog.ExchangeService"
serviceId="IExchangeService">
</Service>
</extension>
<extension
point="org.eclipse.ui.editors">
<editor
class="org.talend.designer.components.exchange.ui.views.ExchangeView"
default="false"
icon="icons/exchange_view.png"
id="org.talend.designer.components.exchange.ui.views.ExchangeView"
name="Exchange">
</editor>
</extension>
</plugin>

View File

@@ -0,0 +1,3 @@
DownloadComponenentsAction.Label=Lade ausgew\u00E4hlte Komponente
RefreshComponenentsAction.Label=Komponentenliste aktualisieren
providerName=www.beispiel.de

View File

@@ -0,0 +1 @@
providerName=www.example.org

View File

@@ -0,0 +1,5 @@
Exchange=Exchange
DownloadComponenentsAction.Label=\u9078\u629E\u3057\u305F\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9
RefreshComponenentsAction.Label=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30EA\u30B9\u30C8\u3092\u66F4\u65B0
providerName=www.example.org
pluginName=Exchange\u30E2\u30C7\u30EB

View File

@@ -0,0 +1,3 @@
DownloadComponenentsAction.Label=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u044B
RefreshComponenentsAction.Label=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C \u0441\u043F\u0438\u0441\u043E\u043A \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u043E\u0432
providerName=www.example.org

View File

@@ -0,0 +1,5 @@
Exchange=Exchange
DownloadComponenentsAction.Label=Download Selected Components
RefreshComponenentsAction.Label=Refresh Componenents List
providerName=www.example.org
pluginName = Exchange Model

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.talend.studio</groupId>
<artifactId>tdi-studio-se</artifactId>
<version>8.0.1-SNAPSHOT</version>
<relativePath>../../../</relativePath>
</parent>
<artifactId>org.talend.designer.components.exchange</artifactId>
<packaging>eclipse-plugin</packaging>
</project>

View File

@@ -0,0 +1,101 @@
ExchangeView.Exchange=Exchange
AvailableExtensionsComposite.ExtensionName=Extension Name
AvailableExtensionsComposite.Version=Version
AvailableExtensionsComposite.Rating=Rating
AvailableExtensionsComposite.Author=Author
AvailableExtensionsComposite.FilterTitle=Filter
AvailableExtensionsComposite.ViewDetail.installOperateStatus=Install
AvailableExtensionsComposite.ViewDetail.WriteReview=Write a review
AvailableExtensionsComposite.ViewDetail.InsertionReviewFailure=Insertion Review failure.
AvailableExtensionsComposite.ViewDetail.InsertionReviewFailureTip=You should check it.
DownloadedExtensionsComposite.ExtensionName=Extension Name
DownloadedExtensionsComposite.DownloadedVersion=Downloaded Version
DownloadedExtensionsComposite.DownloadDate=Download Date
DownloadedExtensionsComposite.OperateStatus=Operate Status
DownloadedExtensionsComposite.installOperateStatus=Install
DownloadedExtensionsComposite.installedOperateStatus=Installed
DownloadedExtensionsComposite.updateOperateStatus=Update
MyExtensionsComposite.ExtensionName=Extension Name
MyExtensionsComposite.Version=Version
MyExtensionsComposite.UploadDate=Upload Date
MyExtensionsComposite.AddNewExtensionTitle=Add New Extension
MyExtensionsComposite.UpLoadNewVersionOperateStatus=Upload New Version
MyExtensionsComposite.UpdateOperateStatus=Update
MyExtensionsComposite.ModifyOperateStatus=Modify
MyExtensionsComposite.DeleteOperateStatus=Delete
MyExtensionsComposite.Form.Return=Return
MyExtensionsComposite.Form.ExtensionTitle=Extension Title
MyExtensionsComposite.Form.InitialVersion=Initial Version
MyExtensionsComposite.Form.Compatibility=Compatibility
MyExtensionsComposite.Form.Compatibility.AllVersions=All versions
MyExtensionsComposite.Form.Compatibility.Version=Version
MyExtensionsComposite.Form.Compatibility.AndOlder=and older
MyExtensionsComposite.Form.Compatibility.AndNewer=and newer
MyExtensionsComposite.Form.Compatibility.AllVersionsExcept=All versions except:
MyExtensionsComposite.Form.Compatibility.OnlyTheseVersions=Only these versions:
MyExtensionsComposite.Form.Description=Description
MyExtensionsComposite.Form.Visibility=Visibility
MyExtensionsComposite.Form.Visibility.Public=Public(visible by all)
MyExtensionsComposite.Form.Visibility.Private=Private(visible by me)
MyExtensionsComposite.Form.Upload=Upload
MyExtensionsComposite.Form.Upload.SelectAnItem=Select an item from the currently open project
MyExtensionsComposite.Form.Upload.File=File:
MyExtensionsComposite.Form.Upload.Browse=Browse...
MyExtensionsComposite.Form.Upload.Browse.SelectFile=Select a File of the extension to upload
MyExtensionsComposite.Form.DeleteExtensionTile=Delete Extension
MyExtensionsComposite.Form.DeleteExtensionMessage=Are you sure you want to delete this Extension?
MyExtensionsComposite.Form.UploadExtension=Upload Extension
MyExtensionsComposite.Form.UpdateExtension=Update Extension
MyExtensionsComposite.Form.ModifyExtension=Modify Extension
Exchange.logon.error=Exchange user have not been registered, please register using the preferences .
RefreshJob.FindExtensions.Title=Finding available extensions
RefreshJob.FindExtensions.Message=Finding extensions from exchange...
ShowContributedExtensionsJob.ShowContributedExtensions.Title=Finding contributed extensions
ShowContributedExtensionsJob.ShowContributedExtensions.Message=Finding contributed extensions from exchange...
ShowInstalledExtensionsJob.ShowInstalledExtensions.Title=Finding installed extensions
ShowInstalledExtensionsJob.ShowInstalledExtensions.Message=Finding installed extensions from exchange...
DeleteExtensionJob.DeleteExtensionJob.Title=Delete an extension...
DeleteExtensionJob.DeleteExtensionJob.Message=Delete an extension...
DeleteExtensionJob.DeleteFailure=Delete failure.
DeleteExtensionJob.DeleteFailureTip=You should check it.
ModifyExtensionJob.Title=Modify an extension...
ModifyExtensionJob.Message=Modify an extension...
ModifyExtensionJob.ModifyFailure=Modify failure.
ModifyExtensionJob.ModifyFailureTip=You should check it.
InstalledExtensionJob.Title=Installed an extension...
InstalledExtensionJob.Message=Installed an extension...
InsertionExtensionAction.InstalledFailure=Installed failure.
InsertionExtensionAction.InstalledFailureTip=You should check it.
UploadRevisionJob.Title=Upload Revision...
UploadRevisionJob.Message=Upload Revision...
UploadRevisionAction.InstalledFailure=Upload Revision failure.
UploadRevisionAction.InstalledFailureTip=You should check it.
DownloadComponenentsAction_restartMessage=Install the new component successfully, but need to restart studio to load it, do you want to restart now?
DownloadComponenentsAction_restartTitle=Need restart
DownloadComponenentsAction_failureTitle=Failure
DownloadComponenentsAction_failureMessage=Fail to install the component {0}, need check the component is valid or not.
DownloadComponenentsAction.installExchange=Install Exchange Components
DownloadComponenentsAction.DownloadTaskTitle=Downloading files from Exchange
DownloadComponenentsAction.DownloadTaskName=Downloading file from url:
DownloadComponenentsAction.ReloadPalette=Reloading palette...
DownloadComponenentsAction.DownloadFailure=Download failure.
DownloadComponenentsAction.DownloadFailureTip=You must change the Download Settings.
DownloadComponenentsAction.installComponentsTitle=Install components
ExchangeWebService.insertionExtensionSuccessful=Insertion Extension successful.
ExchangeWebService.downloadingExtensionSuccessful=Downloaded Extension successful.
ExchangeWebService.deleteExtensionSuccessful=Deleted Extension successful.
ExchangeWebService.insertReviewSuccessful=Insertion Review successful.
ExchangeWebService.updateRevisionSuccessful=Update Revision successful.
ExchangeWebService.insertionRevisionSuccessful=Insertion Revision successful.
ImportExchangeDialog.dialogTitle=Select an item from Talend Exchange
ImportExchangeDialog.WARNING=WARNING
ImportExchangeDialog.NOTSELECTWARNING=Please select one item from table.
ImportExchangeDialog.downloadProgressBar=Download Item,Please Wait\!
ImportExchangeDialog.EXTENSION_NAME=Extension Name
ImportExchangeDialog.AUTHOR_NAME=Author Name
ImportExchangeDialog.LATEST_REVISION=Latest Revision
ImportExchangeDialog.EXTENSION_DESCRIPTION=Extension Description
ImportExchangeDialog.download.extensions=Download extensions\! Please Wait\!
ImportExchangeDialog.REFRESH_BUTTON=Refresh
ImportExchangeDialog.REFRESHING_PROGRESSBAR=Refreshing\! Please Wait.....
ImportExchangeDialog.OPERATION_CANCELLED=Operation was cancelled

View File

@@ -0,0 +1,19 @@
AvailableExtensionsComposite.Author=Autor
AvailableExtensionsComposite.FilterTitle=Filter
AvailableExtensionsComposite.ViewDetail.installOperateStatus=Installieren
AvailableExtensionsComposite.ViewDetail.WriteReview=Bericht schreiben
AvailableExtensionsComposite.ViewDetail.InsertionReviewFailureTip=Sie sollten es pr\u00FCfen.
DownloadedExtensionsComposite.installedOperateStatus=Installiert
DownloadedExtensionsComposite.updateOperateStatus=Update
MyExtensionsComposite.UpdateOperateStatus=Update
MyExtensionsComposite.ModifyOperateStatus=Modifiziere
MyExtensionsComposite.DeleteOperateStatus=L\u00F6schen
MyExtensionsComposite.Form.Description=Beschreibung
MyExtensionsComposite.Form.Upload.Browse=Durchsuchen...
DeleteExtensionJob.DeleteFailure=L\u00F6schung fehlgeschlagen
DeleteExtensionJob.DeleteFailureTip=Sie sollten es pr\u00FCfen.
DownloadComponenentsAction.DownloadTaskName=Lade Datei von URL:
ImportExchangeDialog.WARNING=Warnung
ImportExchangeDialog.AUTHOR_NAME=Name des Autors
ImportExchangeDialog.LATEST_REVISION=Aktuellste Revision
ImportExchangeDialog.OPERATION_CANCELLED=Operation wurde abgebrochen

View File

@@ -0,0 +1,8 @@
AvailableExtensionsComposite.ViewDetail.installOperateStatus=Instalar
AvailableExtensionsComposite.ViewDetail.WriteReview=Escribir un comentario
DownloadedExtensionsComposite.installOperateStatus=Instalar
MyExtensionsComposite.ModifyOperateStatus=Modificar
MyExtensionsComposite.DeleteOperateStatus=Borrar
MyExtensionsComposite.Form.Description=Descripci\u00F3n
ImportExchangeDialog.WARNING=Advertencia
ImportExchangeDialog.REFRESH_BUTTON=Actualizar

View File

@@ -0,0 +1,17 @@
AvailableExtensionsComposite.Version=Versione
AvailableExtensionsComposite.Author=Autore
AvailableExtensionsComposite.FilterTitle=Filtro
DownloadedExtensionsComposite.installedOperateStatus=Installato
DownloadedExtensionsComposite.updateOperateStatus=Aggiornato
MyExtensionsComposite.Version=Versione
MyExtensionsComposite.UpdateOperateStatus=Aggiornato
MyExtensionsComposite.DeleteOperateStatus=Cancellare
MyExtensionsComposite.Form.Compatibility.Version=Versione
MyExtensionsComposite.Form.Description=Descrizione
MyExtensionsComposite.Form.Upload=Carica
MyExtensionsComposite.Form.Upload.Browse=Naviga...
ImportExchangeDialog.dialogTitle=Seleziona oggetto da Talend Exchange
ImportExchangeDialog.WARNING=Avvertimento
ImportExchangeDialog.LATEST_REVISION=Ultima Revisione
ImportExchangeDialog.EXTENSION_DESCRIPTION=Descrizione estensione
ImportExchangeDialog.REFRESH_BUTTON=Aggiorna

View File

@@ -0,0 +1,101 @@
ExchangeView.Exchange=Exchange
AvailableExtensionsComposite.ExtensionName=Extension\u540D
AvailableExtensionsComposite.Version=\u30D0\u30FC\u30B8\u30E7\u30F3
AvailableExtensionsComposite.Rating=\u8A55\u4FA1
AvailableExtensionsComposite.Author=\u4F5C\u6210\u8005
AvailableExtensionsComposite.FilterTitle=\u30D5\u30A3\u30EB\u30BF\u30FC
AvailableExtensionsComposite.ViewDetail.installOperateStatus=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
AvailableExtensionsComposite.ViewDetail.WriteReview=\u518D\u8ABF\u67FB\u306E\u66F8\u304D\u8FBC\u307F
AvailableExtensionsComposite.ViewDetail.InsertionReviewFailure=Review\u633F\u5165\u5931\u6557\u3002
AvailableExtensionsComposite.ViewDetail.InsertionReviewFailureTip=\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002
DownloadedExtensionsComposite.ExtensionName=Extension\u540D
DownloadedExtensionsComposite.DownloadedVersion=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u30D0\u30FC\u30B8\u30E7\u30F3
DownloadedExtensionsComposite.DownloadDate=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u65E5\u4ED8
DownloadedExtensionsComposite.OperateStatus=\u30B9\u30C6\u30FC\u30BF\u30B9\u64CD\u4F5C
DownloadedExtensionsComposite.installOperateStatus=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
DownloadedExtensionsComposite.installedOperateStatus=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u307F
DownloadedExtensionsComposite.updateOperateStatus=\u66F4\u65B0
MyExtensionsComposite.ExtensionName=Extension\u540D
MyExtensionsComposite.Version=\u30D0\u30FC\u30B8\u30E7\u30F3
MyExtensionsComposite.UploadDate=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u65E5\u4ED8
MyExtensionsComposite.AddNewExtensionTitle=\u65B0\u898FExtension\u8FFD\u52A0
MyExtensionsComposite.UpLoadNewVersionOperateStatus=\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
MyExtensionsComposite.UpdateOperateStatus=\u66F4\u65B0
MyExtensionsComposite.ModifyOperateStatus=\u5909\u66F4
MyExtensionsComposite.DeleteOperateStatus=\u524A\u9664
MyExtensionsComposite.Form.Return=\u623B\u308A\u5024
MyExtensionsComposite.Form.ExtensionTitle=Extension\u30BF\u30A4\u30C8\u30EB
MyExtensionsComposite.Form.InitialVersion=\u521D\u671F\u30D0\u30FC\u30B8\u30E7\u30F3
MyExtensionsComposite.Form.Compatibility=\u4E92\u63DB\u6027
MyExtensionsComposite.Form.Compatibility.AllVersions=\u3059\u3079\u3066\u306E\u30D0\u30FC\u30B8\u30E7\u30F3
MyExtensionsComposite.Form.Compatibility.Version=\u30D0\u30FC\u30B8\u30E7\u30F3
MyExtensionsComposite.Form.Compatibility.AndOlder=\u3088\u308A\u53E4\u3044
MyExtensionsComposite.Form.Compatibility.AndNewer=\u3088\u308A\u65B0\u3057\u3044
MyExtensionsComposite.Form.Compatibility.AllVersionsExcept=\u3059\u3079\u3066\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u4EE5\u5916
MyExtensionsComposite.Form.Compatibility.OnlyTheseVersions=\u3053\u308C\u3089\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3060\u3051:
MyExtensionsComposite.Form.Description=\u8AAC\u660E
MyExtensionsComposite.Form.Visibility=\u53EF\u8996\u6027
MyExtensionsComposite.Form.Visibility.Public=\u5171\u6709(\u5168\u54E1\u304C\u53EF\u8996)
MyExtensionsComposite.Form.Visibility.Private=\u500B\u4EBA(\u81EA\u5206\u306E\u307F\u53EF\u8996)
MyExtensionsComposite.Form.Upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
MyExtensionsComposite.Form.Upload.SelectAnItem=\u73FE\u5728\u958B\u3044\u3066\u3044\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304B\u3089\u30A2\u30A4\u30C6\u30E0\u3092\u9078\u629E
MyExtensionsComposite.Form.Upload.File=\u30D5\u30A1\u30A4\u30EB:
MyExtensionsComposite.Form.Upload.Browse=\u53C2\u7167...
MyExtensionsComposite.Form.Upload.Browse.SelectFile=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308Bextension\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E
MyExtensionsComposite.Form.DeleteExtensionTile=Extension\u524A\u9664
MyExtensionsComposite.Form.DeleteExtensionMessage=\u3053\u306E\u62E1\u5F35\u5B50\u3092\u524A\u9664\u3057\u307E\u3059\u304B?
MyExtensionsComposite.Form.UploadExtension=Extension\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
MyExtensionsComposite.Form.UpdateExtension=Extension\u66F4\u65B0
MyExtensionsComposite.Form.ModifyExtension=Extension\u4FEE\u6B63
Exchange.logon.error=Exchange\u30E6\u30FC\u30B6\u30FC\u304C\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u521D\u671F\u8A2D\u5B9A\u3092\u4F7F\u7528\u3057\u3066\u767B\u9332\u3057\u3066\u304F\u3060\u3055\u3044\u3002
RefreshJob.FindExtensions.Title=\u53D6\u5F97\u53EF\u80FD\u306Aextensions
RefreshJob.FindExtensions.Message=Exchange\u304B\u3089\u62E1\u5F35\u6A5F\u80FD\u3092\u691C\u7D22...
ShowContributedExtensionsJob.ShowContributedExtensions.Title=extensions\u3092\u53D6\u5F97
ShowContributedExtensionsJob.ShowContributedExtensions.Message=exchange\u304B\u3089extensions\u3092\u53D6\u5F97\u2026
ShowInstalledExtensionsJob.ShowInstalledExtensions.Title=extensions\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
ShowInstalledExtensionsJob.ShowInstalledExtensions.Message=exchange\u304B\u3089extensions\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u2026
DeleteExtensionJob.DeleteExtensionJob.Title=Extension\u3092\u524A\u9664\u3057\u307E\u3059\u2026
DeleteExtensionJob.DeleteExtensionJob.Message=Extension\u3092\u524A\u9664\u3057\u307E\u3059\u2026
DeleteExtensionJob.DeleteFailure=\u524A\u9664\u3067\u304D\u307E\u305B\u3093
DeleteExtensionJob.DeleteFailureTip=\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002
ModifyExtensionJob.Title=Extension\u3092\u4FEE\u6B63\u2026
ModifyExtensionJob.Message=Extension\u3092\u4FEE\u6B63\u2026
ModifyExtensionJob.ModifyFailure=\u4FEE\u6B63\u5931\u6557\u3002
ModifyExtensionJob.ModifyFailureTip=\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002
InstalledExtensionJob.Title=Extension\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB...
InstalledExtensionJob.Message=Extension\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB...
InsertionExtensionAction.InstalledFailure=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306B\u5931\u6557\u3057\u307E\u3057\u305F
InsertionExtensionAction.InstalledFailureTip=\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002
UploadRevisionJob.Title=\u30EA\u30D3\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
UploadRevisionJob.Message=\u30EA\u30D3\u30B8\u30E7\u30F3\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9
UploadRevisionAction.InstalledFailure=\u30EA\u30D3\u30B8\u30E7\u30F3\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3002
UploadRevisionAction.InstalledFailureTip=\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002
DownloadComponenentsAction_restartMessage=\u65B0\u898F\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u6210\u529F\u3057\u307E\u3057\u305F\u3002Studio\u306E\u518D\u8D77\u52D5\u304C\u5FC5\u8981\u3067\u3059\u3002\u518D\u8D77\u52D5\u3057\u307E\u3059\u304B?
DownloadComponenentsAction_restartTitle=\u518D\u8D77\u52D5\u8981
DownloadComponenentsAction_failureTitle=\u5931\u6557
DownloadComponenentsAction_failureMessage=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8{0}\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u304C\u59A5\u5F53\u304B\u3054\u78BA\u8A8D\u304F\u3060\u3055\u3044\u3002
DownloadComponenentsAction.installExchange=Exchange\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
DownloadComponenentsAction.DownloadTaskTitle=Exchange\u304B\u3089\u30D5\u30A1\u30A4\u30EB\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9
DownloadComponenentsAction.DownloadTaskName=\u30D5\u30A1\u30A4\u30EB\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D URL \\:
DownloadComponenentsAction.ReloadPalette=\u30D1\u30EC\u30C3\u30C8\u306E\u66F4\u65B0...
DownloadComponenentsAction.DownloadFailure=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u5931\u6557\u3002
DownloadComponenentsAction.DownloadFailureTip=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u8A2D\u5B9A\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002
DownloadComponenentsAction.installComponentsTitle=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB
ExchangeWebService.insertionExtensionSuccessful=Extension\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u6210\u529F\u3057\u307E\u3057\u305F
ExchangeWebService.downloadingExtensionSuccessful=Extension\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u6210\u529F\u3002
ExchangeWebService.deleteExtensionSuccessful=Extension\u524A\u9664\u6210\u529F\u3002
ExchangeWebService.insertReviewSuccessful=Review\u633F\u5165\u6210\u529F\u3002
ExchangeWebService.updateRevisionSuccessful=\u30EA\u30D3\u30B8\u30E7\u30F3\u66F4\u65B0\u6210\u529F\u3002
ExchangeWebService.insertionRevisionSuccessful=\u30EA\u30D3\u30B8\u30E7\u30F3\u633F\u5165\u6210\u529F\u3002
ImportExchangeDialog.dialogTitle=Talend Exchange \u304B\u3089\u9805\u76EE\u306E\u9078\u629E
ImportExchangeDialog.WARNING=\u8B66\u544A
ImportExchangeDialog.NOTSELECTWARNING=\u30C6\u30FC\u30D6\u30EB\u304B\u3089\u30A2\u30A4\u30C6\u30E0\u3092\uFF11\u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044...
ImportExchangeDialog.downloadProgressBar=\u30A2\u30A4\u30C6\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044!
ImportExchangeDialog.EXTENSION_NAME=Extension\u540D
ImportExchangeDialog.AUTHOR_NAME=\u4F5C\u6210\u8005\u540D
ImportExchangeDialog.LATEST_REVISION=\u6700\u65B0\u30EA\u30D3\u30B8\u30E7\u30F3
ImportExchangeDialog.EXTENSION_DESCRIPTION=\u62E1\u5F35\u306E\u8AAC\u660E
ImportExchangeDialog.download.extensions=\u62E1\u5F35\u6A5F\u80FD\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002
ImportExchangeDialog.REFRESH_BUTTON=\u66F4\u65B0
ImportExchangeDialog.REFRESHING_PROGRESSBAR=\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5\u4E2D\u3067\u3059\u3002\u66AB\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002
ImportExchangeDialog.OPERATION_CANCELLED=\u64CD\u4F5C\u306F\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F

View File

@@ -0,0 +1,13 @@
AvailableExtensionsComposite.Version=\u0412\u0435\u0440\u0441\u0438\u044F
AvailableExtensionsComposite.Author=\u0410\u0432\u0442\u043E\u0440
AvailableExtensionsComposite.FilterTitle=\u0444\u0438\u043B\u044C\u0442\u0440
DownloadedExtensionsComposite.installedOperateStatus=\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D
MyExtensionsComposite.Version=\u0412\u0435\u0440\u0441\u0438\u044F
MyExtensionsComposite.ModifyOperateStatus=\u041C\u043E\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043E\u0432\u0430\u0442\u044C
MyExtensionsComposite.DeleteOperateStatus=\u0423\u0434\u0430\u043B\u0438\u0442\u044C
MyExtensionsComposite.Form.Compatibility.Version=\u0412\u0435\u0440\u0441\u0438\u044F
MyExtensionsComposite.Form.Description=\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435
MyExtensionsComposite.Form.Upload.Browse=\u041E\u0431\u0437\u043E\u0440...
DownloadComponenentsAction.DownloadTaskName=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B \u043F\u043E \u0441\u0441\u044B\u043B\u043A\u0435:
ImportExchangeDialog.WARNING=\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435
ImportExchangeDialog.REFRESH_BUTTON=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C

View File

@@ -0,0 +1,18 @@
AvailableExtensionsComposite.Version=Verzia
AvailableExtensionsComposite.Author=Autor
AvailableExtensionsComposite.FilterTitle=Filter
AvailableExtensionsComposite.ViewDetail.installOperateStatus=In\u0161talova\u0165
DownloadedExtensionsComposite.installOperateStatus=In\u0161talova\u0165
DownloadedExtensionsComposite.updateOperateStatus=Obnovi\u0165
MyExtensionsComposite.Version=Verzia
MyExtensionsComposite.UpdateOperateStatus=Obnovi\u0165
MyExtensionsComposite.ModifyOperateStatus=Modifikova\u0165
MyExtensionsComposite.DeleteOperateStatus=Zmaza\u0165
MyExtensionsComposite.Form.Compatibility=Kompatibilita
MyExtensionsComposite.Form.Compatibility.Version=Verzia
MyExtensionsComposite.Form.Description=Popis
MyExtensionsComposite.Form.Visibility=Vidite\u013Enos\u0165
MyExtensionsComposite.Form.Upload=Nahra\u0165
ImportExchangeDialog.WARNING=Varovanie
ImportExchangeDialog.AUTHOR_NAME=Meno autora
ImportExchangeDialog.REFRESH_BUTTON=Obnovi\u0165

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