Compare commits

..

464 Commits

Author SHA1 Message Date
ycbai
9ced8f0f1b TDI-28601 : When drag tReplicate to job there is java.lang.NullPointerException
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113524 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-20 09:58:03 +00:00
ycbai
c8fc6015a0 TDI-28598 : R-click validation rules under db connection will throw error logs.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113521 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-20 09:24:58 +00:00
hcyi
8d31416607 bug TDI-28553 fixed : tHL7OutPut_error happen when open or add elements for tHL7OutPut, and elements will be disappear sometime .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113456 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-16 09:54:11 +00:00
wliu
2b4177287a fix bug TDI-28560 : avoid the NPE when the xml tree is empty
https://jira.talendforge.org/browse/TDI-28560

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113359 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-14 07:26:15 +00:00
hcyi
1ff6aec7f4 merge r113318 from trunk to branch 5.3
bug TDI-28520 fixed : XPath lost in the tFileInputXML .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113320 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-13 06:33:04 +00:00
bchen
6859959d72 Fix Work Item TDI-28064 : [MR] reuse Input for tSortRow to reduce one additional m/r job
https://jira.talendforge.org/browse/TDI-28064 
1. fixed the bug about Lookup and After_Run 
2. reuse Input for tSortRow to reduce one additional m/r job when the input is [tMRInput,tHDFSInput] 
merge r112403 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113285 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 11:26:07 +00:00
wchen
e93e573c62 bug TDI-28465 fixed: poor performance of studio
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113284 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 11:19:37 +00:00
ilazebny
49e5227bfa Update version to 5.3.2 in poms
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113276 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 10:15:29 +00:00
jyhu
eb824c8c7e Fix Bug TDI-28545 : tTeradataOutput drop table error.
https://jira.talendforge.org/browse/TDI-28545

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113264 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 08:21:03 +00:00
bchen
5fcfd98d40 Fix Bug TDI-24111 : Stats issue on an iterate link between a Collector and a tDepartitioner
https://jira.talendforge.org/browse/TDI-24111 
merge r113157 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113260 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 07:24:52 +00:00
jyhu
deb8ee5933 Fix Bug TDI-28515 : tVerticaOutput and tHSQLDbOutput have the same problem in TDI-28483.
https://jira.talendforge.org/browse/TDI-28515

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113259 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-10 07:14:51 +00:00
hcyi
132f27bccd merge r113198 from trunk to branch 5.3
bug TDI-28536 fixed : Studio throws NullPointerException when change the "die on error" option in tmap.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113205 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-09 09:32:41 +00:00
ldong
0f645548c0 bug TDI-28512 fixed:Trace debug row by row can not work for parallelized rows.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113203 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-09 09:31:43 +00:00
ldong
9ce0220f21 bug TDI-28512 fixed:Trace debug row by row can not work for parallelized rows.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113202 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-09 09:30:28 +00:00
wwang
9d60e5eda7 Fix Bug TDI-28463 : When choosing replace to replace the dynamic column in the table:"additional columns" in tDBOutput
https://jira.talendforge.org/browse/TDI-28463

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113193 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-09 08:42:30 +00:00
jyhu
eac9c051d4 Fix Bug TDI-28529 : tInformixOutput have a compile error.
https://jira.talendforge.org/browse/TDI-28529 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113130 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-08 08:42:32 +00:00
atelesh
10811fb005 TESB-12503 - DemoREST can not export with service locator when the studio path contains ()
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113125 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-08 08:26:22 +00:00
jyhu
66652eba42 Fix Bug TDI-24698 :tFilterRow doesn't work with long as in 4.x.
https://jira.talendforge.org/browse/TDI-24698 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113098 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-08 05:59:46 +00:00
jyhu
5aba3c7448 Fix Bug TDI-28481: Support Blob/Clob type in tTeradataOutput.
https://jira.talendforge.org/browse/TDI-28481

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113084 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-08 03:33:20 +00:00
wchen
c15c8ade4a bug TDI-28528 fixed: Convert to MR job: after convert to MR job , link between components lost
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113082 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-08 02:03:00 +00:00
ycbai
51ab43ae42 TDI-28505 : can not run job successfully after retrieve a MDM entity
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113047 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-07 10:03:08 +00:00
wwang
74dade8861 Fix Bug TDI-28402 : Impossible to delete a zip file after "OnComponentError" using tFileUnarchive
https://jira.talendforge.org/browse/TDI-28402

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113030 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-07 04:27:04 +00:00
wchen
fa1e0eedd2 bug TDI-28516 fixed: tMap_the window sway up and down when add link for them
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113008 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-06 10:01:14 +00:00
xqliu
8a97c7c478 Fix Bug TDQ-7376 : User tDqReportRun to run report depending on contextualized db connection, the context value of database field is not taken into account.
https://jira.talendforge.org/browse/TDQ-7376
force refresh the context view when generate a run report job

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@113004 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-06 09:51:50 +00:00
jyhu
470dc7fb42 Fix Bug TDI-24698 :tFilterRow doesn't work with long as in 4.x.
https://jira.talendforge.org/browse/TDI-24698 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112984 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-06 07:48:03 +00:00
jyhu
67310fd7b9 Fix Bug TDI-24698 :tFilterRow doesn't work with long as in 4.x.
https://jira.talendforge.org/browse/TDI-24698 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112975 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-06 06:11:22 +00:00
jjzhou
d36f450273 fix Bug TDI-28450: Update the CXF version in the DI components
https://jira.talendforge.org/browse/TDI-28450 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112944 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-03 10:05:27 +00:00
wwang
b2200108fb Fix Bug TDI-28470 : Dynamic schema NPE exception
https://jira.talendforge.org/browse/TDI-28470

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112932 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-03 09:15:58 +00:00
ldong
edcf1436f2 bug TDI-26294 fixed:Error when extract file when export job as Axis webservice and the checkbox "Extract the zip file" is defaultly selected.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112927 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-03 08:06:24 +00:00
wwang
08cb60840c Fix Bug TDI-28472 : Unable to generate code when two tFileInputMSDelimited components connect to tMap
https://jira.talendforge.org/browse/TDI-28472

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112926 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-03 07:59:27 +00:00
bchen
0766c2e48e Fix Bug TDI-28313 : Continue to finish issue TDI-27758
https://jira.talendforge.org/browse/TDI-28313
deal with char when is null
merge r112902 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112906 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-03 02:14:13 +00:00
bchen
0d4a4d51c9 Fix Bug TDI-28313 : Continue to finish issue TDI-27758
https://jira.talendforge.org/browse/TDI-28313 
fix bug 1 & 3 
merge r112771 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112893 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-02 09:48:42 +00:00
jzhao
33835fd55b Fixed Bug TDI-28483: Some tDBoutput produce the code for action on table when execution mode is parallel
https://jira.talendforge.org/browse/TDI-28483
Note:fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112875 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-02 07:18:45 +00:00
ldong
7a3c6713c3 bug TDI-23826 reverted:revert for 5.3.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112859 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-02 02:31:15 +00:00
ldong
585c0325dc bug TDI-23826 fixed:DB2_after delete the table from SQLBuilder, the table icon without name still exist after refresh.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112855 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2014-01-02 02:21:37 +00:00
zwzhao
697895bb25 bug TDI-28478 fixed : Wrong warning message when import mulit-version item
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112842 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 09:06:13 +00:00
wchen
03aab14184 bug TDI-28475 fixed: tMap editordialog UI lookup improvements
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112833 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 08:12:50 +00:00
bchen
2624e739f3 Fix Bug TDI-28313 : Continue to finish issue TDI-27758
https://jira.talendforge.org/browse/TDI-28313
fix bug 1 & 3
merge r112771 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112822 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 07:13:27 +00:00
bchen
87d40aa533 Fix Bug TDI-27758 : tXXJSONXX components have some problems
https://jira.talendforge.org/browse/TDI-27758 
input data (123.099999999999994315658113919198513031005859375) and type is BigDecimal? 
tFileOutputJSON output: "bigDecim_in":123.099999999999994315658113919198513031005859375 
tWriteJSONFile output: "bigDecim_in":"123.1" 
merge r111493 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112818 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 06:57:42 +00:00
jzhao
86e090c2a7 Fixed Bug TDI-28469: for tWriteXMLField, when the child thread comes to an exception, the main thread will keep generating xml string which it should die on child error.
https://jira.talendforge.org/browse/TDI-28469 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112805 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 05:52:12 +00:00
jzhao
07ed52f8c6 Fixed Bug TDI-28414: tWriteXMLField generates endless loop of threads and not breakable when this is an exception
https://jira.talendforge.org/browse/TDI-28414 
Note:1.Fixed queue_<%=cid%> is incorrect in end and finally part 
2.Fixed Branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112798 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 05:36:43 +00:00
zwzhao
e1011b3977 bug TDI-28478 fixed : Wrong warning message when import mulit-version item
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112792 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-31 02:37:01 +00:00
atelesh
5b7f06a5ff TESB-12434 - Deploying multiple REST services on ESB conductor with SAP component causes UnsatisfiedLinkError.: Backport 5.3.2
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112786 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 11:23:40 +00:00
rdubois
8e76d74b07 TDI-28450: revert r112736 --> Incomplete commit
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112785 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 11:04:07 +00:00
jjzhou
c9e2d5271c fix Bug TDI-28451: Revert code
https://jira.talendforge.org/browse/TDI-28451 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112762 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 09:26:15 +00:00
hcyi
41a9369e16 merge r112733 from trunk to branch 5.3
bug TDI-28473 fixed : tXMLMap:can't import output rows from repository(metadata created from File xml->Output XML) .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112746 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 06:50:40 +00:00
jzhao
b98e8e1891 Fixed Bug TDI-27307: Method exceeding 65535 bytes in when using tfileinputxml in joblet
https://jira.talendforge.org/browse/TDI-27307
Note:Fixed branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112740 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 06:31:56 +00:00
jyhu
144c01fc84 Fix Bug TDI-28449 : tTeradataOuput reports error when mapping db type BigInt and number type as long in JDBC batch.
https://jira.talendforge.org/browse/TDI-28449

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112738 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 06:24:05 +00:00
jjzhou
f4dbed6a4f fix Bug TDI-28450: Update the CXF version in the DI components
https://jira.talendforge.org/browse/TDI-28450 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112736 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 06:19:54 +00:00
jzhao
968946e2b4 Fixed Bug TDI-26843: Some components include System.exit(int) code
https://jira.talendforge.org/browse/TDI-26843
Note:fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112705 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-30 02:29:26 +00:00
hfchang
b5c00c9f95 bug TDI-24402 fixed--Revert Previous commit.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112680 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-27 08:09:28 +00:00
jjzhou
88e952d92f fix Bug TDI-28381: Problem with tPaloInputMulti
https://jira.talendforge.org/browse/TDI-28381 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112652 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-27 03:42:29 +00:00
wchen
5267310b8d bug TDI-28468 fixed: Can't open one job after import to 5.4.1
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112629 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-26 09:56:32 +00:00
jjzhou
91c25a0c8e Fix Bug TDI-28398 : the generated node:tHashInput should set the checkbox:"release_cache" to true.
https://jira.talendforge.org/browse/TDI-28398

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112614 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-26 03:43:19 +00:00
hfchang
ca952b7ef1 bug TDI-24402 fixed : Guess schema of tOracleInput does not work well
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112595 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-25 09:23:10 +00:00
jjzhou
346340c1aa fix Bug TDI-28451: "Absolute value" option can not be shown in the CONDITIONS table of tFilterRow
https://jira.talendforge.org/browse/TDI-28451

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112578 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-25 05:28:49 +00:00
wchen
64390a18f6 bug TDI-20141 fixed: Right-clicking within a Document in tXMLMap is not user friendly
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112570 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-25 03:46:03 +00:00
hcyi
953e259d22 merge r112557 from trunk to branch 5.3
bug TDI-28446 fixed : Cannot guess schema from Sqlite table .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112559 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 10:29:19 +00:00
jjzhou
74f74a885e fix Bug TDI-28394: revert tSAPConnection ,tSAPInput,tSAPOutput code ,and only fix tSAPIDocOutput code for this issue.
https://jira.talendforge.org/browse/TDI-28394 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112553 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 09:58:14 +00:00
ldong
59d2f1104b bug TDI-24863 fixed:After change the name of job, still can't run.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112552 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 09:58:03 +00:00
bchen
b517d2a175 Fix Bug TDI-28434 : Can't use 2 tFileInputMSPositional
https://jira.talendforge.org/browse/TDI-28434 
merge r112508 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112543 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 09:39:12 +00:00
jzhao
acd7ec3ac9 Fixed TDI-28426: tDB2SCD does not use DB-Schema from tDB2Connection
https://jira.talendforge.org/browse/TDI-28426 
Note:Fixed branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112534 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 08:53:59 +00:00
zwzhao
1e30a1d3a9 bug TDI-28435 fixed : Generation fails after generate another project's job with the same name routines
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112531 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 07:29:08 +00:00
ycbai
d93d1517cf TDI-28031 : Hadoop configuration information is blank when creating a map/reduce job from a standard job
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112524 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 07:05:08 +00:00
zgao
2eb636e743 [TESB-12448] Class name of bean can not update automatically when update the name of bean after updating code of bean: Backport 5.3.2
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112506 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 05:53:25 +00:00
gliu
2a86020878 [TESB-12449] Loop connection name for cLoop component is not right: Backport 5.3.2
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112487 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 02:54:12 +00:00
jjzhou
f3fc1d09e2 fix Bug TDI-28462:tSOAP's default endpoint (http://www.deeptraining.com/webservices/weather.asmx) no longer available.
https://jira.talendforge.org/browse/TDI-28462 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112481 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-24 02:33:13 +00:00
ldong
2169d0875a bug TUP-904 fixed:The Spring Content of some route items are empty if import ESBDEMO project twice.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112443 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-23 09:17:16 +00:00
gliu
5edf5f0050 [TESB-12445] Remove "Find component in job " option: Backport 5.3.2
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112427 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-23 06:09:33 +00:00
jzhao
17c84ef2a6 Fixed Bug TDI-28414: tWriteXMLField generates endless loop of threads and not breakable when this is an exception
https://jira.talendforge.org/browse/TDI-28414
Note:Fixed branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112397 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-20 11:19:17 +00:00
zwzhao
017dc09f93 bug TDI-28435 fixed : Generation fails after generate another project's job with the same name routines
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112386 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-20 09:42:21 +00:00
jzhao
c5bb672e81 Fixed Bug TDI-28400: "bulk update" in tSybaseBulkExec's Advanced setting has compile error
https://jira.talendforge.org/browse/TDI-28400 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112351 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-20 04:03:39 +00:00
jzhao
6c267df2bb Fixed Bug TDI-27275: tMicrosoftMQOutput does not report error condition
https://jira.talendforge.org/browse/TDI-27275
Note:Fixed in 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112326 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-19 10:10:40 +00:00
jyhu
a9efec19b6 Fix Bug TDI-27981 : tNetezzaInput insert empty or duplicate rows when commit size is less than actual rows input.
https://jira.talendforge.org/browse/TDI-27981 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112320 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-19 09:30:58 +00:00
hfchang
f15d0fda5b bug TDI-26357 fixed :Title of Component Designer perspective is bad English
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112288 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-19 08:01:56 +00:00
jjzhou
24fe60c2b9 fix Bug TDI-28443: File handler not closed after using tInputJsonFile
https://jira.talendforge.org/browse/TDI-28443

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112267 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-19 06:09:05 +00:00
hfchang
78002a88d1 bug TDI-28247 fixed : TOS Start Screen does not render well.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112225 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 10:12:06 +00:00
wwang
36b3b40166 Fix Bug TDI-28322 : tFileOutputXML xml formatter merges multiple consecutives spaces
https://jira.talendforge.org/browse/TDI-28322

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112208 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 09:22:05 +00:00
hfchang
d39a56b0ad bug TDI-27853 fixed : Create file xml output if type path and file name manual can't get file schema.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112207 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 09:09:13 +00:00
zgao
ea13a14f3c [TESB-12409] EmfComponent & RouteComponentController used nonstandard java type com.sun.corba.se.spi.orb.StringPair.StringPair
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112183 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 06:39:40 +00:00
zgao
57c6f0eb39 [TESB-12409] EmfComponent & RouteComponentController used nonstandard java type com.sun.corba.se.spi.orb.StringPair.StringPair
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112176 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 06:20:10 +00:00
jzhao
70bbac254d Fixed Bug TDI-28336: Fix the bug in-TDI-28201 for other tDBBulkExec components
https://jira.talendforge.org/browse/TDI-28336
Note:tOracleBulkExec create temp file problem

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112158 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-18 05:14:50 +00:00
hcyi
dc9bec4610 bug TDI-27439 fixed : Lookup model not changed when key added .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112054 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-17 10:11:43 +00:00
wchen
807b51b432 TDI-7988 fixed: tFixedFlowInputs with Inline Table do not copy properly
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112052 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-17 09:46:39 +00:00
jjzhou
6a74487574 fix Bug TDI-28381: Problem with tPaloInputMulti
https://jira.talendforge.org/browse/TDI-28381 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@112014 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-16 09:54:21 +00:00
ldong
df5d263bd4 bug TDI-28187 fixed:tMap joined outputs in wrong order.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111989 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 10:21:32 +00:00
hwang
5129ea9d45 TDI-26593:Need to GUI team investigate why tteradataOutput component get error message.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111979 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 09:33:17 +00:00
jjzhou
b57e6838e4 fix Bug TDI-28394: tSAPInput and tSAPIDocOutput does not work in same job
https://jira.talendforge.org/browse/TDI-28394 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111972 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 08:38:44 +00:00
wliu
df50fe44de Fix Bug TDI-28390 : make sure the DataNode.getMetadataList() always get the flow metadata at 0 index.
https://jira.talendforge.org/browse/TDI-28390

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111966 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 08:30:53 +00:00
hwang
92511c9740 TDI-28370:Favorite Palette button is unchecked when a job is open
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111965 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 08:30:31 +00:00
bchen
ebeed546c9 Fix Bug TDI-28389 : Statistics for tUnite incorrect
https://jira.talendforge.org/browse/TDI-28389 
merge r111924 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111963 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 07:42:46 +00:00
bchen
2be2113881 Fix Bug TDI-28280 : TMomInputacts as iterate when set to flow
https://jira.talendforge.org/browse/TDI-28280
merge r111961 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111962 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 07:36:59 +00:00
hcyi
e856677491 bug TDI-28186 fixed : Cannot change main/lookup on tMap if output goes to another tMap with trigger .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111955 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-13 03:53:59 +00:00
jjzhou
e88ba34567 fix Bug TDI-27755: MQ component get french characters
https://jira.talendforge.org/browse/TDI-27755

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111913 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-12 07:05:36 +00:00
bchen
34f0de171b Fix Bug TDI-28280 : TMomInputacts as iterate when set to flow
https://jira.talendforge.org/browse/TDI-28280
merge r111904 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111908 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-12 03:38:54 +00:00
hcyi
8b912a6c59 bug TDI-28349 fixed : Import items is unable to detect invalid job if it is located in a subfolder (deep > 3) .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111896 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-11 10:35:55 +00:00
xqliu
eab8d8b92c Fix Bug TDQ-7376 : User tDqReportRun to run report depending on contextualized db connection, the context value of database field is not taken into account.
https://jira.talendforge.org/browse/TDQ-7376
backport from trunk to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111886 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-11 09:24:02 +00:00
bchen
1f0368991a Fix Backlog Task TDI-28372 : fix for branch5.3 and branch5.2
https://jira.talendforge.org/browse/TDI-28372
merge r111331 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111880 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-11 08:59:02 +00:00
hcyi
e200339580 bug TDI-28349 fixed : Import items is unable to detect invalid job if it is located in a subfolder (deep > 3) .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111872 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-11 07:26:41 +00:00
bchen
e903925b16 Fix Backlog Task TDI-28372 : fix for branch5.3 and branch5.2
https://jira.talendforge.org/browse/TDI-28372
merge r111331 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111845 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-10 10:45:11 +00:00
bchen
d3ae3d09cb Fix Backlog Task TDI-28372 : fix for branch5.3 and branch5.2
https://jira.talendforge.org/browse/TDI-28372
merge r111049 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111839 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-10 09:46:14 +00:00
hfchang
1c89078f08 bug TDI-28046 fixed : Syntax error in JSON connection wizard
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111815 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-10 08:26:57 +00:00
ldong
3bf0b1817b bug TDI-28332 fixed:Stats don't work on parallelized links.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111808 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-10 07:38:40 +00:00
jyhu
4e9e3aa670 Fix Bug TDI-28347 : tTeradataOuput fail to generate code when added additional columns .
https://jira.talendforge.org/browse/TDI-28347 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111762 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-10 02:28:26 +00:00
hwang
59e0d87b38 TDI-8455:Fail to generate code if change order of main and reject links from tFileInputDelimited
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111743 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-09 10:01:22 +00:00
jjzhou
c909491254 fix Bug TDI-27147: components FTP - local folder problem
https://jira.talendforge.org/browse/TDI-27147

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111740 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-09 05:32:08 +00:00
jjzhou
c4bfaea624 fix Bug TDI-27147: components FTP - local folder problem
https://jira.talendforge.org/browse/TDI-27147

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111731 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-06 08:41:37 +00:00
wwang
92c6617608 Fix Bug TDI-27565 : tSSH in a tParallelize bug
https://jira.talendforge.org/browse/TDI-27565

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111724 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-06 06:31:10 +00:00
wwang
b204a97dde Fix Bug TDI-27705 : tWriteJSONField skips randomly data after parallelized iterations
https://jira.talendforge.org/browse/TDI-27705

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111717 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-06 03:32:03 +00:00
jzhao
58282559f3 Fixed Bug TDI-28336: Fix the bug in TDI-28201 for other tDBBulkExec components
https://jira.talendforge.org/browse/TDI-28336
Note:1.Add support muilt thread of tmpTableName..
2.Remove useless code of tIngresBulkExec
3.Fixed tDB2BulkExec create tmp table generate incorrect SQL

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111706 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-05 02:50:34 +00:00
hwang
82fb5ab048 TDI-27680:Studio throws error when move mouse on expanded joblet
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111695 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-04 08:58:10 +00:00
jyhu
312d5c3b1c Fix Bug TDI-28258 : Exception when export a job with tOracleSCD migrated from v4.2.3 .
https://jira.talendforge.org/browse/TDI-28258 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111669 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-03 10:11:40 +00:00
jjzhou
892b7e0ecf fix Work Item TDI-28170: the method: afterGenertorType() is only used in tJDBCInput and it is no used anymore after TDI-28068, let's remove it.
https://jira.talendforge.org/browse/TDI-28170

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111661 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-03 07:07:12 +00:00
jjzhou
7116dc9c3f fix Bug TDI-26732: tFileUnarchive error with big files
https://jira.talendforge.org/browse/TDI-26732

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111657 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-03 03:12:35 +00:00
jzhao
d5d93005c2 Fixed Bug TDI-28201: tGreenplumBulkExec component tries to create twice times same table name
https://jira.talendforge.org/browse/TDI-28201 
Note:Fixed 5.3 ,Revert TalendString.java fixed tGreenplumBulkExec

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111631 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-02 07:39:03 +00:00
jzhao
36f96b3d8e Fixed Bug TDI-28243: t*Ouput Components: NB_LINE_REJECTED returns 0 when there are rejected rows
https://jira.talendforge.org/browse/TDI-28243 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111629 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-02 07:26:07 +00:00
jzhao
b0438b34e3 Fixed Bug TDI-28307: Not set the value for "NB_LINE" property in tMicrosoftCrmInput component
https://jira.talendforge.org/browse/TDI-28307

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111622 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-02 06:49:29 +00:00
bchen
f578e81eef Fix Bug TDI-27520 : tHashInput/Output is not Threadsafe
https://jira.talendforge.org/browse/TDI-27520 
merge r109888 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111615 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-12-02 03:01:36 +00:00
jjzhou
26dabc8443 fix Bug TDI-28254: tSybaseBulkExec CUSTOM Encoding not work
https://jira.talendforge.org/browse/TDI-28254

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111598 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-29 08:47:50 +00:00
nrousseau
679170a50e TUP-1013 : add eclipse.inf
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111590 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-29 01:29:16 +00:00
jzhao
8bf7b20e6d Fixed Bug TDI-27035: tFileList sorting always case-sensitive and files double-counted
https://jira.talendforge.org/browse/TDI-27035 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111570 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-28 03:33:06 +00:00
jzhao
1739c1a1bd Fixed Bug TDI-27823: Some minor problem about tFileFetch
https://jira.talendforge.org/browse/TDI-27823
Note:Fixed branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111568 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-28 03:18:40 +00:00
wwang
7a467134eb Fix Bug TDI-28236 : Failed to generate code when we import a job and it cover the old job with the same name.
https://jira.talendforge.org/browse/TDI-28236

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111557 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-27 02:22:36 +00:00
jyhu
bd3d778df7 Fix Bug TDI-20789 : Can't have a tFileOutputExcel after a drag and drop from Metadata/File Excel .
https://jira.talendforge.org/browse/TDI-20789


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111501 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-26 09:30:35 +00:00
jyhu
533b9b03ac Fix Bug TDI-20789 : Can't have a tFileOutputExcel after a drag and drop from Metadata/File Excel .
https://jira.talendforge.org/browse/TDI-20789


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111496 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-26 08:18:37 +00:00
zwzhao
dbfdd0462b bug TDI-28108 fixed : Problem about create File Json
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111472 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-26 01:54:20 +00:00
zwzhao
02701a1167 bug TDI-28108 fixed : Problem about create File Json
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111444 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-25 11:27:16 +00:00
hcyi
be32e6eac8 bug TDI-28255 : Need backport on 5.3 .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111411 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-25 09:25:26 +00:00
rdubois
6e072d36c7 Change a note within the tOracleRow.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111403 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-25 08:38:26 +00:00
hfchang
8bbf5f6094 bug TDI-24731 fixed : English on Preferences > Import/Export page can be improved
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111393 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-25 07:07:40 +00:00
jjzhou
fd333f8500 fix Bug TDI-26671: If the column to normalize is empty, tNormalize replaces it with a null
https://jira.talendforge.org/browse/TDI-26671 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111336 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-22 09:47:51 +00:00
jyhu
0650b41b91 Fix Bug TDI-20789 : Can't have a tFileOutputExcel after a drag and drop from Metadata/File Excel .
https://jira.talendforge.org/browse/TDI-20789

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111320 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-22 07:47:57 +00:00
jzhao
fe1829206e Fixed Bug TDI-27246: tMsSqlOutputBulk does not include the header when Append is checked
https://jira.talendforge.org/browse/TDI-27246 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111304 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-22 02:29:24 +00:00
jzhao
141113a3a8 Fixed Bug TDI-28005: JMSPriority does not work with tMomOutput and ActiveMQ
https://jira.talendforge.org/browse/TDI-28005 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111267 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-21 07:50:39 +00:00
hwang
db8bc0107c TDI-28217:joblet lost content
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111256 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-21 06:07:17 +00:00
ldong
fc9b33624f bug TDI-28198 fixed:Job launches and runs even with compilation errors in child job.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111236 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-21 03:42:53 +00:00
jyhu
b6e0a76541 Fix Bug TDI-28122:Bug in tJDBC* components when unchecking the checkbox for data alias
https://jira.talendforge.org/browse/TDI-28122

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111230 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-21 02:53:54 +00:00
hwang
09df7b6fd0 TDI-28184:If conditions not displayed in expanded joblet
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111173 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-20 05:54:47 +00:00
jjzhou
ada539abbb fix Bug TDI-28159: Issue with Jasper Report Component
https://jira.talendforge.org/browse/TDI-28159

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111107 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-19 03:51:30 +00:00
ggu
d55e8a6b2a TDI-28195: fixed the problem for route without stats on branch 5.3.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111098 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-19 02:08:58 +00:00
rdubois
0ec8a3a3fe TDI-28045 fixed: Change the LONG_NAME for the tCloudStop.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111090 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-18 16:04:01 +00:00
nrousseau
5975aeeca1 merge r111038 from trunk to branch 5.3
TDI-27435 : change UNIQUE_NAME category to FLOW since now more kinds of row have UNIQUE_NAME


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111040 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-18 07:24:53 +00:00
jyhu
7c656c3d14 Fix Bug TDI-26958:tPostgresqlOutput: ErroCode in Reject Flow not affected.
https://jira.talendforge.org/browse/TDI-26958

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@111029 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-18 04:35:25 +00:00
jzhao
8cda2616dd Fixed Bug TDI-28104: Jobs like tMDMTriggerInput-->tExtractXX have compile error
https://jira.talendforge.org/browse/TDI-28104 
Note:Fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110987 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-15 06:08:18 +00:00
jyhu
033c1ad0bd Fix Bug TDI-27046:For tTeradataOutput component nb_line always return -1.
https://jira.talendforge.org/browse/TDI-27046 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110973 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-15 01:51:24 +00:00
jzhao
237a979e55 Fixed Bug TDI-27838: tRunJob "Die on child error" doesn't work with parallel execution
https://jira.talendforge.org/browse/TDI-27838 
Note:fixed 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110931 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-14 08:30:57 +00:00
jjzhou
860a89dc39 fix Bug TDI-28068: tJDBCInput returns a null row when last field of row is null (with dynamic column)
https://jira.talendforge.org/browse/TDI-28068

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110915 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-14 06:28:07 +00:00
ldong
e12d1f1e18 bug TUP-930 fixed:please make the popup dialog at the front of all.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110901 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-14 03:23:06 +00:00
jzhao
4e36c8912a Fixed Bug TDI-28000: regression 5.3.1 on performance due to java.util.Scanner
https://jira.talendforge.org/browse/TDI-28000
Note:fix 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110899 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-14 03:17:35 +00:00
nrousseau
4fcf357a28 merge r110876 from trunk to branch 5.3
TDI-27435 / TDI-27983 : fix problem of duplicates or wrong unique name.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110886 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-14 01:13:00 +00:00
jyhu
4403b48949 Fix Bug TDI-27046:For tTeradataOutput component nb_line always return -1.
https://jira.talendforge.org/browse/TDI-27046 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110873 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-13 09:54:27 +00:00
jjzhou
4e45b057c3 fix Bug TDI-27789: nullable component error message
https://jira.talendforge.org/browse/TDI-27789 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110835 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-13 05:50:37 +00:00
nrousseau
d0bf29028c merge r110832 from trunk to branch 5.3
TDI-27881 : fix problem of connections with joblets after expand.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110833 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-13 04:56:51 +00:00
ggu
decc82bb41 TDI-28110: backport on branch 5.3
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110785 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-12 06:58:23 +00:00
hfchang
423bcbbbd5 bug TDI-27853 fixed : Create file xml output if type path and file name manual can't get file schema.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110776 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-12 03:42:05 +00:00
ggu
5b52f2b5b8 TDI-28105: backport on branch 5.3.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110757 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-11 10:02:14 +00:00
zwzhao
396a75fb47 bug TDI-26880 fixed : Getting NPE when i run the task created using jobscript
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110744 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-11 08:20:11 +00:00
hfchang
c56ae16bc8 bug TDI-26342 fixed : When update versions, "select all dependence" can not select the routine/the db connection which depend on the job.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110724 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-11 06:21:39 +00:00
nrousseau
47679f5613 merge r110383 from trunk to branch 5.3
TUP-913 : fix some problems of memory... related to jobs / folders... and code cleanup for the isDeleted in the actions


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110712 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-11 02:54:28 +00:00
sizhaoliu
c5a2c24f46 TDQ-8238 Running tDQReportRun job against remote jobserver not working
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110707 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-08 14:09:43 +00:00
nrousseau
df6c9843fd merge r110669 from trunk to branch 5.3
TUP-1312 : add auto synchronization for beans, same as routines.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110671 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-08 04:23:51 +00:00
ldong
594df0be3e bug TDI-17181 fixed:in sqlbuilder after refresh table,the column in the db display is different with before.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110665 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-08 04:00:40 +00:00
jjzhou
67f5567932 fix Bug TDI-28021:Separator "|" no longer works for tLdapOutput in release 5.2.3 but was good in release 5.0.2
https://jira.talendforge.org/browse/TDI-28021 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110659 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-08 03:35:41 +00:00
plv
3fb11ab978 bug TDI-27983:tMap mappings lost (in some cases) after migration to 5.4
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110611 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-07 08:07:40 +00:00
ldong
3050f7151e bug TDI-27999 fixed:Commandline Logging error related to the resource talendExporter.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110567 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 10:24:47 +00:00
plv
318a87c1da bug TDI-27983:tMap mappings lost (in some cases) after migration to 5.4
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110563 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 09:37:58 +00:00
jzhao
429961a447 Fixed Bug TDI-27910: tFileInputProperties not close stream
https://jira.talendforge.org/browse/TDI-27910
Note:Fixed branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110557 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 08:49:02 +00:00
jjzhou
4d999086c2 fix Bug TDI-27993: tIngresBulkExec Auto Generated Filenames .sh and .sql files will be overwritten in a multiple thread live environment sometimes
https://jira.talendforge.org/browse/TDI-27993 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110548 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 06:38:05 +00:00
jzhao
6e2a8359f2 Fixed Work Item TDI-27574: Please remove the output main line of tXXOutputBulkExec
https://jira.talendforge.org/browse/TDI-27574
Note: remove output main line for tIngresOutputBulkExec/tOracleOutputBulkExec

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110539 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 03:45:53 +00:00
hwang
987c8b61c9 TDI-27951:If no INPUT and OUTPUT for joblet, it can't be supported the trace at all
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110532 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-06 02:10:05 +00:00
jjzhou
0fd98a1a8b fix Bug TDI-27744: tREST schema be changed by connecting it to other component,and also for some other components
https://jira.talendforge.org/browse/TDI-27744

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110506 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-05 09:18:20 +00:00
hcyi
a71492b0c6 bug TDI-27908 fixed : tRowGenerator forgets its settings .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110437 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-04 08:11:22 +00:00
wwang
bbd5cb1cf7 Fix Bug TDI-27366 : fix tXMLMap Compilation errors
https://jira.talendforge.org/browse/TDI-27366

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110421 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-04 04:26:30 +00:00
jyhu
f11f6956ee Fix Bug TDI-27810:dynamic schema and Access database.
https://jira.talendforge.org/browse/TDI-27810

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110405 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-04 02:28:40 +00:00
jzhao
52ea14785f Fixed TUJ For TDI-26670: tExtractDelimitedFields throws exception when field to split is null
https://jira.talendforge.org/browse/TDI-26670 
Note:Fixed tExtractXMLFields for TUJ down 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110379 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-01 08:39:19 +00:00
plv
7f490ed6db bug TDI-27707:undo function is not working
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110375 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-01 08:15:07 +00:00
jyhu
c98de97595 Fix Bug TDI-27204: Get error of "Unexpected message type: ReadyForQuery" in tVerticaOutput when use an existing connection component and "Action on data" is "Delete".
https://jira.talendforge.org/browse/TDI-27204


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110348 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-01 03:28:33 +00:00
plv
cf6c524f57 bug TDI-27707:undo function is not working
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110334 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-01 02:32:39 +00:00
jyhu
7b9a8b7dc2 Fix Bug TDI-27204: Get error of "Unexpected message type: ReadyForQuery" in tVerticaOutput when use an existing connection component and "Action on data" is "Delete".
https://jira.talendforge.org/browse/TDI-27204
fixed issue for 10000 rows delete hang. 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110331 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-11-01 01:36:33 +00:00
jjzhou
86508c434d fix Bug TDI-27744: tREST schema be changed by connecting it to other component,and also for some other components
https://jira.talendforge.org/browse/TDI-27744

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110292 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-31 08:11:18 +00:00
jjzhou
68e33016ce fix Bug TDI-27909: Talend component tSalesforceInput Bulk query let opened bulk job on Salesforce.com
https://jira.talendforge.org/browse/TDI-27909

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110272 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-31 02:25:38 +00:00
jzhao
3a82f17533 Fixed Bug TDI-26670: tExtractDelimitedFields throws exception when field to split is null
https://jira.talendforge.org/browse/TDI-26670 
Note:Merge to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110254 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-30 10:47:35 +00:00
zwzhao
db752d2fde bug TDI-27736 fixed : studio has no response if browse an empty json file for creation
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110203 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-30 03:10:02 +00:00
jjzhou
e6a787d069 fix Bug TDI-27584: Change the default mode from "Use Commandline" to "Use Java API" for all the sqoop components
https://jira.talendforge.org/browse/TDI-27584

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110202 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-30 03:09:49 +00:00
ldong
1698c5c243 bug TDI-27660 fixed:Commandline fails to run the exportItems command on Ubuntu.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110111 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-29 02:19:57 +00:00
bchen
b1df0c6a4a Fix Bug TDI-27166 : SALESFORCE BULK API BUG (CONSUMES TOO MANY API CALLS) - SOLVED
https://jira.talendforge.org/browse/TDI-27166 
merge r110104 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110108 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-29 02:16:14 +00:00
hwang
ca91c1b27a TDI-27456:The joblet output row value will be rename to default after change the joblet
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@110042 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-28 05:58:37 +00:00
jzhao
9b0b67efe5 Fixed Bug TDI-27527: tDenormalizeSortedRow does not properly handle Integers
https://jira.talendforge.org/browse/TDI-27527
Note:1.Fix optimize the code
2.Add support char type not nullable.

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109995 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-25 08:24:33 +00:00
hwang
47893300f0 TDI-27648:Job Opens In Bottom Right Corner
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109984 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-25 05:38:18 +00:00
jyhu
09db8ad528 Fix Bug TDI-26705: Property name of ERROR_MESSAGE is inconsistent between displaying inside Outline and inside code .
https://jira.talendforge.org/browse/TDI-26705 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109981 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-25 04:01:27 +00:00
zwzhao
bce841fa40 bug TUP-1140 fixed : Cannot connect triggers in arbitrary order
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109979 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-25 03:54:39 +00:00
jyhu
715c9ecda5 Fix Bug TDI-27608: missing support for Dynamic data type in LDAP components .
https://jira.talendforge.org/browse/TDI-27608

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109929 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 09:38:39 +00:00
hcyi
ce15c832ba bug TDI-27568 fixed : HL7 xml tree are generated incorrectly .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109918 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 08:13:39 +00:00
jjzhou
1647ea03cd fix Bug TDI-26863: Syntax of generated LDIF file not valid with MS Active Directory.
https://jira.talendforge.org/browse/TDI-26863

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109910 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 07:01:43 +00:00
wwang
2ddc694763 Fix Feature TDI-26945 : add database support for hive components
https://jira.talendforge.org/browse/TDI-26945

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109903 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 05:35:06 +00:00
wchen
24586f133b bug TDI-22986 fixed: Routines:Use a routine in a job, after deleted the routine forever, re-open the job, can not detect the routine lost and get an error
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109887 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 02:37:03 +00:00
ldong
26f44b9774 bug TDI-27207 fixed:Could not make column with tooltip 'Add new globalMap variable' narrower.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109886 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-24 02:20:30 +00:00
jzhao
9244cc0d78 Fixed Bug TDI-27527: tDenormalizeSortedRow does not properly handle Integers
https://jira.talendforge.org/browse/TDI-27527 
Note:merge to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109844 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-23 08:21:49 +00:00
wchen
6bf07a751f bug TDI-27762 fixed: tXMLMap: Error message of "Multiple document type xxx"cannot disappear even if update schema
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109835 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-23 06:28:35 +00:00
hwang
5bc2db9cf9 TDI-27182:Studio throws an error when the first time create a routine from the welcome page.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109823 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-23 02:11:51 +00:00
jjzhou
6577706874 fix Bug TDI-27264: sqoop throw error when use java API on windons system
https://jira.talendforge.org/browse/TDI-27264

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109692 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-21 10:08:10 +00:00
jyhu
0389a1c5e3 Fix Work Item TDI-27694: tVerticaOutputBulkExec doesn't have the checkbox "Use an existing connection" .
https://jira.talendforge.org/browse/TDI-27694 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109661 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-21 06:56:12 +00:00
jzhao
d954acb226 Fixed Bug TDI-27198: tAggregateSortedRow does not support boolean or char in group by
https://jira.talendforge.org/browse/TDI-27198 
Note:Merge to 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109657 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-21 06:35:54 +00:00
zwzhao
2c3bf8f95a bug TDI-27525 fixed : Red cross on a Database Icon in the repository
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109647 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-21 02:29:02 +00:00
jjzhou
ee291dbe94 fix Bug TDI-27241: Java code won't compile with LDAP Schema of "Long" and "Not Nullable"
https://jira.talendforge.org/browse/TDI-27241

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109628 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 10:04:46 +00:00
wchen
46de87592a bug TDI-27768 fixed: BD:tPigMap:NPE when try to add expression for output
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109624 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 10:01:49 +00:00
jzhao
b469484489 Fixed Bug TDI-27112: tHiveInput don't support select cloumn when distribute is apache1.0
https://jira.talendforge.org/browse/TDI-27112
Note:Merge to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109607 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:54:23 +00:00
sizhaoliu
78bccc337f merge r109597 from trunk to branch 5.3
TDQ-8142 save the routine item only if the dependency is modified.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109606 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:51:37 +00:00
sizhaoliu
4573bd3977 merge r109553 from trunk to branch 5.3
TDQ-8142 remove only the relationship for org.talend.dataquality.parser + avoid adding the link during export


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109605 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:51:10 +00:00
sizhaoliu
f59454ad5d merge r109551 from trunk to branch 5.3
TDQ-8142 add migration task to remove the relationship between the routine item and the dependency modules starting with "org.talend"


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109604 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:50:14 +00:00
plv
cacdec7d63 bug TDI-27277:Guess Schema issue with Redshift tRedshiftInput
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109602 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:46:40 +00:00
wchen
49b92e98b4 bug TDI-27768 fixed: BD:tPigMap:NPE when try to add expression for output
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109599 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 08:30:21 +00:00
plv
47d5c6e990 bug TDI-27277:Guess Schema issue with Redshift tRedshiftInput
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109583 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-18 05:27:17 +00:00
bchen
f670f94782 Fix Bug TDI-27704 : Loose meters informations when error
https://jira.talendforge.org/browse/TDI-27704
make sure run flowMeter process before subjob process to ensure the flowMeter data of current process can be recorded.
merge r109534 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109536 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-17 09:53:17 +00:00
zwzhao
b0e272f8c2 bug TDI-27525 fixed : Red cross on a Database Icon in the repository
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109531 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-17 09:12:47 +00:00
zwzhao
7634c2cb19 bug TDI-27525 fixed : Red cross on a Database Icon in the repository
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109519 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-17 07:34:54 +00:00
nrousseau
c043eaf013 merge r109495 from trunk to branch 5.3
TDI-27588 : fix a small problem with component unique name


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109496 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-17 02:47:37 +00:00
jjzhou
b8994d6634 fix Bug TDI-27581: Need to add two parameters to define memory parameters for HDP 1.2 and HDP 1.3
https://jira.talendforge.org/browse/TDI-27581

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109435 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-16 06:38:25 +00:00
nrousseau
3078a06461 merge r109431 from trunk to branch 5.3
TDI-27298 : fix problem with execution of jobs with ELT components


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109432 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-16 06:17:52 +00:00
wliu
70eeb4e43d Fix workitem TDI-27272 : replace the static value with the variable.
https://jira.talendforge.org/browse/TDI-27272

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109415 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-16 01:48:04 +00:00
nrousseau
57e14acbd2 merge r109370 from trunk to branch 5.3
TDI-27588 : remove some optimization done in the TDI-27266


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109373 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-15 08:14:44 +00:00
jyhu
c89a5685d6 Fix Bug TDI-27733: tLDAPInput could not get more than one column binary values from schema and no effective when use exsisting connection .
https://jira.talendforge.org/browse/TDI-27733

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109365 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-15 07:45:15 +00:00
hcyi
3960f4db81 bug TDI-27568 fixed : add HL7 Version for the tHL7Output repository .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109346 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-15 05:46:18 +00:00
bchen
3e04b4b039 Fix Bug TDI-27652 : SAP connection not released in case of a downstream component throws an exception
https://jira.talendforge.org/browse/TDI-27652
merge r109297 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109300 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 10:45:05 +00:00
jjzhou
e7b1c0fd28 fix Bug TDI-27640: tFileFetch HTTPS Redirection
https://jira.talendforge.org/browse/TDI-27640 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109295 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 10:38:00 +00:00
jyhu
c1e10cd30e Fix Bug TDI-27608: missing support for Dynamic data type in LDAP components .
https://jira.talendforge.org/browse/TDI-27608

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109289 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 10:31:18 +00:00
zwzhao
a9855f04e2 bug TDI-6613 fixed : tSalesforceOutput : Schema issue when switching Action.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109285 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 10:18:31 +00:00
jzhao
3782dff09c Fixed Bug TDI-27715: the default online wsdl is not valid anymore for all the tWebService components
https://jira.talendforge.org/browse/TDI-27715
Note:1.Change the default online wsdl of tWebService*
2.Modify TUJ

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109274 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 08:45:23 +00:00
wliu
44bb16adf9 Fix Bug TDI-27194 : complete the condition
https://jira.talendforge.org/browse/TDI-27194

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109253 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-14 04:05:32 +00:00
hcyi
0bc3a5e565 bug TDI-27568 fixed : xml tree in both tHL7Input and tHL7Output repository are generated incorrectly .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109222 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-12 10:17:36 +00:00
jzhao
e800d7ffec Fixed Bug TDI-27517: 65535 issue with many tMaps and tExtractDelimitedFields
https://jira.talendforge.org/browse/TDI-27517 
Note:Merge to 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109203 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-12 08:22:02 +00:00
zwzhao
269cca108f bug TUP-825 fixed : commonFilter is incorrectly installed permanently in the ProjectExplorer
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109129 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-11 07:17:02 +00:00
jjzhou
1c12ff5b62 fix Bug TDI-27654: Exception: java.lang.NoClassDefFoundError: org/jaxen/JaxenException on Talend Dataservice
https://jira.talendforge.org/browse/TDI-27654

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109076 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-10 09:58:54 +00:00
rdubois
a547f72182 TDI-27169 fixed: Add a variable in the tPivotToColumnsDelimited to count the number of lines written in the file.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@109040 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-09 14:08:33 +00:00
plv
1ea5b0983e bug TDI-26695:guess schema fail for derby client
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108955 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-08 08:31:54 +00:00
jjzhou
44ba2561ba fix Bug TDI-27592: Salesforce connection fails with Classloader Error
https://jira.talendforge.org/browse/TDI-27592

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108954 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-08 08:04:20 +00:00
jjzhou
12620d7fe0 fix Bug TDI-26863: Syntax of generated LDIF file not valid with MS Active Directory.
https://jira.talendforge.org/browse/TDI-26863

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108940 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-10-08 03:58:48 +00:00
zwzhao
9151ed67f9 bug TDI-6613 fixed : tSalesforceOutput : Schema issue when switching Action.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108823 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-30 10:08:59 +00:00
jyhu
e14330172e Fix Work Item TDI-27353: Check Use standard_conforming_string ON as default setting when connect to V9.X and file type is CSV on tPostgresXXBulkExec componnents .
https://jira.talendforge.org/browse/TDI-27353

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108764 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-30 02:48:19 +00:00
jzhao
cfb5fb68d3 Add TUJ For Bug TDI-27447: tPivotToColumnsDelimited doesn't close the BufferedWriter flow and also doesn't delete the empty file when checked the "Don't generate empty file"
https://jira.talendforge.org/browse/TDI-27447
Note: Remove useless stream close.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108731 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-29 09:23:51 +00:00
wliu
9dd710db15 Fix Bug TDI-26984 : recover the old behavior
https://jira.talendforge.org/browse/TDI-26984

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108715 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-29 08:11:21 +00:00
jyhu
fe8a80e4ac Fix Bug TDI-26822: tOracleOutput with Dynamic schema and reject rows crashes if all data rejected .
https://jira.talendforge.org/browse/TDI-26822 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108712 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-29 08:09:38 +00:00
jyhu
e60352d672 Fix Bug TDI-27204: Get error of "Unexpected message type: ReadyForQuery" in tVerticaOutput when use an existing connection component and "Action on data" is "Delete" .
https://jira.talendforge.org/browse/TDI-27204 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108693 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-29 06:56:45 +00:00
rdubois
a45b731b4e TDI-27335 fixed: tMOM components fixed when using a tMomConnection
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108644 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-27 13:23:37 +00:00
jzhao
ac34e67475 TDI-27447: tPivotToColumnsDelimited doesn't close the BufferedWriter flow and also doesn't delete the empty file when checked the "Don't generate empty file"
https://jira.talendforge.org/browse/TDI-27447
Note:1.Fixed tPivotToColumnsDelimited
2.tFileInputARFF and tFileInputLDIF close stream

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108621 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-26 09:46:56 +00:00
jyhu
9aae893730 Fix Bug TDI-27140: NumberFormatException when NLS is configured in French by using tOracleOutputBulkExec component .
https://jira.talendforge.org/browse/TDI-27140

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108559 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-25 09:29:02 +00:00
wliu
5ee38547a7 Fix Bug TDI-26984 : remove the new mode for tHL7Output
https://jira.talendforge.org/browse/TDI-26984

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108472 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-24 11:03:54 +00:00
hcyi
b390d784c6 merge r108422 from trunk to branch 5.3
bug TDI-26946 fixed : ELTHiveMap : HiveQL generation not refreshed if you delete an INPUT table .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108424 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-24 03:45:54 +00:00
nrousseau
73c1ba4e8c merge r108414 from trunk to branch 5.3
TDI-25871 : fix problem of wrong display of links, avoid to use xpath to get current path to link, but try to get from elements


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108417 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-24 03:14:44 +00:00
jyhu
663ebaeefa Fix Bug TDI-27425: The characters with accent can not be displayed by using ODBC connector.
https://jira.talendforge.org/browse/TDI-27425


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108365 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-23 08:56:58 +00:00
jzhao
6fd0387017 Fixed Bug TDI-27075: tFileInputJSON or tExtractJSONFields will run in Studio but fail if job is exported and run via command line
https://jira.talendforge.org/browse/TDI-27075

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108347 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-23 07:47:00 +00:00
hcyi
358cbb908e merge r108334 from trunk to branch 5.3
bug TDI-27090 modified : Wrong pattern used in TAC for the project creation . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108335 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-23 06:04:09 +00:00
nrousseau
b6bee45229 merge r108332 from trunk to branch 5.3
TDI-27249 : fix clean statistics for TOS


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108333 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-23 05:05:45 +00:00
nrousseau
35eca94250 merge r108316 from trunk to branch 5.3
TDI-27535 : fix problem of null connection name


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108318 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-22 11:03:33 +00:00
wliu
b475ad8d0d Fix Bug TDI-26984 : tHL7Output component Bug
https://jira.talendforge.org/browse/TDI-26984

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108306 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-22 09:47:01 +00:00
nrousseau
2a5c16a017 merge r108279 from trunk to branch 5.3
TDI-27364 : fix the version problem for psql for the version change to have the same as the component.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108281 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-22 06:36:29 +00:00
plv
e67290268d bug TDI-27384:TIS isn't automatic save job after changes in SQL memory though we have checked save job before execution
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108276 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-22 05:27:41 +00:00
nrousseau
fa54706af7 merge r108269 from trunk to branch 5.3
TDI-27350 : add missing break info for the migration


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108274 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-22 04:24:17 +00:00
plv
8fd6cb2104 bug TDI-27266:backport 5.3
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108232 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-18 10:41:28 +00:00
hwang
bf1e5cc409 TDI-27462:expanding Sub-jobs linked together: remove this link, or move it
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108211 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-18 09:21:59 +00:00
nrousseau
8079a69c24 merge r108174 from trunk to branch 5.3
TDI-27435 : Rename automatically some row link if some are already existing.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108175 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-18 02:19:23 +00:00
nrousseau
4b059e3c0d merge r108120 from trunk to branch 5.3
TDI-27350 : set correct case for the dbtypes when migrate to avoid warnings


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108131 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-17 07:25:02 +00:00
nrousseau
b1d86bd6f2 merge r108119 from trunk to branch 5.3
TDI-27485 : avoid an expand all when open the repository dialog


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108121 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-17 04:34:16 +00:00
wliu
9302172572 Fix Bug TDI-27273 : avoid the NPE when the variable value is null
https://jira.talendforge.org/browse/TDI-27273

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108070 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-16 04:51:08 +00:00
nrousseau
12d75e53bf merge r108063 from trunk to branch 5.3
TDI-27350 : set correct case for the dbtypes when migrate to avoid warnings


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108064 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-16 04:05:13 +00:00
jyhu
2444886d2c Fix Bug TDI-26987: File will be changed when copy from one table to another by use postgres DB.
https://jira.talendforge.org/browse/TDI-26987

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108036 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-14 10:54:08 +00:00
jyhu
39fc271ba1 Fix Bug TDI-26924: Mail cannot be processed correctly by using tFileInputMail.
https://jira.talendforge.org/browse/TDI-26924


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108033 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-14 08:45:41 +00:00
sizhaoliu
0a86d32fee TDQ-7731 fix the NCDFE on branch 5.3
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@108023 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-13 12:21:58 +00:00
bchen
b852e655d4 Fix Bug TDI-27303 : tSAPInput component to enable starting ftp and http based programs
https://jira.talendforge.org/browse/TDI-27303 
merge r107562 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107975 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-13 07:38:36 +00:00
nrousseau
1532e0e31c merge r107851 from trunk to branch 5.3
TDI-27438 : enhance the speed of resolution of routines for joblets


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107856 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-12 03:33:21 +00:00
wliu
93c6aa74d7 Fix Bug TDI-27273 : incorrect xml parameter processing with special charactors like: +
https://jira.talendforge.org/browse/TDI-27273

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107830 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-11 09:56:35 +00:00
wwang
2b01953149 Fix Bug TDI-27125 : fix the order issue for xml generated
https://jira.talendforge.org/browse/TDI-27125

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107808 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-11 08:16:43 +00:00
hcyi
118a623533 bug TDI-5898 fixed : GlobalMap set by tMap aren't display in completion .
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107771 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-10 08:13:29 +00:00
hcyi
9da0dfa541 merge r107765 from trunk to branch 5.3
bug TDI-5898 fixed : GlobalMap set by tMap aren't display in completion .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107767 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-10 08:03:56 +00:00
hwang
c3bab4b5ce TDI-23013 :Undo of delete for links to joblet not correct when joblet expanded
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107747 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-10 05:24:27 +00:00
hwang
debcc83d63 TDI-27395:If a node have two input connections, one is merge, another is subjobok, then you delete the merge one, will get an NEP,and every time when you open the job, you will get he NEP
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107745 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-10 04:10:07 +00:00
fwang
a8025c581f bug TDI-27257 fixed:duplicate routine items display when "Setup routine dependencies"
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107720 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-09 09:34:43 +00:00
wliu
25318c023e Fix workitem TDI-27272 : Using apache codec in commons-codec-1.7.jar to replace the bonita codec in the tBonitaInstantiateProcess for the mode:"HTTP Client"
https://jira.talendforge.org/browse/TDI-27272

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107713 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-09 08:46:23 +00:00
wliu
e1f3063f0b Fix workitem TDI-27272 : Using apache codec in commons-codec-1.7.jar to replace the bonita codec in the tBonitaInstantiateProcess for the mode:"HTTP Client"
https://jira.talendforge.org/browse/TDI-27272

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107710 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-09 08:24:39 +00:00
nrousseau
62df2525c8 merge r107683 from trunk to branch 5.3
TDI-26994 : improve the edition of tJava, use one ExecutionLimiter to avoid to call the generation too often.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107684 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-09 03:21:40 +00:00
hwang
9ad54b096d TDI-27032:Response to schema prompt when adding component to flow remembered
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107638 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-06 06:54:58 +00:00
wliu
17a5e88a24 Fix Bug TDI-27365 : tSAPInput_end.javajet doesn't generated code correctly
https://jira.talendforge.org/browse/TDI-27365

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107628 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-06 03:47:22 +00:00
hcyi
b3992c0a29 merge r107563 from trunk to branch 5.3
bug TDI-27090 fixed : Wrong pattern used in TAC for the project creation .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107565 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-05 06:40:12 +00:00
bchen
2249dc0b2b Fix Bug TDI-27166 : SALESFORCE BULK API BUG (CONSUMES TOO MANY API CALLS) - SOLVED
https://jira.talendforge.org/browse/TDI-27166 
merge r106997 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107515 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-04 08:08:23 +00:00
bchen
feaf3d9cd4 Fix Bug TDI-27261 : NPE when doing parallel lookups
https://jira.talendforge.org/browse/TDI-27261 
wrap global resource with synchronizedMap when there is a tParallelize 
merge r107496 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107504 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-04 07:01:49 +00:00
hcyi
0bace3f9e6 merge r107453 from trunk to branch 5.3
bug TDI-26953 modified : tMap drag-and-drop column names case-sensitive . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107454 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-03 07:08:04 +00:00
hcyi
b080a3f67f merge r107447 from trunk to branch 5.3
bug TDI-26860 fixed : tFileOutputMSXML didn't get the Related Column when using "import XML tree" from an XSD .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107448 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-03 06:07:32 +00:00
jjzhou
a1209b7fdd fix Bug TDI-27283: Please hide two properties on tLDAPRenameEntry when check Use an existing connection
https://jira.talendforge.org/browse/TDI-27283 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107382 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-09-02 03:00:23 +00:00
hcyi
fb46c02727 merge r107354 from trunk to branch 5.3
bug TDI-5839 fixed : Renaming variable in tMap doesn't affect Expression-Filter .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107355 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 09:34:56 +00:00
jyhu
0df8a9a7b3 Fix Bug TDI-27114: tCreatetable does not have the "schema" blank in basic settings.
https://jira.talendforge.org/browse/TDI-27114 
change the breaks and version for migration task and replace a disposable class. 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107338 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 07:02:41 +00:00
jyhu
6b912c24f4 Fix Bug TDI-27114: tCreatetable does not have the "schema" blank in basic settings.
https://jira.talendforge.org/browse/TDI-27114 
Add double Quote when schema_db is empty.

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107324 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 04:29:50 +00:00
hwang
7669771d5a TDI-27032:Response to schema prompt when adding component to flow remembered
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107312 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 03:22:54 +00:00
nrousseau
b0b4315aab merge r107310 from trunk to branch 5.3
TDI-26994 : fix / improve again for the edition for the tJava


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107311 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 03:15:56 +00:00
plv
b6f53d0120 merge r107302 from trunk to branch 5.3
bug TDI-26547:Problems with update detection for tMap repository schemas


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107304 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-30 02:31:29 +00:00
jyhu
713fef287e Fix Bug TDI-27114: tCreatetable does not have the "schema" blank in basic settings.
https://jira.talendforge.org/browse/TDI-27114 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107278 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-29 11:18:32 +00:00
zwzhao
1fc1307eb6 bug TUP-866 fixed : Wrong javajet code in components causes no error message
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107273 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-29 07:12:34 +00:00
hwang
afbf7443ba TDI-27182:Studio throws an error when the first time create a routine from the welcome page.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107188 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-27 10:29:16 +00:00
fwang
65e0f0c01b bug TDI-27137 fixed:Function for "Guess Schema" can not be used for JavaDB Embeded Database.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107168 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-27 09:39:45 +00:00
hwang
a6ffa96a30 TDI-27173:Invisible Components in job design
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107127 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-27 02:20:20 +00:00
hcyi
4924d36567 merge r107105 from trunk to branch 5.3
bug TDI-26953 fixed : tMap drag-and-drop column names case-sensitive .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107108 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-26 10:44:14 +00:00
hwang
4954dc6f72 TDI-26496:There should be an error information when the input shema is different from the one in the joblet
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107082 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-26 08:18:03 +00:00
wliu
b6083b0c52 Fix Bug TDI-27194 : tBonitaInstantiateProcess: switch from 'Java Client' to 'Http client' still export dependencies
https://jira.talendforge.org/browse/TDI-27194

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107078 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-26 07:27:43 +00:00
plv
6e59e06794 merge r107073 from trunk to branch 5.3
bug TDI-27223:MR Job:Detect dependenics: No response when click this option


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107075 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-26 06:32:30 +00:00
zwzhao
90f56e7f90 TDI-27052:Project can not be opened after migrate from 5.1.2 to 5.3.1
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107054 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-26 02:37:45 +00:00
zwzhao
f174f3288c bug TDI-26923 fixed : Shell "Update Detection" is activated when running the job after unchecking some columns of copybook schema in component view.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107040 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-23 10:37:50 +00:00
hcyi
8ff13b15b5 merge r107029 from trunk to branch 5.3
bug TDI-27091 modified : Schema type changes from Repository to Built-in after unchecking some columns in component view . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107031 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-23 10:23:37 +00:00
fwang
87eaff4d67 bug TDI-24379 fixed:Job which use routines when open,change the routines' name,the class name didn't change.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@107014 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-23 09:15:04 +00:00
zwzhao
c50f66561c bug TDI-26807 fixed : Cannot link two subjobs with 'On Subjob Ok' and 'On Subjob Error' on tRowGenerator and tFixedflowInput
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106984 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-23 05:55:50 +00:00
fwang
863bffac81 bug TDI-26719 fixed:New change for user component can not be push to Palette in time.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106877 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-21 09:47:54 +00:00
hwang
01980f3095 TDI-27173:Invisible Components in job design
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106866 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-21 08:02:00 +00:00
plv
b5f02580d9 merge r106853 from trunk to branch 5.3
bug TDI-26631:Dynamic parameter name should be selectable


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106856 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-21 07:24:35 +00:00
hwang
6f81556e4a TDI-27173:Invisible Components in job design
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106854 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-21 07:17:12 +00:00
jyhu
7c50c6ced3 Fix Bug TDI-26390: No way to set the additional parameters on t(DB)Connection .
https://jira.talendforge.org/browse/TDI-26390

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106797 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-20 05:51:56 +00:00
hwang
bd0f383ff0 TDI-27052:Project can not be opened after migrate from 5.1.2 to 5.3.1
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106781 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-20 01:48:10 +00:00
wchen
256fcf6f7b merge r106765 from trunk to branch 5.3
bug  TDI-26576 fixed: Can drop additional columns into linked tMap output with repository schema


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106767 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-19 09:47:20 +00:00
ycbai
609bdd5999 Added TDI-27148 : Need to review the speed of initialization of libaries
And revise TUP-931 : TDM install over previous version fails to clean up lib/java/index.xml 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106727 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-19 02:10:13 +00:00
hwang
8d3caaa412 TDI-27052:Project can not be opened after migrate from 5.1.2 to 5.3.1
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106704 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-16 09:53:19 +00:00
jyhu
1505c35333 Fix Backlog Task TDI-26955: Need to add the schema to the oracle output components in ORACLE RAC mode (other modes are ok).
https://jira.talendforge.org/browse/TDI-26955
Add the schema to tOracleSCDELT in ORACLE OCI mode
Add the schema to oracle components in ORACLE RAC mode

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106694 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-16 07:54:22 +00:00
ycbai
eb9d978e34 Added TDI-27148 : Need to review the speed of initialization of libaries
And revise TUP-931 : TDM install over previous version fails to clean up lib/java/index.xml 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106685 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-16 06:34:09 +00:00
nrousseau
897efd043a merge r106617 from trunk to branch 5.3
TUP-948 : fix problem of lock, where it will try to lock each opened job editor


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106618 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-15 04:08:26 +00:00
nrousseau
1f8b8c85ca merge r106602 from trunk to branch 5.3
TUP-949 : avoid to force to display the problem view if this one is not visible already.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106604 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-15 02:20:52 +00:00
plv
18e3747090 bug TDI-27091:Schema type changes from Repository to Built-in after unchecking some columns in component view.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106568 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-14 03:39:25 +00:00
jzhao
1afe84de93 Fixed Backlog Task TDI-26883: need component_group add a attribute to suport the excle's modification
https://jira.talendforge.org/browse/TDI-26883

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106556 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-14 02:54:48 +00:00
jzhao
013eb8d3f0 Fixed Bug TDI-26170: tHDFSPut component uses a deprecated library and produces warnings
https://jira.talendforge.org/browse/TDI-26170
Note:Revert the code

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106539 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-13 10:33:55 +00:00
ycbai
021889afd3 bug TDI-25482 fixed: HCatalog item and HDFS item cannot be exported.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106533 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-13 10:07:07 +00:00
jjzhou
3114d40c0c fix Bug TDI-26921: tLDAPRenameEntry component missing txt fields
https://jira.talendforge.org/browse/TDI-26921

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106428 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-09 01:16:40 +00:00
jjzhou
507439d785 fix Bug TDI-27076: tLDAPRenameEntry issue
https://jira.talendforge.org/browse/TDI-27076 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106424 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-08 09:53:36 +00:00
fwang
8f5d2c0d49 bug TDI-27021 fixed:"Add extension" button in exchange is activated without clicked on
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106387 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-07 08:38:16 +00:00
plv
2600486bbe merge r106382 from trunk to branch 5.3
bug TDI-26854:Oracle RAC Connection doesn't allow Schema entry


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106383 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-07 08:07:06 +00:00
nrousseau
6087a46523 merge r106380 from trunk to branch 5.3
TDI-27088 : fix some exception appeared in the logs.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106381 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-07 07:53:47 +00:00
hwang
0712a27213 TUP-934:Try to create route from welcome page, cannot switch to create route wizard
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106326 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-06 09:51:06 +00:00
plv
0d172c3035 merge r106311 from trunk to branch 5.3
bug TDI-26631:Dynamic parameter name should be selectable


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106312 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-06 07:55:52 +00:00
plv
b3e6862bdc merge r106265 from trunk to branch 5.3
bug TDI-26467:tSalesforceOutput


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106282 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-06 01:34:47 +00:00
ldong
7a2b256756 bug TDI-26795 fixed:SAP component can not get the right function name when drag a column under schema into a job.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106262 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-05 09:38:44 +00:00
ycbai
9f6b9a8a44 bug TDI-26994 : lots time delay when edit code in tJava
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106250 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-05 07:58:03 +00:00
wchen
2a9275f7c5 merge r106246 from trunk to branch 5.3
bug  TDI-27024 fixed: Schema does not propagate to tAddCRCRow, after changing schema of tSugarCRMInput.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106249 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-05 07:35:39 +00:00
wchen
c77598c0ca merge r106090 from trunk to branch 5.3
bugTDI-26686 fixed: Export items to archive creates folder if file extension not included


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106093 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 05:57:58 +00:00
ycbai
d3b341d6a8 bug TDI-26093 : Non-job items always exported with jar
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106092 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 05:50:25 +00:00
wchen
0884624c6a merge r106087 from trunk to branch 5.3
bug  TDI-26576 fixed: Can drop additional columns into linked tMap output with repository schema


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106088 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 04:01:06 +00:00
wchen
fe7c17f153 merge r106082 from trunk to branch 5.3
bug   TDI-19963 fixed: Wrong schema generated when change schema between column which READONLY="true" and column which READONLY="false"


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106083 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 03:23:19 +00:00
ldong
7b87a11d3c bug TDI-26757 fixed:The QUEUE_SIZE parameter is not persistent in the parallelization links.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106078 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 02:53:32 +00:00
plv
7d7c562971 merge r106055 from trunk to branch 5.3
bug TDI-23822:Drag tSalesforceInput/ tSalesforceOutput from second node in repository, the schema isn't correct in component.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106071 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-08-01 01:49:05 +00:00
plv
bb8c1d0535 merge r106000 from trunk to branch 5.3
bug TDI-26928:Multi thread execution check box is grayed when the job is using project setting in 5.2.3


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@106002 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-31 01:49:42 +00:00
plv
6a7e7a9c06 bug TDI-13420:make the url as context ,edit the twebservice again ,find the browser and refresh become grey.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105956 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-30 03:08:00 +00:00
nrousseau
f5c517dca2 merge r105944 from trunk to branch 5.3
TDI-26584 : simply hides this exception, since it's from GEF directly, and even when it happens, everything still works correctly for us.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105945 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-30 01:01:09 +00:00
wchen
322187f198 bug TDI-26506 fixed: Could not convert a job to MR job (and do not get a good error message)
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105937 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-29 10:10:48 +00:00
hcyi
88710514e5 merge r105932 from trunk to branch 5.3
bug TDI-26648 fixed : Statistic port is not released well in the Studio, which causes warning message before job execution .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105933 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-29 09:35:03 +00:00
wchen
31c12f2ee1 merge r105929 from trunk to branch 5.3
bug   TDI-19963 fixed: Wrong schema generated when change schema between column which READONLY="true" and column which READONLY="false"


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105930 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-29 09:21:40 +00:00
plv
8483d35af1 bug TDI-7860:Unable to rename schema in tFileInputMSXXXX
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105896 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-26 10:22:57 +00:00
hcyi
ea084a503c merge r105888 from trunk to branch 5.3
bug TDI-26611 fixed : Import TUJ "Bug10369_tFileOutputExcel" ,when we double click or right click "edit job" .Both got NPE(different error) .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105892 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-26 10:09:08 +00:00
ldong
25b0f0732a bug TDI-26815 fixed:Parallelization within the links cannot generate code with the tUnite.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105872 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-26 07:46:38 +00:00
jjzhou
4c53ed17fb fix Bug TDI-26856: tMicrosoftCrmInput: Runtime ClassCastException: com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl cannot be cast to javax.xml.parsers.SAXParserFactory
https://jira.talendforge.org/browse/TDI-26856

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105832 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-25 09:51:37 +00:00
bchen
b769d705a4 Fix Work Item TDI-26845 : clean MapReduceDataProcess?
https://jira.talendforge.org/browse/TDI-26845 
as we have MapReduceDataProcess, remove the un used methods for mapredce on DataProcess

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105811 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-25 06:13:26 +00:00
nrousseau
a3045feaa5 merge r105799 from trunk to branch 5.3
TDI-26838 : fix problem of graphic disposed for the update of component. use the same method everywhere for any refresh of templates needed.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105800 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-25 04:19:02 +00:00
jzhao
32353b426a Fixed Bug TDI-26681: Bug fix for org.talend.salesforce.SforceManagementImpl.java
https://jira.talendforge.org/browse/TDI-26681
Note: Merge to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105790 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-25 03:11:53 +00:00
jjzhou
a72576cb27 fix Bug TDI-26851: Java error when using two tFileOutputLDIF in the same job.
https://jira.talendforge.org/browse/TDI-26851

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105709 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-24 07:14:03 +00:00
plv
329a937be1 bug TUP-835 fixed:Cannot retreive schema on tables that contain "." in the table name
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105687 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-24 03:39:43 +00:00
fwang
a8b6657b61 bug TDI-26614 fixed:Excell XLSX files not read correctly
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105680 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-24 03:00:57 +00:00
wliu
e51fd38bf2 Fix Bug TDI-26484 : Fix the situation when there are tUnite in the subprocess with RowsEnd virtual components.
https://jira.talendforge.org/browse/TDI-26484

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105672 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-24 02:27:57 +00:00
wwang
0c436b3d06 Fix Bug TDI-26803 : tOracleOutputBulkExec - Update Scenario
https://jira.talendforge.org/browse/TDI-26803

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105654 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-23 10:28:06 +00:00
wliu
f9deb2012c Fix Bug TDI-26484 : When the component is a virtual component with link type:onRowsEnd, then all the subjobs which following the onRowsEnd will be generated just after the first virtual component end part
https://jira.talendforge.org/browse/TDI-26484

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105600 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-23 03:23:05 +00:00
nrousseau
981a8938cd merge r105585 from trunk to branch 5.3
TDI-26835 : disable automatically the option lookup in parallel if there is no tParallelize component  available


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105586 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-23 00:44:42 +00:00
wliu
077664e32c Fix Bug TDI-26484 : When the component is a virtual component with link type:onRowsEnd, then all the subjobs which following the onRowsEnd will be generated just after the first virtual component end part
https://jira.talendforge.org/browse/TDI-26484

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105569 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-22 10:47:05 +00:00
jjzhou
f1205ea06d fix Bug TDI-26832: Can't delete all output files
https://jira.talendforge.org/browse/TDI-26832

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105547 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-22 08:45:28 +00:00
wliu
9af54fff22 Fix Bug TDI-26484 : When the component is a virtual component with link type:onRowsEnd, then all the subjobs which following the onRowsEnd will be generated just after the first virtual component end part
https://jira.talendforge.org/browse/TDI-26484

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105457 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-19 06:54:19 +00:00
bchen
fe85dc960f Fix Bug TDI-26511: tMicrosoftCrmInput using 2007 endpoint which is no longer supported
https://jira.talendforge.org/browse/TDI-26511
as url "https://dev.login.live.com/wstlogin.srf" is forbiddened 
replace url "https://dev.login.live.com/wstlogin.srf" by "https://login.live.com/rst2.srf" to make online mode work 
add ability to set login url 
merge r105039 into branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105450 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-19 02:45:16 +00:00
ilazebny
5a0b2660ec Update version to 5.3.2-SNAPSHOT in poms
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105428 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-18 17:41:17 +00:00
jjzhou
8c64a864bb fix Bug TDI-26780: Better fix required for the issue TDI-26525
https://jira.talendforge.org/browse/TDI-26780

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105352 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-17 09:00:55 +00:00
jyhu
8a4947114d Fix Bug TDI-26545 : tGreenplum componentes are not correctly using schema
https://jira.talendforge.org/browse/TDI-26545 
Merge into branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105348 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-17 08:55:12 +00:00
nrousseau
3821df40b3 merge r105315 from trunk to branch 5.3
TDI-26751 : fail to switch jobscript when there is several tXmlMap in the same job.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105316 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-17 01:16:41 +00:00
jyhu
056d418eaa Fix Bug TDI-26770: Adjust the place of table name on tVerticaBulkExec .
https://jira.talendforge.org/browse/TDI-26770 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105290 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-16 09:10:29 +00:00
plv
ea713c82a5 merge r105259 from trunk to branch 5.3
bug TUP-835 fixed:revert


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105261 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-15 10:16:50 +00:00
jzhao
9f89a4c2a8 Fixed Bug TDI-26670: tExtractDelimitedFields throws exception when field to split is null
https://jira.talendforge.org/browse/TDI-26670
Note:Throw a new Exception if value of split fields is null.

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105242 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-15 03:40:16 +00:00
ldong
4ecb191446 bug TDI-26555 fixed:New Set Parallelization - code will not compile - depends on order of components.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105238 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-15 03:19:52 +00:00
fwang
04dde29d67 bug TDI-26632 fixed:The DB component schema property set Repository but the connection info still editable
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105236 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-15 01:31:38 +00:00
ycbai
37cbab1850 bug TDI-25844 : The UI of shell which is activated by double clicking "tFileInputMSDelimited" is mess.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105207 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-12 07:12:48 +00:00
zwzhao
1706bc437f bug TDI-26617 fixed : tWebService does not return any value
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105200 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-12 06:15:02 +00:00
jzhao
0fadd95dc5 Fixed Bug TDI-26710: When Append is ticked in tFileOutputARFF the generate file can't be deleted by tFileDelete in on job
https://jira.talendforge.org/browse/TDI-26710
Note: Close BufferedReader object

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105187 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-12 02:03:15 +00:00
plv
1a985ff340 merge r105181 from trunk to branch 5.3
bug TDI-26695 fixed:guess schema fail for derby client


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105182 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-12 01:36:34 +00:00
jjzhou
09cde10db9 fix Bug TDI-26548: Oracle datasource spring bean thrown an exception in the runtime
https://jira.talendforge.org/browse/TDI-26548

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105178 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-11 09:43:08 +00:00
wchen
6499a3e2bf merge r105175 from trunk to branch 5.3
bug TDI-26609 fixed: tXmlMap automatic connection expression parser doesn't recognize nodes which have attributes


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105176 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-11 09:08:52 +00:00
ldong
99c447df11 bug TDI-26553 fixed:New Set Parallelization - failed to generate code.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105167 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-11 07:26:17 +00:00
amarkevich
73f703603d TESB-10280 TOS-DI 5.3.1 - cannot have multiple tESBConsumers pointing to same wsdl
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105145 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-10 13:13:23 +00:00
zgao
a4b5e57daa [TUP-886] Fix import module with same name as selected will skip copy to storage lib folder.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105087 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 11:00:22 +00:00
fwang
ead81dd2ca bug TUP-835 fixed:backport on 5.3
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105083 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 10:23:41 +00:00
wchen
a36b3bd574 bug TDI-25081 fixed : Avoid to block the generation of the job when check for tPrejob / tPostJob
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105082 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 10:21:45 +00:00
zwzhao
768aeb42c4 bug TDI-26633 fixed : tLibraryLoad throw warning while using context variables
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105070 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 09:11:41 +00:00
wchen
931d91b98a bug TDI-25946 fixed: HL7 connection wizard is not parsing columns correctly
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105053 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 05:56:02 +00:00
jyhu
4fb075bb71 Fix Bug TDI-26209: tNetezzaInput and tNetezzaOutput could not work with TIME type.
https://jira.talendforge.org/browse/TDI-26209 
Merge into branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105052 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 05:54:21 +00:00
jzhao
ae39a55e08 Fixed Bug TDI-26504: tMDMOutput component : Reject link does not work
https://jira.talendforge.org/browse/TDI-26504 
Note:Merge to branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105045 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 03:37:25 +00:00
jjzhou
0596016727 fix Bug TDI-26533: Unable to spool multiple bulk batches using tSalesforceInput / Bulk API
https://jira.talendforge.org/browse/TDI-26533

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105040 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 03:11:32 +00:00
jzhao
ffd46f920f Fixed Bug TDI-26572: Make tFileOutputPositionnal work like tFileOutputDelimited
https://jira.talendforge.org/browse/TDI-26572 
Note:merge to branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105032 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 02:37:21 +00:00
fwang
690d742025 bug TDI-26417 fixed:Studio adds hyphens to Java options
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105028 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-09 01:44:37 +00:00
ycbai
aebbb564f2 bug TDI-26650 fixed: Export as service doesn't include items from reference project
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105018 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-08 09:28:06 +00:00
fwang
d1c55280c3 bug TDI-26551 fixed:Linked tMap output expressions replaced when selecting repository schema
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105011 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-08 08:23:58 +00:00
jzhao
9c22cb11b6 Fixed Bug TDI-26440: tSalesforceInput : using variable name for Custom Module is not working
https://jira.talendforge.org/browse/TDI-26440 
Note: 1.Modify not customer model error.
2.Optimized the migration task.

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105006 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-08 07:27:15 +00:00
jyhu
98d1b7a904 Fix Bug TDI-26521: DB components does nothing if no schema defined
https://jira.talendforge.org/browse/TDI-26521 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@105004 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-08 07:24:28 +00:00
ycbai
568a262627 bug TDI-26575 fixed: Reference Project:Delect assignment job in BM , BM become to dirty
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104974 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-05 10:18:22 +00:00
jjzhou
39ab7686b9 fix Bug TDI-26539: For tNetezzaNzload component,it only create connection ,but no close connection.
https://jira.talendforge.org/browse/TDI-26539

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104948 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-05 08:22:54 +00:00
jjzhou
876959ae12 fix Bug TDI-26539: For tNetezzaNzload component,it only create connection ,but no close connection.
https://jira.talendforge.org/browse/TDI-26539

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104946 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-05 08:15:42 +00:00
zwzhao
90275b296d bug TDI-26550 fixed : MSSQLInput component compilation error : the method tMSSqlInput_4Process(Map<String,Object>) is undefined
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104943 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-05 07:26:46 +00:00
jjzhou
bf8934b40a fix Bug TDI-26525: tDBInput didn't support the HyperFileSQL
https://jira.talendforge.org/browse/TDI-26525

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104911 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-04 10:30:46 +00:00
ycbai
e35cdbb279 bug TDI-26530 fixed: when changing the structure of the input flow into a SCD component (in our case postgres SCD) it gives a java compilation error
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104893 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-04 07:40:35 +00:00
fwang
a65b2affb8 bug TDI-23525 fixed:Deleted "Stored Queries" in SQL Builder, it will be deleted forever
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104885 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-04 06:27:15 +00:00
fwang
6fe0f1a7cb bug TDI-26551 fixed:Linked tMap output expressions replaced when selecting repository schema
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104822 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-03 01:28:43 +00:00
zwzhao
d5806df81d bug TDI-26567 fixed : switch between jobscript and designer cause records in "Inline table" in "tFixedFlowInput" component disappear
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104812 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-02 10:21:40 +00:00
fwang
4afeff8adf bug TDI-26312 fixed:"+" should be disabled if rootTag is not selected
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104781 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-02 03:34:09 +00:00
zgao
eeb97c2af8 [TESB-9100] bug in cTimer on Delay parameter
└[TESB-10228] Fix on branch 5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104764 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-01 09:41:28 +00:00
ldong
513df73b07 bug TDI-26472 fixed:many popups shown when you link a component to joblet.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104760 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-01 09:37:32 +00:00
jjzhou
8ff7087cb7 fix Bug TDI-26520: For DB component, some have table list button ,but some doesn't have.
https://jira.talendforge.org/browse/TDI-26520 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104730 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-01 07:04:45 +00:00
zwzhao
a7efce3a94 bug TDI-26434 fixed : Expressions copied from other tMaps when schemas propagated
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104729 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-07-01 07:04:02 +00:00
jjzhou
d92c155434 fix Bug TDI-26523: Could not show table list and open sql builder from component setting of tTeradataTPump,
https://jira.talendforge.org/browse/TDI-26523

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104629 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-28 06:50:47 +00:00
zwzhao
ad409f5a66 bug TDI-25956 fixed : the expression is incorrect after copy&paste job contain tMap
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104602 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-27 09:55:40 +00:00
hcyi
761ecb4fb5 merge r104585 from trunk to branch 5.3
bug TDI-24919 fixed : replication order incorrect with cdc mysql .


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104586 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-27 06:02:41 +00:00
zwzhao
f7cde6d12c bug TDI-25956 fixed : the expression is incorrect after copy&paste job contain tMap (revert #104186)
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104550 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-26 09:02:22 +00:00
zwzhao
706fd67f7d bug TDI-26055 fixed : can not change the Join Model in tMap if you set the join manually
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104541 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-26 08:31:49 +00:00
plv
6bb3a9ef74 merge r104519 from trunk to branch 5.3
bug TDI-26457 fixed:"No data found" Error was shown when use the sql builder of the tDBInput for the HyperFileSQL


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104520 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-26 02:51:46 +00:00
jjzhou
5fc6bb2996 fix Bug TDI-26493: component "tFileCopy" can not delete files with a file size about 100MB or above
https://jira.talendforge.org/browse/TDI-26493

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104503 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-25 09:05:58 +00:00
fwang
5852506748 bug TDI-26458 fixed:Cancelling Edit of Row Generator Still Saves Changes
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104490 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-25 07:02:13 +00:00
ldong
689edf6476 bug TDI-26238 fixed:Set/Disable parallelization not worked for deactive line in job.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104437 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-24 08:13:08 +00:00
hcyi
1c0e651025 merge r104432 from trunk to branch 5.3
bug TDI-25662 modified : "Detect and update all jobs" doesn't work . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104434 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-24 08:11:24 +00:00
jzhao
8a1a9b0de0 Fixed Bug TDI-26471: tFileOutputExcel throw NullPointerException when output excel file (2007) doesn't exist
https://jira.talendforge.org/browse/TDI-26471

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104420 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-24 07:06:54 +00:00
jjzhou
af1da04bdf fix Bug TDI-26485: Could not show table list and open sql builder from component setting of tSybaseIQBulkExec, tMysqlBulkExec, tMysqlOutputBulkExec
https://jira.talendforge.org/browse/TDI-26485

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104417 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-24 01:22:39 +00:00
sizhaoliu
c3e81c3972 merge r104392 from trunk to branch 5.3
TDQ-7363 redundant folder when try to select parser rule for tStandardizeRow component


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104403 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 15:14:33 +00:00
sizhaoliu
0875bbedb9 merge r104390 from trunk to branch 5.3
fixed TDQ-7487 Export a second tStandardizeRow component requires to overwrite the existing rule in the repository


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104399 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 14:21:19 +00:00
jzhao
bb84837ace Fixed Bug TDI-26440: tSalesforceInput : using variable name for Custom Module is not working
https://jira.talendforge.org/browse/TDI-26440
Note: Modify break and  version about the migration task  in branch5.3

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104370 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 09:49:12 +00:00
nrousseau
f3f3eef89f merge r104359 from trunk to branch 5.3
TDI-26478 : fix the problem of folder deletion while import.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104365 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 09:38:07 +00:00
hcyi
ef5ccb82c0 merge r104349 from trunk to branch 5.3
bug TDI-25662 modified : "Detect and update all jobs" doesn't work . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104353 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 09:18:07 +00:00
plv
ff87fcb956 merge r104340 from trunk to branch 5.3
bug TDI-26432 fixed:Compile errors with tAggregateRow Component


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104347 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 08:54:23 +00:00
ggu
f2438c353d TDI-26293: fixed the path problem for importing.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104318 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 06:12:18 +00:00
plv
f27bfbeaef merge r104308 from trunk to branch 5.3
bug TDI-23537 fixed:Delete flow names can not undo properly


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104310 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 05:46:25 +00:00
plv
5f16bc105a merge r104233 from trunk to branch 5.3
bug TDI-26394 fixed:User can delete a locked connection schema in remote project


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104304 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 03:42:02 +00:00
fwang
2063762134 bug TDI-26312 fixed:"+" should be disabled if rootTag is not selected
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104294 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 03:15:23 +00:00
fwang
d7505c16a1 bug TDI-26417 fixed:Studio adds hyphens to Java options
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104286 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 03:10:35 +00:00
jzhao
3a24558d56 Fixed Bug TDI-26170: tHDFSPut component uses a deprecated library and produces warnings
https://jira.talendforge.org/browse/TDI-26170
Note: replace "fs.default.name" with "fs.defaultFS"

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104281 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 03:05:26 +00:00
plv
c9cc45c3bf merge r104094 from trunk to branch 5.3
bug TDI-25958 fixed:Newly added column for copy file schema can not be set as unused in jobs.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104277 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-21 02:54:23 +00:00
jyhu
69bf0965fd Fix Bug TDI-26463: Connection is always closed when use exist connection on tPostgresqlBulkExec
https://jira.talendforge.org/browse/TDI-26463 
fixed the same issue for tGreenplumBulkExec and tParAccelBulkExec 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104228 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 09:41:28 +00:00
plv
624dba28ae merge r103829 from branch 5.2 to branch 5.3
bug TDI-25879 fixed:Zoom options in ActionBar for MultiPageTalendEditor should be disabled if switch to code tab.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104220 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 09:09:14 +00:00
plv
fecd59404c merge r103978 from branch 5.2 to branch 5.3
bug TDI-25992 fixed:Exchange: error when add a new extenion without a "file"


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104209 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:46:44 +00:00
plv
18ea0c919d merge r103849 from branch 5.2 to branch 5.3
bug TDI-26240 fixed:Joblet in ref-project is able to change the schema in main project


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104205 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:34:04 +00:00
hcyi
a9518edb4d merge r104198 from trunk to branch 5.3
bug TUP-803 fixed : Can't clear User Component Folder in Components preferences (TUP-799) 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104201 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:28:10 +00:00
hcyi
599aa47478 merge r104195 from trunk to branch 5.3
bug TUP-804 fixed : addModifyListener for the Talend Components Designer filePath text (from main task TUP-799) 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104197 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:21:07 +00:00
plv
929f6ea81c merge r103715 from branch 5.2 to branch 5.3
bug TDI-26263 fixed:The outputs for tSAPInput can not correctly updated when we change the row name and undo it.


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104190 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:11:19 +00:00
zwzhao
6d03b5e3b7 bug TDI-25956 fixed : the expression is incorrect after copy&paste job contain tMap
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104186 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 08:01:18 +00:00
jyhu
97fe058c33 Fix Feature TDI-24990: Update calls to API for marketo components
https://jira.talendforge.org/browse/TDI-24990 
Modify the default value of Endpoint on tMarketoXXX. 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104180 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 07:33:31 +00:00
hcyi
876e5ae530 merge r104169 from trunk to branch 5.3
bug TDI-26374 :  TDI-26332 fixed : HL7: NPE error if the source file cannot be found . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104173 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 07:17:13 +00:00
hcyi
9309ec77fc merge r104160 from trunk to branch 5.3
bug TUP-805 fixed : Exception setting classpath after changing the Talend -> Components user component folder . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104166 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 07:05:08 +00:00
zwzhao
f949752660 bug TDI-26046 fixed : The Ui is blank after selecting "Talend Component Designer"
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104165 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 07:04:57 +00:00
ggu
5319765903 TDI-26293: fixed the import problem for special characters and backport on branch 5.3.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104162 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 07:02:55 +00:00
hcyi
d0f4f5576d merge r104151 from trunk to branch 5.3
bug TDI-26438  : backport TDI-26361 : Unable to drag columns from left of tMap to expression filter of output with repository schema . 


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104156 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 06:55:43 +00:00
zwzhao
f3a47d159c bug TDI-26284 fixed : Get NPE when closing a locked route in remote project.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104152 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 06:51:46 +00:00
zwzhao
ecebf55d1a bug TDI-26284 fixed : Get NPE when closing a locked route in remote project.
git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104150 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 06:51:16 +00:00
jyhu
1029975b99 Fix Bug TDI-26176: Multiple Connections from Netezza tNetezzaBulkLoad despite use of tNetezzaConnection.
https://jira.talendforge.org/browse/TDI-26176 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104135 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 06:24:42 +00:00
jyhu
51d8f6a592 Fix Bug TDI-26372: tMSSqlBulkExec does nothing if no schema defined when Action on table is set to Truncate or Default.
https://jira.talendforge.org/browse/TDI-26372 

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104122 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 05:49:57 +00:00
jzhao
3964f425eb Fixed Bug TDI-26298: Please hide parameters when use exist connection
https://jira.talendforge.org/browse/TDI-26298
Note: 1.hide some parameter
2.Fixed  "use transcation "  never commit in tInformixCDC and tInformixSCD

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104114 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 04:51:23 +00:00
wchen
104c3e489c merge r104099 from trunk to branch 5.3
bug TDI-26285 fixed: Database connection is failed when click "Guess schema" button in thiveinput


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104109 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 04:13:41 +00:00
jyhu
708a076329 Fix Bug TDI-26463: Connection is always closed when use exist connection on tPostgresqlBulkExec
https://jira.talendforge.org/browse/TDI-26463

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104105 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 03:57:57 +00:00
wchen
91cab8553f merge r104092 from trunk to branch 5.3
bug TDI-26285 fixed: Database connection is failed when click "Guess schema" button in thiveinput


git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104102 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 03:57:03 +00:00
wwang
e221a3ac2b Fix Bug TDI-26211 : Fix for tFileInputXML under SAX too
https://jira.talendforge.org/browse/TDI-26211

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104101 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 03:55:49 +00:00
jzhao
5de9d7451f Fixed Bug TDI-26440: tSalesforceInput : using variable name for Custom Module is not working
https://jira.talendforge.org/browse/TDI-26440
Note: Modify 5 tSalesForceXX and add migration task for them.

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104098 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 03:46:25 +00:00
wwang
f5c9bcf84c Fix Bug TDI-26362 : 65535 JDK limit on 64bit Java
https://jira.talendforge.org/browse/TDI-26362

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104050 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 01:46:35 +00:00
jjzhou
a1eec2a5c0 fix Bug TDI-26328: apply the patch in the TDI-25608 to trunk and branch5.3
https://jira.talendforge.org/browse/TDI-26328

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104045 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 01:12:54 +00:00
jjzhou
c9fc6c5964 fix Bug TDI-26345: tStewardshipOutput : Source/Target selector does not work properly
https://jira.talendforge.org/browse/TDI-26345

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104043 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 01:08:36 +00:00
jjzhou
99d74db820 fix Bug TDI-26388: The problem for TDI-26297 ,tOracleSCDELT 、tPostgresPlusSCDELT and tPostgresqlSCDELT components get the same problem
https://jira.talendforge.org/browse/TDI-26388

git-svn-id: http://talendforge.org/svn/tos/branches/branch-5_3@104041 f6f1c999-d317-4740-80b0-e6d1abc6f99e
2013-06-20 01:06:02 +00:00
971 changed files with 24357 additions and 16563 deletions

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -16,7 +16,7 @@
<extension point="org.eclipse.ui.perspectives">
<perspective class="org.talend.componentdesigner.ui.Perspective"
id="org.talend.componentdesigner.perspective"
name="Component's Designer">
name="Component Designer">
</perspective>
</extension>
<extension point="org.eclipse.ui.perspectiveExtensions">
@@ -99,7 +99,7 @@
<contentExtension
pattern="org.talend.componentdesigner.resourceContent" />
<contentExtension
pattern="org.eclipse.ui.navigator.resources.filters.*" />
pattern="org.talend.componentdesigner.ui.navigator.resources.filters.*" />
</includes>
</viewerContentBinding>
<viewerActionBinding
@@ -267,7 +267,7 @@
</filterExpression>
</commonFilter> -->
<commonFilter
id="org.eclipse.ui.navigator.resources.filters.nonComponentProject"
id="org.talend.componentdesigner.ui.navigator.resources.filters.nonComponentProject"
name="nonComponentProject" description="not the component project"
activeByDefault="true">
<filterExpression>

View File

@@ -260,7 +260,6 @@ public final class ComponentProjectManager {
addLibClasspathEntries(ces, "org.talend.metadata.managment"); //$NON-NLS-1$
addLibClasspathEntries(ces, "org.talend.core"); //$NON-NLS-1$
addLibClasspathEntries(ces, "org.talend.designer.codegen"); //$NON-NLS-1$
addLibClasspathEntries(ces, "org.talend.commons"); //$NON-NLS-1$
return ces;
}

View File

@@ -34,6 +34,9 @@ import org.talend.componentdesigner.i18n.internal.Messages;
import org.talend.componentdesigner.util.XSDValidator;
import org.talend.componentdesigner.util.file.FileCopy;
import org.talend.core.CorePlugin;
import org.talend.core.model.components.IComponent;
import org.talend.core.model.components.IComponentsFactory;
import org.talend.repository.model.ComponentsFactoryProvider;
/**
* DOC slanglois class global comment. Detailled comment
@@ -49,6 +52,7 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
*
* @see org.eclipse.ui.navigator.CommonActionProvider#init(org.eclipse.ui.navigator.ICommonActionExtensionSite)
*/
@Override
public void init(ICommonActionExtensionSite anExtensionSite) {
if (anExtensionSite.getViewSite() instanceof ICommonViewerWorkbenchSite) {
@@ -59,6 +63,7 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
/**
* Adds a submenu to the given menu with the name "New Component".
*/
@Override
public void fillContextMenu(IMenuManager menu) {
menu.insertBefore("group.edit", copyProjectAction); //$NON-NLS-1$
// Object obj = ((TreeSelection) this.getContext().getSelection()).getFirstElement();// need to get all
@@ -86,9 +91,10 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
/*
* (non-Javadoc) Method declared on IAction.
*/
@Override
public void run() {
String path = CorePlugin.getDefault().getComponentsLocalProviderService().getPreferenceStore().getString(
"USER_COMPONENTS_FOLDER"); //$NON-NLS-1$
String path = CorePlugin.getDefault().getComponentsLocalProviderService().getPreferenceStore()
.getString("USER_COMPONENTS_FOLDER"); //$NON-NLS-1$
if (path == null || path.length() == 0) {
new MessageDialog(
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
@@ -130,6 +136,15 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
}
}
// add for bug TDI-26719, clear image cash from EmfComponent
IComponentsFactory components = ComponentsFactoryProvider.getInstance();
List<IComponent> comList = components.getCustomComponents();
for (IComponent com : comList) {
if (com.getImageRegistry() != null) {
com.getImageRegistry().clear();
}
}
MessageDialog warningMessageDialog = new MessageDialog(
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
Messages.getString("PushToPaletteActionProvider.Information"), null, Messages.getString("PushToPaletteActionProvider.InformationMSG"), MessageDialog.INFORMATION, //$NON-NLS-1$ //$NON-NLS-2$
@@ -147,7 +162,8 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
MessageDialog warningMessageDialog = new MessageDialog(
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), Messages.getString("PushToPaletteActionProvider.PushToPaletteActionProvider.result"), null, waringInfo, //$NON-NLS-1$
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
Messages.getString("PushToPaletteActionProvider.PushToPaletteActionProvider.result"), null, waringInfo, //$NON-NLS-1$
MessageDialog.WARNING, new String[] { Messages.getString("PushToPaletteActionProvider.OK3") }, 0); //$NON-NLS-1$
warningMessageDialog.open();
@@ -162,6 +178,7 @@ public class PushToPaletteActionProvider extends CommonActionProvider {
// get the correct XML file for components
File[] list = componentFolder.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// _java.xml
String javaXmlName = dir.getName() + "_java.xml"; //$NON-NLS-1$

View File

@@ -12,11 +12,15 @@
// ============================================================================
package org.talend.componentdesigner.ui.preferencepage;
import java.io.File;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.preference.DirectoryFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.util.PropertyChangeEvent;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench;
@@ -27,8 +31,8 @@ import org.talend.componentdesigner.i18n.internal.Messages;
/**
* This class represents a preference page that is contributed to the Preferences dialog. By subclassing
* <samp>FieldEditorPreferencePage</samp>, we can use the field support built into JFace that allows us to create a
* page that is small and knows how to save, restore and apply itself.
* <samp>FieldEditorPreferencePage</samp>, we can use the field support built into JFace that allows us to create a page
* that is small and knows how to save, restore and apply itself.
* <p>
* This page is used to modify preferences only. They are stored in the preference store that belongs to the main
* plug-in class. That way, preferences can be accessed directly via the preference store.
@@ -65,23 +69,39 @@ public class ComponentProjectPreferencePage extends FieldEditorPreferencePage im
GridData gd = new GridData();
gd.horizontalSpan = 3;
l.setLayoutData(gd);
filePathTemp = new DirectoryFieldEditor(PluginConstant.PROJECT_URL, Messages
.getString("ComponentProjectPreferencePage.ComponentProject"), //$NON-NLS-1$
filePathTemp = new DirectoryFieldEditor(PluginConstant.PROJECT_URL,
Messages.getString("ComponentProjectPreferencePage.ComponentProject"), //$NON-NLS-1$
getFieldEditorParent());
addField(filePathTemp);
// addModifyListener for the filePath text
filePathTemp.getTextControl(getFieldEditorParent()).addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
String newPath = filePathTemp.getTextControl(getFieldEditorParent()).getText();
File file = new File(newPath);
if (!file.exists() && !"".equals(newPath)) {
filePathTemp.showErrorMessage();
setValid(false);
} else {
setValid(true);
}
}
});
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.preference.FieldEditorPreferencePage#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
* @see
* org.eclipse.jface.preference.FieldEditorPreferencePage#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
*/
public void propertyChange(PropertyChangeEvent event) {
super.propertyChange(event);
MessageDialog warningMessageDialog = new MessageDialog(getFieldEditorParent().getShell(), Messages
.getString("ComponentProjectPreferencePage.Warning"), null, //$NON-NLS-1$
MessageDialog warningMessageDialog = new MessageDialog(getFieldEditorParent().getShell(),
Messages.getString("ComponentProjectPreferencePage.Warning"), null, //$NON-NLS-1$
Messages.getString("ComponentProjectPreferencePage.WarningMSG"), MessageDialog.WARNING, //$NON-NLS-1$
new String[] { Messages.getString("ComponentProjectPreferencePage.ButtonLabel0") }, 0); //$NON-NLS-1$
warningMessageDialog.open();

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -79,7 +79,7 @@ public abstract class AbstractMapComponent extends MapperExternalNode {
protected boolean hasDataIntoExpression(Pattern pattern, PatternMatcher matcher, String expression) {
if (expression != null) {
if (matcher.contains(expression, pattern)) {
if (matcher.matches(expression, pattern)) {
return true;
}
}

View File

@@ -40,6 +40,10 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
private Point lastCursorPosition;
private long lastDragTime;
private boolean scrollUp = false;
public DefaultDropTargetListener(AbstractMapperManager mapperManager) {
super();
this.mapperManager = mapperManager;
@@ -53,12 +57,14 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
return mapperManager.getUiManager();
}
@Override
public void dragEnter(DropTargetEvent event) {
updatePopupPosition(event);
// updatePopupPosition(event);
setPopupVisible(true);
event.detail = mapperManager.getUiManager().getCurrentDragDetail();
}
@Override
public void dragLeave(DropTargetEvent event) {
dragFinished();
}
@@ -76,6 +82,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
draggingInfosPopup.setVisible(visible);
}
@Override
public void dragOperationChanged(DropTargetEvent event) {
updatePopupPosition(event);
detectPressedKeys(event);
@@ -124,6 +131,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
}
@Override
public void dragOver(DropTargetEvent event) {
// System.out.println(((DropTarget)event.widget).getControl());
event.detail = DND.DROP_NONE;
@@ -133,20 +141,17 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
}
private void updatePopupPosition(DropTargetEvent event) {
Point cursorPosition = new Point(event.x, event.y);
if (!cursorPosition.equals(lastCursorPosition)) {
AbstractUIManager uiManager = mapperManager.getUiManager();
DraggingInfosPopup draggingInfosPopup = uiManager.getDraggingInfosPopup();
draggingInfosPopup.setCursorPosition(event.x, event.y);
}
// System.out.println("updatePopupPosition:" + lastCursorPosition + "-->" + cursorPosition);
lastCursorPosition = cursorPosition;
}
private void autoScroll(DropTargetEvent event) {
if (lastCursorPosition == null || lastCursorPosition.y == event.y) {
return;
}
Composite currentComposite = null;
Object source = event.getSource();
if (source instanceof DropTarget) {
@@ -163,22 +168,51 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
if (parentScrolledComposite == null) {
return;
}
ScrollBar vBar = parentScrolledComposite.getVerticalBar();
int increment = event.y - lastCursorPosition.y;
if (increment > 0) {
increment = increment + 3;
} else {
increment = increment - 3;
}
Control content = parentScrolledComposite.getContent();
if (content != null) {
Point location = content.getLocation();
int vSelection = vBar.getSelection();
int increment = 0;
int thumb = vBar.getThumb();
if (lastCursorPosition == null || lastCursorPosition.y == event.y) {
long currentTimeMillis = System.currentTimeMillis();
long time = currentTimeMillis - lastDragTime;
if (lastDragTime != 0 && time > 100) {
Point pointToScrollComposite = parentScrolledComposite.toControl(event.x, event.y);
// scroll up
if (pointToScrollComposite.y < 40) {
increment = -20;
}
// scroll down
else if (thumb - pointToScrollComposite.y < 40) {
increment = 20;
} else {
return;
}
} else {
return;
}
} else {
increment = event.y - lastCursorPosition.y;
if (increment > 0) {
increment = increment + 3;
} else {
increment = increment - 3;
}
}
if (vSelection >= 0 && vSelection + increment > 0 && vSelection + increment < vBar.getMaximum()) {
vBar.setSelection(vSelection + increment);
}
content.setLocation(location.x, -vSelection);
mapperManager.getUiManager().refreshBackground(true, false);
lastDragTime = System.currentTimeMillis();
}
// Event e = new Event();
@@ -205,6 +239,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
return getParentScrolledComposite(composite.getParent());
}
@Override
public void drop(DropTargetEvent event) {
dragFinished();
}
@@ -218,6 +253,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
return getClass() != DefaultDropTargetListener.class;
}
@Override
public void dropAccept(DropTargetEvent event) {
}
@@ -227,6 +263,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
*
* @see org.eclipse.jface.util.TransferDropTargetListener#getTransfer()
*/
@Override
public Transfer getTransfer() {
return TableEntriesTransfer.getInstance();
}
@@ -236,6 +273,7 @@ public class DefaultDropTargetListener implements TransferDropTargetListener {
*
* @see org.eclipse.jface.util.TransferDropTargetListener#isEnabled(org.eclipse.swt.dnd.DropTargetEvent)
*/
@Override
public boolean isEnabled(DropTargetEvent event) {
return true;
}

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -86,8 +86,7 @@ public class CreateDiagramAction extends AContextualAction implements IIntroActi
if (nodeType == ERepositoryObjectType.BUSINESS_PROCESS) {
enabled = true;
}
if (repositoryNode.getObject() != null
&& repositoryNode.getObject().getProperty().getItem().getState().isDeleted()) {
if (repositoryNode.getObject() != null && repositoryNode.getObject().isDeleted()) {
enabled = false;
}
}

View File

@@ -82,6 +82,7 @@ import org.talend.designer.core.ui.views.jobsettings.JobSettingsView;
import org.talend.designer.core.ui.views.jobsettings.tabs.AbstractTabComposite;
import org.talend.designer.core.utils.EmfPropertyHelper;
import org.talend.designer.core.utils.KeyHelper;
import org.talend.repository.ProjectManager;
import org.talend.repository.model.IRepositoryNode;
import org.talend.repository.model.IRepositoryNode.ENodeType;
import org.talend.repository.model.IRepositoryNode.EProperties;
@@ -411,11 +412,12 @@ public class BusinessAssignmentComposite extends AbstractTabComposite {
}
}
}
if (ProjectManager.getInstance().isInCurrentMainProject(repositoryNode)) {
CorePlugin.getDefault().getDiagramModelService()
.addDeleteAssignmentAction(mgr, tableViewer.getSelection());
}
}
CorePlugin.getDefault().getDiagramModelService().addDeleteAssignmentAction(mgr, tableViewer.getSelection());
}
}
});
Menu menu = menuMgr.createContextMenu(tableViewer.getControl());

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -56,7 +56,7 @@
<page
category="org.talend.designer.codegen.components.localprovider.page1"
class="org.talend.designer.components.preference.labelformat.ComponentsFormatPreferencePage"
id="org.talend.designer.codegen.components.localprovider.page1"
id="org.talend.designer.codegen.components.localprovider.page2"
name="%format">
</page>
</extension>

View File

@@ -16,6 +16,7 @@
org.talend.core.model.metadata.types.JavaType
java.util.Map
java.util.List
java.util.ArrayList
java.util.Set
java.util.HashSet
"
@@ -37,23 +38,44 @@ boolean isRunInMultiThread = codeGenArgument.getIsRunInMultiThread();
Set<IConnection> connSet = new HashSet<IConnection>();
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MAIN));
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MERGE));
connSet.addAll(node.getOutgoingConnections(EConnectionType.FLOW_MERGE));
Set<IConnection> iterateConnSet = new HashSet<IConnection>();
iterateConnSet.addAll(node.getOutgoingConnections(EConnectionType.ITERATE));
List<IConnection> allSubProcessConnection = codeGenArgument.getAllMainSubTreeConnections();
if((codePart.equals(ECodePart.END))&&(stat)&&connSet.size()>0){
for(IConnection con:connSet){
%>
if(execStat){
runStat.updateStatOnConnection("<%=con.getUniqueName()%>"
+iterateId,2, 0);
if((codePart.equals(ECodePart.END))&&(stat)){
boolean iterateInVFComp = (node.getVirtualLinkTo() != null && node.getVirtualLinkTo() == EConnectionType.ITERATE);
if(iterateInVFComp){
List<String> needToEndConnNames = new ArrayList<String>();
INode nextNode = node.getOutgoingConnections(EConnectionType.ITERATE).get(0).getTarget();
NodeUtil.fillConnectionsForStat(needToEndConnNames, nextNode);
%>
if(execStat){
<%
for(String connName : needToEndConnNames){
%>
runStat.updateStatOnConnection("<%=connName%>"+iterateId,2, 0);
<%
}
%>
}
<%
}
if(connSet.size()>0){
for(IConnection con:connSet){
%>
if(execStat){
if(resourceMap.get("inIterateVComp") == null || !((Boolean)resourceMap.get("inIterateVComp"))){
runStat.updateStatOnConnection("<%=con.getUniqueName()%>"+iterateId,2, 0);
}
}
<%
}
}
}
<%
}
}%>
%>
<%
@@ -311,6 +333,9 @@ end_Hash.put("<%=node.getUniqueName() %>", System.currentTimeMillis());
if (!status.equals("failure")) {
status = errorThread_<%=iterateTargetNodeName %>.status;
}
if(errorThread_<%=iterateTargetNodeName %>.exception!=null){
throw errorThread_<%=iterateTargetNodeName %>.exception;
}
}else{
Integer threadErrorCode = mtp_<%=iterateTargetNodeName %>.getTalendThreadResult().getErrorCode();
String threadStatus = mtp_<%=iterateTargetNodeName %>.getTalendThreadResult().getStatus();
@@ -338,6 +363,9 @@ end_Hash.put("<%=node.getUniqueName() %>", System.currentTimeMillis());
if (!localStatus.equals("failure")) {
((java.util.Map) threadLocal.get()).put("status", errorThread_<%=iterateTargetNodeName %>.status);
}
if(errorThread_<%=iterateTargetNodeName %>.exception!=null){
throw errorThread_<%=iterateTargetNodeName %>.exception;
}
}else{
Integer threadErrorCode = mtp_<%=iterateTargetNodeName %>.getTalendThreadResult().getErrorCode();
String threadStatus = mtp_<%=iterateTargetNodeName %>.getTalendThreadResult().getStatus();

View File

@@ -8,9 +8,11 @@
org.talend.core.model.process.EConnectionType
org.talend.core.model.process.ElementParameterParser
org.talend.designer.codegen.config.CodeGeneratorArgument
org.talend.core.model.utils.NodeUtil
org.talend.core.model.process.IConnectionCategory
java.util.List
java.util.Set
java.util.ArrayList
java.util.Set
java.util.HashSet
java.util.Iterator
"
@@ -33,12 +35,12 @@
List<IConnection> allSubProcessConnection = codeGenArgument.getAllMainSubTreeConnections();
%>
/**
* [<%=node.getUniqueName() %> <%=codePart %> ] start
*/
/**
* [<%=node.getUniqueName() %> <%=codePart %> ] start
*/
<%
<%
//This part in order to feedback with the iterate_subprocess_header.javajet and iterate_subprocess_footer.javajet
if (codePart.equals(ECodePart.BEGIN)) {
@@ -47,139 +49,195 @@
for (IConnection iterateConn : iterateConnSet) {
parallelIterate = "true".equals(ElementParameterParser.getValue(iterateConn, "__ENABLE_PARALLEL__"));
if (parallelIterate) {
%>
TalendThreadPool mtp_<%=iterateConn.getTarget().getUniqueName() %> = new TalendThreadPool(<%=ElementParameterParser.getValue(iterateConn,"__NUMBER_PARALLEL__") %>);
%>
TalendThreadPool mtp_<%=iterateConn.getTarget().getUniqueName() %> = new TalendThreadPool(<%=ElementParameterParser.getValue(iterateConn,"__NUMBER_PARALLEL__") %>);
<%
if(!hasParallelIterate){
hasParallelIterate = true;
%>
<%
if(!hasParallelIterate){
hasParallelIterate = true;
%>
final Object[] lockWrite = new Object[0];
int threadIdCounter =0;
<%}%>
final Object[] lockWrite = new Object[0];
int threadIdCounter =0;
<%
}
%>
<%
<%
}
String iterateNodeName = iterateConn.getTarget().getUniqueName();
%>
%>
int NB_ITERATE_<%=iterateNodeName %> = 0; //for statistics
<%
<%
continue;
}
}
%>
%>
<%
<%
if (codePart.equals(ECodePart.BEGIN)) {
%>
<% if(trace){ %>
globalMap.put("ENABLE_TRACES_CONNECTION_<%=startNodeCid%>",Boolean.FALSE);
<% } %>
ok_Hash.put("<%=node.getUniqueName() %>", false);
start_Hash.put("<%=node.getUniqueName() %>", System.currentTimeMillis());
<%
%>
<%
if(trace){
%>
globalMap.put("ENABLE_TRACES_CONNECTION_<%=startNodeCid%>",Boolean.FALSE);
<%
}
%>
ok_Hash.put("<%=node.getUniqueName() %>", false);
start_Hash.put("<%=node.getUniqueName() %>", System.currentTimeMillis());
<%
String statCatcher = ElementParameterParser.getValue(node,"__TSTATCATCHER_STATS__");
if ((node.getProcess().getNodesOfType("tStatCatcher").size() > 0) && (statCatcher.equals("true"))) {
for (INode statCatcherNode : node.getProcess().getNodesOfType("tStatCatcher")) {
%>
<%=statCatcherNode.getUniqueName() %>.addMessage("begin","<%=node.getUniqueName() %>");
<%=statCatcherNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
%>
<%=statCatcherNode.getUniqueName() %>.addMessage("begin","<%=node.getUniqueName() %>");
<%=statCatcherNode.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
}
}
}
if(codePart.equals(ECodePart.MAIN)) {
List<INode> meterCatchers = (List<INode>)node.getProcess().getNodesOfType("tFlowMeterCatcher");
if ((node.getProcess().getNodesOfType("tFlowMeter").size() > 0))
{
for(IConnection temp_conn : node.getIncomingConnections(EConnectionType.FLOW_MAIN))
{
if ((node.getProcess().getNodesOfType("tFlowMeter").size() > 0)){
for(IConnection temp_conn : node.getIncomingConnections(EConnectionType.FLOW_MAIN)){
String name_conn = temp_conn.getUniqueName();
if(temp_conn.isUseByMetter())
{
%>
<%
if (meterCatchers != null) {
for (INode meterCatcher : meterCatchers) {
%>
<%=meterCatcher.getUniqueName() %>.addLineToRow("<%=name_conn%>_count");
<%
}
}
%>
<%
if(temp_conn.isUseByMetter()){
%>
<%
if (meterCatchers != null) {
for (INode meterCatcher : meterCatchers) {
%>
<%=meterCatcher.getUniqueName() %>.addLineToRow("<%=name_conn%>_count");
<%
}
}
}
}
for(IConnection temp_conn : node.getIncomingConnections(EConnectionType.FLOW_MERGE))
{
for(IConnection temp_conn : node.getIncomingConnections(EConnectionType.FLOW_MERGE)){
String name_conn = temp_conn.getUniqueName();
if(name_conn == incomingName && temp_conn.isUseByMetter())
{
%>
<%
if (meterCatchers != null) {
for (INode meterCatcher : meterCatchers) {
%>
<%=meterCatcher.getUniqueName() %>.addLineToRow("<%=name_conn%>_count");
<%
}
}
%>
<%
if(name_conn == incomingName && temp_conn.isUseByMetter()){
if (meterCatchers != null) {
for (INode meterCatcher : meterCatchers) {
%>
<%=meterCatcher.getUniqueName() %>.addLineToRow("<%=name_conn%>_count");
<%
}
}
}
}
}
}
%>
currentComponent="<%=node.getUniqueName() %>";
%>
<%
if(node.isVirtualGenerateNode()){
%>
currentVirtualComponent = "<%=NodeUtil.getVirtualUniqueName(node)%>";
<%
}
%>
currentComponent="<%=node.getUniqueName() %>";
<%
<%
connSet = new HashSet<IConnection>();
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MAIN));
connSet.addAll(node.getIncomingConnections(EConnectionType.FLOW_MERGE));
connSet.addAll(node.getOutgoingConnections(EConnectionType.FLOW_MERGE));
if ((codePart.equals(ECodePart.BEGIN))&&(stat)&&connSet.size()>0) {
for(IConnection con:connSet){
%>
%>
if (execStat) {
if(resourceMap.get("inIterateVComp") == null){
java.util.concurrent.ConcurrentHashMap<Object, Object> concurrentHashMap_<%=con.getUniqueName() %> = (java.util.concurrent.ConcurrentHashMap) globalMap.get("concurrentHashMap");
concurrentHashMap_<%=con.getUniqueName() %>.putIfAbsent("<%=con.getUniqueName() %>" + iterateLoop,new java.util.concurrent.atomic.AtomicInteger(0));
java.util.concurrent.atomic.AtomicInteger stats_<%=con.getUniqueName() %> = (java.util.concurrent.atomic.AtomicInteger) concurrentHashMap_<%=con.getUniqueName() %>.get("<%=con.getUniqueName() %>" + iterateLoop);
runStat.updateStatOnConnection("<%=con.getUniqueName() %>" + iterateId, stats_<%=con.getUniqueName() %>.incrementAndGet()<=1?0:1, 0);
}
}
if (execStat) {
java.util.concurrent.ConcurrentHashMap<Object, Object> concurrentHashMap_<%=con.getUniqueName() %> = (java.util.concurrent.ConcurrentHashMap) globalMap.get("concurrentHashMap");
concurrentHashMap_<%=con.getUniqueName() %>.putIfAbsent("<%=con.getUniqueName() %>" + iterateLoop,new java.util.concurrent.atomic.AtomicInteger(0));
java.util.concurrent.atomic.AtomicInteger stats_<%=con.getUniqueName() %> = (java.util.concurrent.atomic.AtomicInteger) concurrentHashMap_<%=con.getUniqueName() %>.get("<%=con.getUniqueName() %>" + iterateLoop);
runStat.updateStatOnConnection("<%=con.getUniqueName() %>" + iterateId, stats_<%=con.getUniqueName() %>.incrementAndGet()<=1?0:1, 0);
}
<% }
<%
}
}
if((codePart.equals(ECodePart.MAIN))&&(stat)&&connSet.size()>0){
for(IConnection con:connSet){
%>
%>
//<%=con.getUniqueName()%>
//<%=(String)codeGenArgument.getIncomingName()%>
//<%=con.getUniqueName()%>
//<%=(String)codeGenArgument.getIncomingName()%>
<%if (!node.getComponent().useMerge()) {%>
if(execStat){
runStat.updateStatOnConnection("<%=con.getUniqueName() %>"+iterateId,1, 1);
}
<%
} else if(con.getUniqueName().equals((String)codeGenArgument.getIncomingName())){
%>
if(execStat){
runStat.updateStatOnConnection("<%=con.getUniqueName() %>"+iterateId,1, 1);
}
<%}%>
<%if (!node.getComponent().useMerge()) {%>
if(execStat){
runStat.updateStatOnConnection("<%=con.getUniqueName() %>"+iterateId,1, 1);
}
<%
} else if(con.getUniqueName().equals((String)codeGenArgument.getIncomingName())){
%>
if(execStat){
runStat.updateStatOnConnection("<%=con.getUniqueName() %>"+iterateId,1, 1);
}
<%}%>
<%
<%
}
}
%>
%>
<%if(codePart.equals(ECodePart.BEGIN)){ %>
int tos_count_<%=node.getUniqueName() %> = 0;
<%}%>
<%
if(codePart.equals(ECodePart.BEGIN)){
%>
int tos_count_<%=node.getUniqueName() %> = 0;
<%
}
if(stat){
boolean iterateInVFComp = (node.getVirtualLinkTo() != null && node.getVirtualLinkTo() == EConnectionType.ITERATE);
if(iterateInVFComp){
if(codePart.equals(ECodePart.BEGIN)){
List<String> needToStartConnNames = new ArrayList<String>();
INode nextNode = node.getOutgoingConnections(EConnectionType.ITERATE).get(0).getTarget();
NodeUtil.fillConnectionsForStat(needToStartConnNames, nextNode);
%>
if(execStat){
<%
for(String connName : needToStartConnNames){
%>
java.util.concurrent.ConcurrentHashMap<Object, Object> concurrentHashMap_<%=connName%> = (java.util.concurrent.ConcurrentHashMap) globalMap.get("concurrentHashMap");
concurrentHashMap_<%=connName%>.putIfAbsent("<%=connName%>" + iterateLoop,new java.util.concurrent.atomic.AtomicInteger(0));
java.util.concurrent.atomic.AtomicInteger stats_<%=connName%> = (java.util.concurrent.atomic.AtomicInteger) concurrentHashMap_<%=connName%>.get("<%=connName%>" + iterateLoop);
runStat.updateStatOnConnection("<%=connName%>" + iterateId, stats_<%=connName%>.incrementAndGet()<=1?0:1, 0);
<%
}
%>
}
<%
}else if(codePart.equals(ECodePart.MAIN)){
%>
resourceMap.put("inIterateVComp", true);
<%
}else if(codePart.equals(ECodePart.END)){
%>
resourceMap.remove("inIterateVComp");
<%
}
}else{
IConnection preIterate = (node.getIncomingConnections(EConnectionType.ITERATE) != null && node.getIncomingConnections(EConnectionType.ITERATE).size() == 1) ? node.getIncomingConnections(EConnectionType.ITERATE).get(0) : null;
if(preIterate != null){
boolean iterateInVSComp = (preIterate.getSource().getVirtualLinkTo() != null && preIterate.getSource().getVirtualLinkTo() == EConnectionType.ITERATE);
if(iterateInVSComp){
if(codePart.equals(ECodePart.BEGIN)){
%>
resourceMap.remove("inIterateVComp");
<%
}else if(codePart.equals(ECodePart.END)){
%>
resourceMap.put("inIterateVComp", true);
<%
}
}
}
}
}
%>

View File

@@ -35,9 +35,10 @@ public class CLASS
// toReturn += failure_singleThread;
// }
toReturn += "globalMap.put(\""+rootNode.getUniqueName()+ "_SUBPROCESS_STATE\", -1);\n";
toReturn += "\ne_" + rootNode.getUniqueName() + ".printStackTrace();\n";
toReturn += "globalMap.put(\""+rootNode.getUniqueName()+ "_SUBPROCESS_STATE\", -1);\n";
//List< ? extends IConnection> onSubJobErrorConns = rootNode.getOutgoingConnections(EConnectionType.ON_SUBJOB_ERROR);
//if(onSubJobErrorConns!=null){
@@ -47,8 +48,8 @@ public class CLASS
//}
if(isMultiThread){
toReturn += "\n}catch (Error e_" + rootNode.getUniqueName() + ") {\n";
toReturn += "\ne_" + rootNode.getUniqueName() + ".printStackTrace();\n";
toReturn += "globalMap.put(\""+rootNode.getUniqueName()+ "_SUBPROCESS_STATE\", -1);\n";
toReturn += "\ne_" + rootNode.getUniqueName() + ".printStackTrace();\n";
}
toReturn += "\n}";
return toReturn;

View File

@@ -260,23 +260,38 @@ public <%=JavaTypesManager.getTypeToGenerate(ctxParam.getType(),true)%> get<%=Ch
private final String projectName = "<%=codeGenArgument.getCurrentProjectName() %>";
public Integer errorCode = null;
private String currentComponent = "";
<%
if(!isRunInMultiThread ){
%>
private final java.util.Map<String, Long> start_Hash = new java.util.HashMap<String, Long>();
private final java.util.Map<String, Long> end_Hash = new java.util.HashMap<String, Long>();
private final java.util.Map<String, Boolean> ok_Hash = new java.util.HashMap<String, Boolean>();
private final java.util.Map<String, Object> globalMap = new java.util.HashMap<String, Object>();
public final java.util.List<String[]> globalBuffer = new java.util.ArrayList<String[]>();
<%
} else {
%>
private final java.util.Map<String, Long> start_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Long>());
private final java.util.Map<String, Long> end_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Long>());
private final java.util.Map<String, Boolean> ok_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Boolean>());
private final java.util.Map<String, Object> globalMap = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Object>());
public final java.util.List<String[]> globalBuffer = java.util.Collections.synchronizedList(new java.util.ArrayList<String[]>());
<% } %>
<%
//tParallelize will wrap globalMap with synchronizedMap
if(!isRunInMultiThread){
%>
private final java.util.Map<String, Object> globalMap = new java.util.HashMap<String, Object>();
<%
}else{
%>
private final java.util.Map<String, Object> globalMap = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Object>());
<%
}
boolean exist_tParallelize = false;
List<? extends INode> tParallelizeList = process.getNodesOfType("tParallelize");
if(tParallelizeList != null && tParallelizeList.size() > 0){
exist_tParallelize = true;
}
if(!isRunInMultiThread && !exist_tParallelize){
%>
private final java.util.Map<String, Long> start_Hash = new java.util.HashMap<String, Long>();
private final java.util.Map<String, Long> end_Hash = new java.util.HashMap<String, Long>();
private final java.util.Map<String, Boolean> ok_Hash = new java.util.HashMap<String, Boolean>();
public final java.util.List<String[]> globalBuffer = new java.util.ArrayList<String[]>();
<%
}else{
%>
private final java.util.Map<String, Long> start_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Long>());
private final java.util.Map<String, Long> end_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Long>());
private final java.util.Map<String, Boolean> ok_Hash = java.util.Collections.synchronizedMap(new java.util.HashMap<String, Boolean>());
public final java.util.List<String[]> globalBuffer = java.util.Collections.synchronizedList(new java.util.ArrayList<String[]>());
<%
}
%>
<%
if (stats) {
@@ -359,6 +374,11 @@ private class TalendException extends java.lang.Exception {
private java.util.Map<String, Object> globalMap = null;
private java.lang.Exception e = null;
private String currentComponent = null;
private String virtualComponentName = null;
public void setVirtualComponentName (String virtualComponentName){
this.virtualComponentName = virtualComponentName;
}
private TalendException(java.lang.Exception e, String errorComponent, final java.util.Map<String, Object> globalMap) {
this.currentComponent= errorComponent;
@@ -374,10 +394,32 @@ private class TalendException extends java.lang.Exception {
return this.currentComponent;
}
<%//For TDI-27789%>
public String getExceptionCauseMessage(java.lang.Exception e){
Throwable cause = e;
String message = null;
int i = 10;
while (null != cause && 0 < i--) {
message = cause.getMessage();
if (null == message) {
cause = cause.getCause();
} else {
break;
}
}
if (null == message) {
message = e.getClass().getName();
}
return message;
}
@Override
public void printStackTrace() {
if (!(e instanceof TalendException || e instanceof TDieException)) {
globalMap.put(currentComponent+"_ERROR_MESSAGE",e.getMessage());
if(virtualComponentName!=null && currentComponent.indexOf(virtualComponentName+"_")==0){
globalMap.put(virtualComponentName+"_ERROR_MESSAGE",getExceptionCauseMessage(e));
}
globalMap.put(currentComponent+"_ERROR_MESSAGE",getExceptionCauseMessage(e));
System.err.println("Exception in component " + currentComponent);
}
if (!(e instanceof TDieException)) {

View File

@@ -297,7 +297,7 @@ for (INode node : graphicalNodes) {
}
}
String delay = ElementParameterParser.getValue(node, "__DELAY__");
if(delay!=null && !delay.trim().equals("") && !"1000".equals(delay)){
if(delay!=null && !delay.trim().equals("")){
if(sb.length()==0){
sb.append("+\"?delay=\"+");
sb.append(delay);

View File

@@ -12,16 +12,20 @@
org.talend.designer.codegen.config.NodesSubTree
org.talend.core.model.utils.NodeUtil
java.util.List
java.util.Set
java.util.Set
java.util.HashSet
java.util.Iterator
java.util.Vector
"
class="IterateSubProcessFooter"
skeleton="subprocess_header_java.skeleton"
%>
<%
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
INode node = (INode)codeGenArgument.getArgument();
Vector v = (Vector) codeGenArgument.getArgument();
INode node = (INode) v.get(0);
String finallyPart = v.get(1).toString();
ECodePart codePart = codeGenArgument.getCodePart();
//boolean trace = codeGenArgument.isTrace();
boolean stat = codeGenArgument.isStatistics();
@@ -51,57 +55,81 @@
schemaInstanceDeclaration = "," + schemaInstanceDeclaration.substring(0,schemaInstanceDeclaration.length()-1);
}
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>",2,"exec"+iterateId);
}
<%
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>",2,"exec"+iterateId);
}
<%
}
%>
} catch (java.lang.Exception e) {
this.status = "failure";
Integer localErrorCode = (Integer) (((java.util.Map) threadLocal.get()).get("errorCode"));
if (localErrorCode != null) {
if (this.errorCode == null || localErrorCode.compareTo(this.errorCode) > 0) {
this.errorCode = localErrorCode;
}
}
talendThreadPool.setErrorThread(this);
talendThreadPool.stopAllWorkers();
new TalendException(e, currentComponent, globalMap).printStackTrace();
}
this.isRunning = false;
Integer localErrorCode = (Integer) (((java.util.Map) threadLocal.get()).get("errorCode"));
String localStatus = (String) (((java.util.Map) threadLocal.get()).get("status"));
if (localErrorCode != null) {
if (this.errorCode == null || localErrorCode.compareTo(this.errorCode) > 0) {
this.errorCode = localErrorCode;
}
}
if (!this.status.equals("failure")) {
this.status = localStatus;
}
talendThreadPool.getTalendThreadResult().setErrorCode(this.errorCode);
talendThreadPool.getTalendThreadResult().setStatus(this.status);
}
}
<%=node.getUniqueName() %>Thread bt_<%=node.getUniqueName() %> = new <%=node.getUniqueName() %>Thread(globalMap<%=schemaInstanceDeclaration %>,threadIdCounter++);
mtp_<%=node.getUniqueName() %>.execute(bt_<%=node.getUniqueName() %>);
%>
} catch (java.lang.Exception e) {
this.status = "failure";
Integer localErrorCode = (Integer) (((java.util.Map) threadLocal.get()).get("errorCode"));
if (localErrorCode != null) {
if (this.errorCode == null || localErrorCode.compareTo(this.errorCode) > 0) {
this.errorCode = localErrorCode;
}
}
TalendException te = new TalendException(e, currentComponent, globalMap);
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>
te.setVirtualComponentName(currentVirtualComponent);
<%
}
%>
this.exception = te;
talendThreadPool.setErrorThread(this);
talendThreadPool.stopAllWorkers();
<%
} finally {
try{
<%=finallyPart%>
}catch(java.lang.Exception e){
//ignore
}catch(java.lang.Error error){
//ignore
}
resourceMap = null;
}
this.isRunning = false;
Integer localErrorCode = (Integer) (((java.util.Map) threadLocal.get()).get("errorCode"));
String localStatus = (String) (((java.util.Map) threadLocal.get()).get("status"));
if (localErrorCode != null) {
if (this.errorCode == null || localErrorCode.compareTo(this.errorCode) > 0) {
this.errorCode = localErrorCode;
}
}
if (!this.status.equals("failure")) {
this.status = localStatus;
}
talendThreadPool.getTalendThreadResult().setErrorCode(this.errorCode);
talendThreadPool.getTalendThreadResult().setStatus(this.status);
}
}
<%=node.getUniqueName() %>Thread bt_<%=node.getUniqueName() %> = new <%=node.getUniqueName() %>Thread(globalMap<%=schemaInstanceDeclaration %>,threadIdCounter++);
mtp_<%=node.getUniqueName() %>.execute(bt_<%=node.getUniqueName() %>);
<%
continue;
}else {//3
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>", 2, "exec" + NB_ITERATE_<%=iterateNodeName %>);
}
<%
if(node.getDesignSubjobStartNode().getComponent().getName().equals("tCollector")){
%>
if(execStat){
runStat.updateStatOnIterate("<%=iterateConn.getUniqueName() %>", RunStat.END);
}
<%
}else{%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>", 2, "exec" + NB_ITERATE_<%=iterateNodeName %>);
}
<%
}
}
}//3
}//2

View File

@@ -50,12 +50,10 @@ params = process.getContextManager().getDefaultContext().getContextParameterList
List<IConnection> allSubProcessConnection = codeGenArgument.getAllMainSubTreeConnections();
boolean parallelIterate = false;
for (IConnection iterateConn : iterateConnSet) { //1
%>
NB_ITERATE_<%=iterateNodeName %>++;
iterateLoop++;
<%
<%
parallelIterate = "true".equals(ElementParameterParser.getValue(iterateConn, "__ENABLE_PARALLEL__"));
if (parallelIterate) {//2
if (codePart.equals(ECodePart.BEGIN)) {//3
@@ -64,156 +62,176 @@ for (IConnection iterateConn : iterateConnSet) { //1
rowList += conn.getUniqueName()+"Struct "+conn.getUniqueName()+",";
}
rowList = rowList.substring(0, rowList.length()-1);
%>
class <%=node.getUniqueName() %>Thread extends TalendThread {//implements routines.system.TalendThreadPool.PropertySettable
%>
class <%=node.getUniqueName() %>Thread extends TalendThread {//implements routines.system.TalendThreadPool.PropertySettable
class ThreadedMap extends java.util.HashMap<String, Object> {
class ThreadedMap extends java.util.HashMap<String, Object> {
private static final long serialVersionUID = 0L;
public ThreadedMap(java.util.Map<String, Object> globalMap) {
super(globalMap);
}
@Override
public Object put(String key, Object value) {
<%if(!isRunInMultiThread){%>
synchronized (<%=process.getName()%>.this.obj) {
<%}%>
super.put(key, value);
return <%=process.getName()%>.this.globalMap.put(key, value);
<%if(!isRunInMultiThread){%>
}
<%}%>
}
}
<% if(isRunJob) {%>
private final ContextProperties localContext = new ContextProperties();
<% } %>
private java.util.Map<String, Object> globalMap = null;
boolean isRunning = false;
String iterateId = "";
int iterateLoop = 0;
<%
if(!subTree.isMergeSubTree()) {
List< ? extends IConnection> rootConns = subTree.getRootNode().getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(subTree.getRootNode(), rootConns.get(0).getName(), false)%>
<%
}
} else {
List<INode> sortedMergeBranchStarts = subTree.getSortedMergeBranchStarts();
for (INode startNode : sortedMergeBranchStarts) {
List< ? extends IConnection> rootConns = startNode.getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(startNode, rootConns.get(0).getName(), false)%>
<%
private static final long serialVersionUID = 0L;
public ThreadedMap(java.util.Map<String, Object> globalMap) {
super(globalMap);
}
@Override
public Object put(String key, Object value) {
<%if(!isRunInMultiThread){%>
synchronized (<%=process.getName()%>.this.obj) {
<%}%>
super.put(key, value);
return <%=process.getName()%>.this.globalMap.put(key, value);
<%if(!isRunInMultiThread){%>
}
<%}%>
}
}
<% if(isRunJob) {%>
private final ContextProperties localContext = new ContextProperties();
<% } %>
private java.util.Map<String, Object> globalMap = null;
boolean isRunning = false;
String iterateId = "";
int iterateLoop = 0;
<%
if(!subTree.isMergeSubTree()) {
List< ? extends IConnection> rootConns = subTree.getRootNode().getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(subTree.getRootNode(), rootConns.get(0).getName(), false)%>
<%
}
} else {
List<INode> sortedMergeBranchStarts = subTree.getSortedMergeBranchStarts();
for (INode startNode : sortedMergeBranchStarts) {
List< ? extends IConnection> rootConns = startNode.getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(startNode, rootConns.get(0).getName(), false)%>
<%
}
}
List< ? extends IConnection> rootConns = subTree.getMergeNode().getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(subTree.getMergeNode(), rootConns.get(0).getName(), false)%>
<%
}
}
List< ? extends IConnection> rootConns = subTree.getMergeNode().getOutgoingConnections();
if ((rootConns!=null)&&(rootConns.size()>0)) {
%>
<%=createPrivateClassInstance(subTree.getMergeNode(), rootConns.get(0).getName(), false)%>
<%
}
}
String schemaInstanceDeclaration = createPriveClassMethodDeclaration(subTree.getRootNode(), subTree.getRootNode().getOutgoingConnections().get(0).getName(), false, new java.util.HashSet<String>());
if (schemaInstanceDeclaration.length()>0) {
schemaInstanceDeclaration = "," + schemaInstanceDeclaration.substring(0,schemaInstanceDeclaration.length()-1);
}
%>
String schemaInstanceDeclaration = createPriveClassMethodDeclaration(subTree.getRootNode(), subTree.getRootNode().getOutgoingConnections().get(0).getName(), false, new java.util.HashSet<String>());
if (schemaInstanceDeclaration.length()>0) {
schemaInstanceDeclaration = "," + schemaInstanceDeclaration.substring(0,schemaInstanceDeclaration.length()-1);
}
%>
public <%=node.getUniqueName() %>Thread(java.util.Map<String, Object> globalMap<%=schemaInstanceDeclaration %>, int threadID) {
super();
<%
for (IConnection connection : allSubProcessConnection) {
IMetadataTable table = connection.getMetadataTable();
%>
if(<%= connection.getName() %> != null){
<%
List<IMetadataColumn> listColumns = table.getListColumns();
for (IMetadataColumn column : listColumns) {
%>this.<%= connection.getName() %>.<%= column.getLabel() %> = <%= connection.getName() %>.<%= column.getLabel() %>;
<%
}
%>
}
<%
}
%>
<%
// if codeGenArgument.getIsRunInMultiThread() is true, the job.this.globalMap will wrapped with synchronizedMap, use synchronized(job.this.globalMap) when use globalMap.keySet().iterator()
// when codeGenArgument.getIsRunInMultiThread() is false, the job.this.globalMap is HashMap, use synchronized(job.this.object) when do the job.this.globalMap.put() operation(tMap,tIterateToFlow).
if(isRunInMultiThread){%>
synchronized (globalMap) {
this.globalMap = java.util.Collections.synchronizedMap(new ThreadedMap(globalMap));
<%}else{%>
synchronized (<%=process.getName()%>.this.obj) {
this.globalMap = new ThreadedMap(globalMap);
<%}%>
public <%=node.getUniqueName() %>Thread(java.util.Map<String, Object> globalMap<%=schemaInstanceDeclaration %>, int threadID) {
super();
<%
for (IConnection connection : allSubProcessConnection) {
IMetadataTable table = connection.getMetadataTable();
%>
if(<%= connection.getName() %> != null){
<%
List<IMetadataColumn> listColumns = table.getListColumns();
for (IMetadataColumn column : listColumns) {
%>
this.<%= connection.getName() %>.<%= column.getLabel() %> = <%= connection.getName() %>.<%= column.getLabel() %>;
<%
}
%>
}
<%
}
%>
<%
// if codeGenArgument.getIsRunInMultiThread() is true, the job.this.globalMap will wrapped with synchronizedMap, use synchronized(job.this.globalMap) when use globalMap.keySet().iterator()
// when codeGenArgument.getIsRunInMultiThread() is false, the job.this.globalMap is HashMap, use synchronized(job.this.object) when do the job.this.globalMap.put() operation(tMap,tIterateToFlow).
if(isRunInMultiThread){%>
synchronized (globalMap) {
this.globalMap = java.util.Collections.synchronizedMap(new ThreadedMap(globalMap));
<%}else{%>
synchronized (<%=process.getName()%>.this.obj) {
this.globalMap = new ThreadedMap(globalMap);
<%}%>
}
iterateId = "." + threadID;
iterateLoop++;
<%if(isRunJob) {%>
//bug21906 copy context to local for mutilthread
context.synchronizeContext();
java.util.Enumeration<?> propertyNames = context.propertyNames();
while(propertyNames.hasMoreElements()) {
String propertyName = (String)propertyNames.nextElement();
String propertyValue = context.getProperty(propertyName);
localContext.setProperty(propertyName, propertyValue);
}
<% for (IContextParameter ctxParam : params){%>
localContext.<%=ctxParam.getName()%> = context.<%=ctxParam.getName()%>;
<%
}
}
%>
}
iterateId = "." + threadID;
iterateLoop++;
<%if(isRunJob) {%>
//bug21906 copy context to local for mutilthread
context.synchronizeContext();
java.util.Enumeration<?> propertyNames = context.propertyNames();
while(propertyNames.hasMoreElements()) {
String propertyName = (String)propertyNames.nextElement();
String propertyValue = context.getProperty(propertyName);
localContext.setProperty(propertyName, propertyValue);
}
<% for (IContextParameter ctxParam : params){%>
localContext.<%=ctxParam.getName()%> = context.<%=ctxParam.getName()%>;
<% } %>
<% } %>
}
public void run() {
java.util.Map threadRunResultMap = new java.util.HashMap();
threadRunResultMap.put("errorCode", null);
threadRunResultMap.put("status", "");
threadLocal.set(threadRunResultMap);
this.isRunning = true;
String currentComponent = "";
try {
<%
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>",0,"exec"+iterateId);
}
<%
}
}//3
continue;
}else {//2
if(stat){
%>
<%
public void run() {
java.util.Map threadRunResultMap = new java.util.HashMap();
threadRunResultMap.put("errorCode", null);
threadRunResultMap.put("status", "");
threadLocal.set(threadRunResultMap);
this.isRunning = true;
String currentComponent = "";
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>
String currentVirtualComponent = null;
<%
}
%>
try {
<%
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>",0,"exec"+iterateId);
}
<%
}
}//3
continue;
}else {//2
if(stat){
//iterateConn.getSource().getVirtualLinkTo() only works on the first component of a virtual component, if it works for the second one, the code should change
boolean iterateInVComp = iterateConn.getSource().getVirtualLinkTo() != null && iterateConn.getSource().getVirtualLinkTo() == EConnectionType.ITERATE;
if(!iterateInVComp){
Set<? extends IConnection> allInLineJobConns = NodeUtil.getAllInLineJobConnections(iterateConn.getTarget());
for (IConnection inLineConn : allInLineJobConns) {
%>
if(execStat){
runStat.updateStatOnConnection("<%=inLineConn.getUniqueName() %>", 3, 0);
}
<%
%>
if(execStat){
runStat.updateStatOnConnection("<%=inLineConn.getUniqueName() %>", 3, 0);
}
<%
}
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>", 1, "exec" + NB_ITERATE_<%=iterateNodeName %>);
//Thread.sleep(1000);
}
<%
}
}//2
}//1
}
if(node.getDesignSubjobStartNode().getComponent().getName().equals("tCollector")){
%>
if(execStat){
runStat.updateStatOnIterate("<%=iterateConn.getUniqueName() %>", RunStat.RUNNING);
}
<%
}else{
%>
if(execStat){
runStat.updateStatOnConnection("<%=iterateConn.getUniqueName() %>", 1, "exec" + NB_ITERATE_<%=iterateNodeName %>);
//Thread.sleep(1000);
}
<%
}
}
}//2
}//1
%>

View File

@@ -10,21 +10,24 @@
org.talend.core.model.process.ElementParameterParser
java.util.List
java.util.Iterator
java.util.Vector
org.talend.core.model.utils.NodeUtil
"
class="SubProcessFooter"
%>
<%
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
Vector v = (Vector) codeGenArgument.getArgument();
NodesSubTree subTree = (NodesSubTree) v.get(0);
String finallyPart = v.get(1).toString();
boolean stat = codeGenArgument.isStatistics();
NodesSubTree subTree = (NodesSubTree) codeGenArgument.getArgument();
for (INode node : subTree.getNodes()) {
for(INode node : subTree.getNodes()){
List<IMetadataTable> metadatas = node.getMetadataList();
List< ? extends IConnection> conns = node.getOutgoingConnections();
}
boolean isParallelize = false;
for (INode node : subTree.getNodes()) {
for(INode node : subTree.getNodes()){
if(node!=null){
String parallelize = ElementParameterParser.getValue(node, "__PARALLELIZE__");
if(parallelize!=null &&parallelize.equals("true")){
@@ -34,7 +37,7 @@
}
}
if(isParallelize){
%>
%>
} catch (java.lang.Exception e) {
this.status = "failure";
@@ -47,6 +50,15 @@
pool.setErrorThread(this, new TalendException(e, currentComponent, globalMap));
//pool.setErrorThread(this,e);
pool.stopAllThreads();
}finally{
try{
<%=finallyPart%>
}catch(java.lang.Exception e){
//ignore
}catch(java.lang.Error error){
//ignore
}
resourceMap = null;
}
this.isRunning = false;
@@ -76,7 +88,7 @@
}
} else {
// Start a new thread
<%=subTree.getName() %>_ParallelThread pt = new <%=subTree.getName()%>_ParallelThread(
<%=subTree.getName()%>_ParallelThread pt = new <%=subTree.getName()%>_ParallelThread(
globalMap, (Object[]) globalMap
.get("PARALLEL_FLOW_LOCK_<%=(subTree.getName()).replaceAll("tAsyncIn", "tAsyncOut")%>"));
pt.putBuffer(buffer);
@@ -87,199 +99,198 @@
} catch (java.lang.Exception te) {
throw new TalendException(te, currentComponent, globalMap);
}
<%
<%
}else{
%>
%>
}//end the resume
<%
//this part for "Resume Management"
{
INode firstNode = subTree.getNode(subTree.getName());
List<String> beforeSubProcesses = subTree.getBeforeSubProcesses();
//System.out.println(firstNode.getUniqueName());
List<? extends IConnection> outConns = firstNode.getOutgoingConnections();
//System.out.println(inConns.size());
for(IConnection conn : outConns){
// boolean activeResume = "true".equals(ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
boolean activeResume = true;
//System.out.println("Test:" + ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
String uniqueNameTargetNode = conn.getTarget().getUniqueName();
EConnectionType lineStyle = conn.getLineStyle();
}
}
%>
}//end the resume
<%
//this part for "Resume Management"
{
INode firstNode = subTree.getNode(subTree.getName());
List<String> beforeSubProcesses = subTree.getBeforeSubProcesses();
//System.out.println(firstNode.getUniqueName());
List<? extends IConnection> outConns = firstNode.getOutgoingConnections();
//System.out.println(inConns.size());
for(IConnection conn : outConns){
// boolean activeResume = "true".equals(ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
boolean activeResume = true;
//System.out.println("Test:" + ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
String uniqueNameTargetNode = conn.getTarget().getUniqueName();
EConnectionType lineStyle = conn.getLineStyle();
if(beforeSubProcesses.indexOf(uniqueNameTargetNode) != -1) {
if(activeResume){
%>
if( resumeEntryMethodName == null || globalResumeTicket){
resumeUtil.addLog("CHECKPOINT", "CONNECTION:<%=lineStyle.getName() %>:<%=subTree.getName() %>:<%=conn.getName() %><%=conn.getOutputId() > 0 ? conn.getOutputId() : "" %>", "", Thread.currentThread().getId() + "", "", "", "", "", "");
}
<%
}
%>
<%
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=conn.getUniqueName() %>", 0, "ok");
}
<%
}
%>
<%= uniqueNameTargetNode %>Process(globalMap);
<%
}
}
}
%>
<%
if (subTree.getRootNode().getProcess().getNodesOfType("tFlowMeterCatcher").size() > 0
&& subTree.getRootNode().getProcess().getNodesOfType("tFlowMeter").size() >0 ) {
List<INode> metterCatchers = (List<INode>)subTree.getRootNode().getProcess().getNodesOfType("tFlowMeterCatcher");
List<INode> metters = (List<INode>)subTree.getRootNode().getProcess().getNodesOfType("tFlowMeter");
List<INode> nodes = (List<INode>)subTree.getNodes();
boolean hasMetterProcess = false;
for(INode tmp : nodes)
{
for(INode metter : metters)
{
if(tmp.getUniqueName().equals(metter.getUniqueName()))
{
hasMetterProcess = true;
break;
<%
if(subTree.getRootNode().getProcess().getNodesOfType("tFlowMeterCatcher").size() > 0
&& subTree.getRootNode().getProcess().getNodesOfType("tFlowMeter").size() > 0){
List<INode> metterCatchers = (List<INode>)subTree.getRootNode().getProcess().getNodesOfType("tFlowMeterCatcher");
List<INode> metters = (List<INode>)subTree.getRootNode().getProcess().getNodesOfType("tFlowMeter");
List<INode> nodes = (List<INode>)subTree.getNodes();
boolean hasMetterProcess = false;
for(INode tmp : nodes){
for(INode metter : metters){
if(tmp.getUniqueName().equals(metter.getUniqueName())){
hasMetterProcess = true;
break;
}
}
if(hasMetterProcess){
break;
}
}
if(hasMetterProcess){
for(INode metterCatcher : metterCatchers){
%>
<%=metterCatcher.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
}
}
}
}
if(hasMetterProcess)
{
break;
}
}
if(hasMetterProcess)
{
for (INode metterCatcher : metterCatchers) {
%>
<%=metterCatcher.getDesignSubjobStartNode().getUniqueName() %>Process(globalMap);
<%
}
}
}
%>
} catch(java.lang.Exception e) {
throw new TalendException(e, currentComponent, globalMap);
} catch(java.lang.Error error) {
<%
if(stat){
%>
runStat.stopThreadStat();
<%
}
%>
throw error;
}
<%
//generate the code to free memory for lookup link and virtual component buffered datas
boolean firstIn = true;
boolean needGc = false;
List<INode> nodes = subTree.getNodes();
for(INode node:nodes){
boolean isVirtualGenerateNode = node.isVirtualGenerateNode();
//check the virtual component generate node
if(isVirtualGenerateNode){
String origin = ElementParameterParser.getValue(node, "__ORIGIN__");
if(origin != null && !"".equals(origin)){
if(!needGc) needGc = true;
%>
<%if(firstIn){%> finally{ <% firstIn = false;}%>
//free memory for "<%=node.getUniqueName() %>"
globalMap.remove("<%=origin %>");
<%
}
}else{
//check the Lookup link
List<? extends IConnection> lookupInput = node.getIncomingConnections(EConnectionType.FLOW_REF);
if(lookupInput!=null && lookupInput.size()>0){
if(!needGc) needGc = true;
//check the tMap like this, instanceof can't work
if(node.getClass().getName().equals("org.talend.designer.mapper.MapperComponent")){
for(IConnection connection:lookupInput){
%>
<%if(firstIn){%> finally{ <% firstIn = false;}%>
//free memory for "<%=node.getUniqueName() %>"
globalMap.remove("tHash_Lookup_<%=connection.getName() %>");
<%
}
}else{
for(IConnection connection:lookupInput){
%>
<%if(firstIn){%> finally{ <% firstIn = false;}%>
//free memory for "<%=node.getUniqueName() %>"
globalMap.remove("tHash_<%=connection.getName() %>");
<%
}
}
}
}
}
if(needGc) {
%>
//this part for "Resume Management"
{
INode firstNode = subTree.getNode(subTree.getName());
List<String> beforeSubProcesses = subTree.getBeforeSubProcesses();
//System.out.println(firstNode.getUniqueName());
List<? extends IConnection> outConns = firstNode.getOutgoingConnections();
//System.out.println(inConns.size());
for(IConnection conn : outConns){
//boolean activeResume = "true".equals(ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
boolean activeResume = true;
//System.out.println("Test:" + ElementParameterParser.getValue(conn, "__RESUMING_CHECKPOINT__"));
String uniqueNameTargetNode = conn.getTarget().getUniqueName();
EConnectionType lineStyle = conn.getLineStyle();
}
<%
}
}//isParallelize
%>
if(beforeSubProcesses.indexOf(uniqueNameTargetNode) != -1){
if(activeResume){
%>
if(resumeEntryMethodName == null || globalResumeTicket){
resumeUtil.addLog("CHECKPOINT", "CONNECTION:<%=lineStyle.getName() %>:<%=subTree.getName() %>:<%=conn.getName() %><%=conn.getOutputId() > 0 ? conn.getOutputId() : "" %>", "", Thread.currentThread().getId() + "", "", "", "", "", "");
}
<%
}
if(stat){
%>
if(execStat){
runStat.updateStatOnConnection("<%=conn.getUniqueName() %>", 0, "ok");
}
<%
}
%>
<%= uniqueNameTargetNode %>Process(globalMap);
<%
}
}
}
%>
globalMap.put("<%=subTree.getName() %>_SUBPROCESS_STATE", 1);
}
<% if (subTree.isMethodSizeNeeded()){ %>
/**
* End of Function: <%=subTree.getName() %>Process
*/
<% } %>
}catch(java.lang.Exception e){
TalendException te = new TalendException(e, currentComponent, globalMap);
<%
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>
te.setVirtualComponentName(currentVirtualComponent);
<%
}
for(INode node : subTree.getNodes()){
if(node!=null){
if("tDepartitioner".equals(node.getComponent().getName())){
String cid = node.getUniqueName();
%>
if(resourceMap.get("finish_<%=cid%>") == null){
if(resourceMap.get("start_<%=cid%>") != null){
globalMap.put("THREADS_HAVE_ERROR", e);
return;
}
}
<%
}
}
}
%>
throw te;
}catch(java.lang.Error error){
<%
if(stat){
%>
runStat.stopThreadStat();
<%
}
for(INode node : subTree.getNodes()){
if(node!=null){
if("tDepartitioner".equals(node.getComponent().getName())){
String cid = node.getUniqueName();
%>
if(resourceMap.get("finish_<%=cid%>") == null){
if(resourceMap.get("start_<%=cid%>") != null){
globalMap.put("THREADS_HAVE_ERROR",error);
return;
}
}
<%
}
}
}
%>
throw error;
}finally{
<%
//generate the code to free memory for lookup link and virtual component buffered datas
List<INode> nodes = subTree.getNodes();
for(INode node:nodes){
boolean isVirtualGenerateNode = node.isVirtualGenerateNode();
//check the virtual component generate node
if(isVirtualGenerateNode){
String origin = ElementParameterParser.getValue(node, "__ORIGIN__");
if(origin != null && !"".equals(origin)){
%>
//free memory for "<%=node.getUniqueName()%>"
globalMap.remove("<%=origin%>");
<%
}
}else{
//check the Lookup link
List<? extends IConnection> lookupInput = node.getIncomingConnections(EConnectionType.FLOW_REF);
if(lookupInput!=null && lookupInput.size()>0){
//check the tMap like this, instanceof can't work
if(node.getClass().getName().equals("org.talend.designer.mapper.MapperComponent")){
for(IConnection connection:lookupInput){
%>
//free memory for "<%=node.getUniqueName()%>"
globalMap.remove("tHash_Lookup_<%=connection.getName()%>");
<%
}
}else{
for(IConnection connection:lookupInput){
%>
//free memory for "<%=node.getUniqueName()%>"
globalMap.remove("tHash_<%=connection.getName()%>");
<%
}
}
}
}
}
%>
try{
<%=finallyPart%>
}catch(java.lang.Exception e){
//ignore
}catch(java.lang.Error error){
//ignore
}
resourceMap = null;
}
<%
}//isParallelize
%>
globalMap.put("<%=subTree.getName() %>_SUBPROCESS_STATE", 1);
}
<%
if(subTree.isMethodSizeNeeded()){
%>
/**
* End of Function: <%=subTree.getName() %>Process
*/
<%
}
%>

View File

@@ -1003,16 +1003,32 @@ public void <%=subTree.getName() %>Process(final java.util.Map<String, Object> g
this.isRunning = true;
String currentComponent = "";
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
try{
<%
}else{//isParallelize
if(NodeUtil.hasVirtualComponent(subTree.getNodes())){
%>
String iterateId = "";
String currentVirtualComponent = null;
<%
}
%>
<%
if(subTree.getRootNode().getComponent().getName().equals("tCollector")){
%>
String iterateId = "." + globalMap.get("<%=subTree.getRootNode().getDesignSubjobStartNode().getUniqueName()%>_THREAD_ID");
<%
}else{
%>
String iterateId = "";
<%
}
%>
int iterateLoop = 0;
String currentComponent = "";
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();
try {
String currentMethodName = new java.lang.Exception().getStackTrace()[0].getMethodName();

View File

@@ -31,6 +31,7 @@ import org.talend.core.language.ECodeLanguage;
import org.talend.core.model.components.IComponentFileNaming;
import org.talend.core.model.components.IComponentsFactory;
import org.talend.core.model.process.EConnectionType;
import org.talend.core.model.process.ElementParameterParser;
import org.talend.core.model.process.IConnection;
import org.talend.core.model.process.IConnectionCategory;
import org.talend.core.model.process.IContext;
@@ -205,6 +206,7 @@ public class CodeGenerator implements ICodeGenerator {
* @return the generated code
* @throws CodeGeneratorException if an error occurs during Code Generation
*/
@Override
@SuppressWarnings("unchecked")
public String generateProcessCode() throws CodeGeneratorException {
// Parse Process, generate Code for Individual Components
@@ -273,14 +275,12 @@ public class CodeGenerator implements ICodeGenerator {
// Fix bug TESB-2951 Generated Codes error when Route
// starts with cFile/cFTP/cActiveMQ/cFTP/cJMS
// LiXiaopeng 2011-09-05
INode subProcessStartNode = subTree.getRootNode()
.getSubProcessStartNode(true);
String startNodeName = subProcessStartNode
.getComponent().getName();
IElementParameter family = subProcessStartNode.getElementParameter("FAMILY");
if(subProcessStartNode.isStart() && null != family && "Messaging".equals(family.getValue())){
INode subProcessStartNode = subTree.getRootNode().getSubProcessStartNode(true);
String startNodeName = subProcessStartNode.getComponent().getName();
IElementParameter family = subProcessStartNode.getElementParameter("FAMILY");
if (subProcessStartNode.isStart() && null != family && "Messaging".equals(family.getValue())) {
nodeSubTreeList.add(subTree);
} else if ("cConfig".equals(startNodeName)) {
} else if ("cConfig".equals(startNodeName)) {
// Customized remove the cConfig routeId codes.
// TESB-2825 LiXP 20110823
// Do nothing.
@@ -327,8 +327,15 @@ public class CodeGenerator implements ICodeGenerator {
componentsCode.append(generateTypedComponentCode(EInternalTemplate.PART_ENDMAIN,
subTree.getRootNode()));
componentsCode.append(generateComponentsCode(subTree, subTree.getRootNode(), ECodePart.END, null));
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER, subTree));
StringBuffer finallyPart = new StringBuffer();
finallyPart.append(generateComponentsCode(subTree, subTree.getRootNode(), ECodePart.FINALLY, null));
Vector subprocess_footerArgument = new Vector(2);
subprocess_footerArgument.add(subTree);
subprocess_footerArgument.add(finallyPart.toString());
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER,
subprocess_footerArgument));
} else {
StringBuffer finallyPart = new StringBuffer();
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_HEADER, subTree));
componentsCode.append(generateComponentsCode(subTree, subTree.getMergeNode(), ECodePart.BEGIN, null));
@@ -341,13 +348,17 @@ public class CodeGenerator implements ICodeGenerator {
subTree.getRootNode()));
componentsCode.append(generateComponentsCode(subTree, startNode, ECodePart.END, null));
finallyPart.append(generateComponentsCode(subTree, startNode, ECodePart.FINALLY, null));
}
componentsCode.append(generateComponentsCode(subTree, subTree.getMergeNode(), ECodePart.END, null));
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER, subTree));
finallyPart.append(generateComponentsCode(subTree, subTree.getMergeNode(), ECodePart.FINALLY, null));
Vector subprocess_footerArgument = new Vector(2);
subprocess_footerArgument.add(subTree);
subprocess_footerArgument.add(finallyPart.toString());
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER,
subprocess_footerArgument));
}
}
}
}
@@ -355,10 +366,11 @@ public class CodeGenerator implements ICodeGenerator {
Vector footerArgument = new Vector(2);
footerArgument.add(process);
footerArgument.add(processTree.getRootNodes());
if (isCamel)
if (isCamel) {
componentsCode.append(generateTypedComponentCode(EInternalTemplate.FOOTER_ROUTE, footerArgument));
else
} else {
componentsCode.append(generateTypedComponentCode(EInternalTemplate.FOOTER, footerArgument));
}
componentsCode.append(generateTypedComponentCode(EInternalTemplate.PROCESSINFO, componentsCode.length()));
// ####
return componentsCode.toString();
@@ -404,6 +416,7 @@ public class CodeGenerator implements ICodeGenerator {
* @return the generated code
* @throws CodeGeneratorException if an error occurs during Code Generation
*/
@Override
public String generateContextCode(IContext designerContext) throws CodeGeneratorException {
if (process != null) {
if (designerContext == null) {
@@ -444,20 +457,22 @@ public class CodeGenerator implements ICodeGenerator {
}
return ""; //$NON-NLS-1$
}
/*
* ADDED for TESB-7887 By GangLiu(non-Javadoc)
*
* @see org.talend.designer.codegen.ICodeGenerator#generateSpringContent()
*/
@Override
public String generateSpringContent() throws CodeGeneratorException {
if (process == null || !( process instanceof IProcess2) ){
return null;
}
IProcess2 process2 = (IProcess2) process;
if(!process2.needsSpring() || process2.getSpringContent() == null){
return null;
}
return process2.getSpringContent();
if (process == null || !(process instanceof IProcess2)) {
return null;
}
IProcess2 process2 = (IProcess2) process;
if (!process2.needsSpring() || process2.getSpringContent() == null) {
return null;
}
return process2.getSpringContent();
}
/**
@@ -627,8 +642,16 @@ public class CodeGenerator implements ICodeGenerator {
codeComponent.append(generateComponentCode(subProcess, node, ECodePart.END, incomingName, typeGen));
codeComponent.append(generatesTreeCode(subProcess, node, ECodePart.END, typeGen));
codeComponent.append(generateTypedComponentCode(EInternalTemplate.ITERATE_SUBPROCESS_FOOTER, node,
ECodePart.END, incomingName, subProcess));
StringBuffer finallyPart = new StringBuffer();
// if iterate with parallel
finallyPart.append(generateComponentsCode(subProcess, node, ECodePart.FINALLY, incomingName, typeGen));
Vector iterate_Argument = new Vector(2);
iterate_Argument.add(node);
iterate_Argument.add(finallyPart.toString());
codeComponent.append(generateTypedComponentCode(EInternalTemplate.ITERATE_SUBPROCESS_FOOTER,
iterate_Argument, ECodePart.END, incomingName, subProcess));
} else {
if (ETypeGen.CAMEL == typeGen) {
if (node.getIncomingConnections() != null && node.getIncomingConnections().size() > 0) {
@@ -639,32 +662,28 @@ public class CodeGenerator implements ICodeGenerator {
}
codeComponent.append(generateComponentCode(subProcess, node, ECodePart.MAIN, incomingName, typeGen));
if (ETypeGen.CAMEL == typeGen) {
if (node.getIncomingConnections().size() < 1 && node.isStart()){
// http://jira.talendforge.org/browse/TESB-4086 XiaopengLi
String label = null;
IElementParameter parameter = node
.getElementParameter("LABEL");
if (parameter != null
&& !"__UNIQUE_NAME__".equals(parameter
.getValue())) {
label = (String) parameter.getValue();
}
if (node.getIncomingConnections().size() < 1 && node.isStart()) {
// http://jira.talendforge.org/browse/TESB-4086 XiaopengLi
String label = null;
IElementParameter parameter = node.getElementParameter("LABEL");
if (parameter != null && !"__UNIQUE_NAME__".equals(parameter.getValue())) {
label = (String) parameter.getValue();
}
/*
* Fix https://jira.talendforge.org/browse/TESB-6685
* label + uniqueName to make it unique
*/
if (label == null) {
label = node.getUniqueName();
}else{
label += "_"+node.getUniqueName();
}
if(!"cErrorHandler".equals(node.getComponent().getName())){
codeComponent.append(".routeId(\"" + label + "\")");
}
}else{
codeComponent.append(".id(\"" + node.getUniqueName() + "\")");
}
/*
* Fix https://jira.talendforge.org/browse/TESB-6685 label + uniqueName to make it unique
*/
if (label == null) {
label = node.getUniqueName();
} else {
label += "_" + node.getUniqueName();
}
if (!"cErrorHandler".equals(node.getComponent().getName())) {
codeComponent.append(".routeId(\"" + label + "\")");
}
} else {
codeComponent.append(".id(\"" + node.getUniqueName() + "\")");
}
}
codeComponent.append(generatesTreeCode(subProcess, node, ECodePart.MAIN, typeGen));
}
@@ -692,6 +711,10 @@ public class CodeGenerator implements ICodeGenerator {
// }
}
break;
case FINALLY:
codeComponent.append(generateComponentCode(subProcess, node, ECodePart.FINALLY, incomingName, typeGen));
codeComponent.append(generatesTreeCode(subProcess, node, ECodePart.FINALLY, typeGen));
break;
default:
// do nothing
}
@@ -764,24 +787,21 @@ public class CodeGenerator implements ICodeGenerator {
}
if (ETypeGen.ETL == typeGen) {
/**
* fix for bug: TDI-8508 aim: change the order of end parts to be the opposite order of begin parts
*/
// for (IConnection connection : node.getOutgoingConnections()) {
for (int i = 0; i < node.getOutgoingConnections().size(); i++) {
for (IConnection connection : node.getOutgoingConnections()) {
IConnection connection = null;
if (part == ECodePart.END) {
connection = node.getOutgoingConnections().get(node.getOutgoingConnections().size() - (i + 1));
} else {
connection = node.getOutgoingConnections().get(i);
}
if ((connection.getLineStyle() == EConnectionType.ITERATE) && (part != ECodePart.MAIN)) {
if ((connection.getLineStyle() == EConnectionType.ITERATE) && (part != ECodePart.MAIN)
&& (part != ECodePart.FINALLY)) {
continue;
}
if ((connection.getLineStyle() == EConnectionType.ON_ROWS_END) && (part != ECodePart.END)) {
if ((connection.getLineStyle() == EConnectionType.ITERATE)
&& ("true".equals(ElementParameterParser.getValue(connection, "__ENABLE_PARALLEL__"))) //$NON-NLS-1$//$NON-NLS-2$
&& part == ECodePart.FINALLY) {
continue;
}
if ((connection.getLineStyle() == EConnectionType.ON_ROWS_END) && (part != ECodePart.END)
&& (part != ECodePart.FINALLY)) {
continue;
}
@@ -864,8 +884,9 @@ public class CodeGenerator implements ICodeGenerator {
StringBuffer content = new StringBuffer();
try {
if (typeGen == ETypeGen.ETL)
if (typeGen == ETypeGen.ETL) {
content.append(generateTypedComponentCode(EInternalTemplate.PART_HEADER, node, part, incomingName, subProcess));
}
IComponentFileNaming componentFileNaming = ComponentsFactoryProvider.getFileNamingInstance();
String templateURI = node.getComponent().getPathSource() + TemplateUtil.DIR_SEP + node.getComponent().getName()
@@ -875,8 +896,9 @@ public class CodeGenerator implements ICodeGenerator {
jetBean.setTemplateRelativeUri(templateURI);
JetProxy proxy = new JetProxy(jetBean);
content.append(proxy.generate());
if (typeGen == ETypeGen.ETL)
if (typeGen == ETypeGen.ETL) {
content.append(generateTypedComponentCode(EInternalTemplate.PART_FOOTER, node, part, incomingName, subProcess));
}
} catch (JETException jetException) {
log.error(jetException.getMessage(), jetException);
@@ -897,6 +919,7 @@ public class CodeGenerator implements ICodeGenerator {
* @return the generated code
* @throws CodeGeneratorException if an error occurs during Code Generation
*/
@Override
public String generateComponentCode(INode node, ECodePart part) throws CodeGeneratorException {
CodeGeneratorArgument argument = new CodeGeneratorArgument();
argument.setNode(node);
@@ -980,6 +1003,7 @@ public class CodeGenerator implements ICodeGenerator {
* @see org.talend.designer.codegen.ICodeGenerator#generateComponentCodeWithRows (java.lang.String,
* java.lang.Object)
*/
@Override
public String generateComponentCodeWithRows(String nodeName, IAloneProcessNodeConfigurer nodeConfigurer) {
StringBuffer componentsCode = new StringBuffer();
@@ -1010,6 +1034,7 @@ public class CodeGenerator implements ICodeGenerator {
// nodeConfigurer.configure(subTreeNode);
// }
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_HEADER, subTree));
StringBuffer finallyPart = new StringBuffer();
if (subTreeNode != null) {
if (!subTree.isMergeSubTree()) {
@@ -1029,6 +1054,8 @@ public class CodeGenerator implements ICodeGenerator {
// generateTypedComponentCode
// (EInternalTemplate.SUBPROCESS_FOOTER,
// subTree));
finallyPart
.append(generateComponentsCode(subTree, subTree.getRootNode(), ECodePart.FINALLY, null));
} else {
// componentsCode.append(
// generateTypedComponentCode
@@ -1043,6 +1070,8 @@ public class CodeGenerator implements ICodeGenerator {
componentsCode.append(generateComponentsCode(subTree, startNode, ECodePart.MAIN, null));
componentsCode.append(generateComponentsCode(subTree, startNode, ECodePart.END, null));
finallyPart.append(generateComponentsCode(subTree, startNode, ECodePart.FINALLY, null));
}
componentsCode.append(generateTypedComponentCode(EInternalTemplate.PART_ENDMAIN,
@@ -1051,13 +1080,20 @@ public class CodeGenerator implements ICodeGenerator {
componentsCode
.append(generateComponentsCode(subTree, subTree.getMergeNode(), ECodePart.END, null));
finallyPart.append(generateComponentsCode(subTree, subTree.getMergeNode(), ECodePart.FINALLY,
null));
// componentsCode.append(
// generateTypedComponentCode
// (EInternalTemplate.SUBPROCESS_FOOTER,
// subTree));
}
}
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER, subTree));
Vector subprocess_footerArgument = new Vector(2);
subprocess_footerArgument.add(subTree);
subprocess_footerArgument.add(finallyPart.toString());
componentsCode.append(generateTypedComponentCode(EInternalTemplate.SUBPROCESS_FOOTER,
subprocess_footerArgument));
}
Vector footerArgument = new Vector(2);
footerArgument.add(process);
@@ -1093,6 +1129,7 @@ public class CodeGenerator implements ICodeGenerator {
return null;
}
@Override
public void setContextName(String contextName) {
this.contextName = contextName;
}

View File

@@ -13,17 +13,21 @@
package org.talend.designer.codegen;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.ui.PlatformUI;
import org.talend.commons.ui.runtime.CommonUIPlugin;
import org.talend.core.CorePlugin;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.ILibraryManagerService;
import org.talend.core.language.ECodeLanguage;
import org.talend.core.language.LanguageManager;
import org.talend.core.model.components.ComponentCompilations;
import org.talend.core.model.process.Element;
import org.talend.core.model.process.IProcess;
import org.talend.designer.codegen.i18n.Messages;
import org.talend.designer.codegen.model.CodeGeneratorEmittersPoolFactory;
import org.talend.designer.core.ICamelDesignerCoreService;
import org.talend.designer.core.IDesignerCoreService;
import org.talend.designer.core.ui.views.properties.IComponentSettingsView;
import org.talend.repository.model.ComponentsFactoryProvider;
/**
@@ -137,18 +141,33 @@ public class CodeGeneratorService implements ICodeGeneratorService {
*/
@Override
public Job refreshTemplates() {
// this will force to refresh all components libs when install run ctrl+f3
Element oldComponent = null;
IComponentSettingsView viewer = null;
if (!CommonUIPlugin.isFullyHeadless()) {
// TDI-25866:In case select a component and sctrl+shift+f3,need clean its componentSetting view
viewer = (IComponentSettingsView) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
.findView(IComponentSettingsView.ID);
if (viewer != null) {
oldComponent = viewer.getElement();
viewer.cleanDisplay();
}
}
ComponentCompilations.deleteMarkers();
ComponentsFactoryProvider.getInstance().resetCache();
ILibraryManagerService librairesManagerService = (ILibraryManagerService) GlobalServiceRegister.getDefault().getService(
ILibraryManagerService.class);
librairesManagerService.clearCache();
ComponentCompilations.deleteMarkers();
ComponentsFactoryProvider.getInstance().resetCache();
Job job = CodeGeneratorEmittersPoolFactory.initialize();
CorePlugin.getDefault().getLibrariesService().syncLibraries();
Job job = CodeGeneratorEmittersPoolFactory.initialize();
// achen modify to record ctrl+shift+f3 is pressed to fix bug 0006107
IDesignerCoreService designerCoreService = (IDesignerCoreService) GlobalServiceRegister.getDefault().getService(
IDesignerCoreService.class);
designerCoreService.getLastGeneratedJobsDateMap().clear();
if (oldComponent != null) {
viewer.setElement(oldComponent);
}
return job;
}
}

View File

@@ -77,9 +77,14 @@ public class JavaRoutineSynchronizer extends AbstractRoutineSynchronizer {
*/
@Override
public void syncAllRoutines() throws SystemException {
syncRoutineItems(getRoutines());
syncRoutineItems(getRoutines(),false);
}
@Override
public void syncAllRoutinesForLogOn() throws SystemException {
syncRoutineItems(getRoutines(),true);
}
/*
* (non-Javadoc)
*
@@ -87,13 +92,18 @@ public class JavaRoutineSynchronizer extends AbstractRoutineSynchronizer {
*/
@Override
public void syncAllPigudf() throws SystemException {
syncRoutineItems(getAllPigudf());
syncRoutineItems(getAllPigudf(),false);
}
@Override
public void syncAllPigudfForLogOn() throws SystemException {
syncRoutineItems(getAllPigudf(), true);
}
private void syncRoutineItems(List<IRepositoryViewObject> routineObjects) throws SystemException {
private void syncRoutineItems(List<IRepositoryViewObject> routineObjects,boolean forceUpdate) throws SystemException {
for (IRepositoryViewObject routine : routineObjects) {
RoutineItem routineItem = (RoutineItem) routine.getProperty().getItem();
syncRoutine(routineItem, true);
syncRoutine(routineItem, true,forceUpdate);
}
try {

View File

@@ -13,15 +13,6 @@
package org.talend.designer.codegen;
import org.eclipse.jface.action.Action;
import org.eclipse.ui.PlatformUI;
import org.talend.core.CorePlugin;
import org.talend.core.GlobalServiceRegister;
import org.talend.core.model.components.ComponentCompilations;
import org.talend.core.model.process.Element;
import org.talend.designer.codegen.model.CodeGeneratorEmittersPoolFactory;
import org.talend.designer.core.IDesignerCoreService;
import org.talend.designer.core.ui.views.properties.IComponentSettingsView;
import org.talend.repository.model.ComponentsFactoryProvider;
/**
* DOC mhirt class global comment. Detailled comment <br/>
@@ -43,28 +34,8 @@ public class RefreshTemplatesAction extends Action {
*/
@Override
public void run() {
// TDI-25866:In case select a component and sctrl+shift+f3,need clean its componentSetting view
IComponentSettingsView viewer = (IComponentSettingsView) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getActivePage().findView(IComponentSettingsView.ID);
Element oldComponent = null;
if (viewer != null) {
oldComponent = viewer.getElement();
viewer.cleanDisplay();
}
ComponentCompilations.deleteMarkers();
ComponentsFactoryProvider.getInstance().resetCache();
CorePlugin.getDefault().getLibrariesService().syncLibraries();
CodeGeneratorEmittersPoolFactory.initialize();
// achen modify to record ctrl+shift+f3 is pressed to fix bug 0006107
IDesignerCoreService designerCoreService = (IDesignerCoreService) GlobalServiceRegister.getDefault().getService(
IDesignerCoreService.class);
designerCoreService.getLastGeneratedJobsDateMap().clear();
if (oldComponent != null) {
viewer.setElement(oldComponent);
}
CodeGeneratorService service = new CodeGeneratorService();
service.refreshTemplates();
}
}

View File

@@ -261,7 +261,7 @@ public class ComponentsPreferencePage extends FieldEditorPreferencePage implemen
public void modifyText(ModifyEvent e) {
String newPath = filePathTemp.getTextControl(parent).getText();
File file = new File(newPath);
if (!file.exists()) {
if (!file.exists() && !"".equals(newPath)) {
// getPreferenceStore().setValue(IComponentPreferenceConstant.USER_COMPONENTS_FOLDER, "");
filePathTemp.showErrorMessage();
setValid(false);

View File

@@ -19,6 +19,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.talend.core.model.process.AbstractNode;
import org.talend.core.model.process.EConnectionType;
import org.talend.core.model.process.ElementParameterParser;
import org.talend.core.model.process.IConnection;
@@ -51,6 +52,8 @@ public class NodesSubTree {
HashMap<INode, Integer> visitedNodesEndCode;
HashMap<INode, Integer> visitedNodesFinallyCode;
private static final boolean DEBUG = false;
boolean isMergeSubTree = false;
@@ -63,6 +66,10 @@ public class NodesSubTree {
INode mergeNode;
boolean isRefSubTree = false;// for mr only
List<INode> refNodes; // for mr only
/* display size of method code in comment */
boolean methodSizeNeeded = false;
@@ -88,6 +95,7 @@ public class NodesSubTree {
this.visitedNodesMainCode = new HashMap<INode, Integer>();
this.visitedNodesBeginCode = new HashMap<INode, Integer>();
this.visitedNodesEndCode = new HashMap<INode, Integer>();
this.visitedNodesFinallyCode = new HashMap<INode, Integer>();
this.isMergeSubTree = node.isThereLinkWithMerge();
allMainSubTreeConnections = new ArrayList<IConnection>();
@@ -105,17 +113,45 @@ public class NodesSubTree {
}
}
public NodesSubTree(INode node, List<? extends INode> nodes, ETypeGen typeGen) {
this.rootNode = node;
this.name = node.getUniqueName();
this.nodes = new ArrayList<INode>();
this.visitedNodesMainCode = new HashMap<INode, Integer>();
allMainSubTreeConnections = new ArrayList<IConnection>();
buildCamelSubTree(node, false);
public NodesSubTree(INode node, List<? extends INode> nodes, ETypeGen typeGen) {
if (typeGen == ETypeGen.CAMEL) {
this.rootNode = node;
this.name = node.getUniqueName();
this.nodes = new ArrayList<INode>();
this.visitedNodesMainCode = new HashMap<INode, Integer>();
allMainSubTreeConnections = new ArrayList<IConnection>();
buildCamelSubTree(node, false);
} else if (typeGen == ETypeGen.MR) {
this.rootNode = node;
this.name = node.getUniqueName();
this.nodes = new ArrayList<INode>();
afterSubProcesses = new ArrayList<String>();
beforeSubProcesses = new ArrayList<String>();
allMainSubTreeConnections = new ArrayList<IConnection>();
buildMRSubTree(node);
if (refNodes != null) {
for (INode refNode : refNodes) {
this.nodes.add(refNode);
for (IConnection connection : refNode.getOutgoingSortedConnections()) {
if (connection.getTarget().isActivate()) {
if (connection.getLineStyle().equals(EConnectionType.RUN_AFTER)) {
afterSubProcesses.add(connection.getTarget().getUniqueName());
}
if (connection.getLineStyle().equals(EConnectionType.ON_SUBJOB_OK)) {
beforeSubProcesses.add(connection.getTarget().getUniqueName());
}
}
}
}
}
}
}
/**
* unite all the relative merge nodes to this subTree
@@ -159,6 +195,32 @@ public class NodesSubTree {
nodes.add(node);
}
private void buildMRSubTree(INode node) {
if (((AbstractNode) node).isThereLinkWithRef()) {
this.isRefSubTree = true;
this.refNodes = ((AbstractNode) node).getRefNodes();
}
for (IConnection connection : node.getOutgoingSortedConnections()) {
if (connection.getTarget().isActivate()) {
if (connection.getLineStyle().hasConnectionCategory(IConnectionCategory.MAIN)) {
if (!connection.getLineStyle().hasConnectionCategory(IConnectionCategory.USE_ITERATE)) {
allMainSubTreeConnections.add(connection);
}
buildMRSubTree(connection.getTarget());
}
if (connection.getLineStyle().equals(EConnectionType.RUN_AFTER)) {
afterSubProcesses.add(connection.getTarget().getUniqueName());
}
if (connection.getLineStyle().equals(EConnectionType.ON_SUBJOB_OK)) {
beforeSubProcesses.add(connection.getTarget().getUniqueName());
}
}
}
nodes.add(node);
}
private void buildSubTree(INode node, boolean breakWhenMerge) {
if (DEBUG) {
System.out.print(node.getUniqueName());
@@ -204,6 +266,7 @@ public class NodesSubTree {
visitedNodesMainCode.put(node, 0);
visitedNodesBeginCode.put(node, 0);
visitedNodesEndCode.put(node, 0);
visitedNodesFinallyCode.put(node, 0);
nodes.add(node);
}
@@ -237,6 +300,13 @@ public class NodesSubTree {
} else {
return false;
}
case FINALLY:
Integer countFinally = visitedNodesFinallyCode.get(node);
if (countFinally == null) {
return null;
} else {
return false;
}
default:
return result;
}
@@ -259,6 +329,8 @@ public class NodesSubTree {
case END:
visitedNodesEndCode.put(node, visitedNodesEndCode.get(node) + 1);
break;
case FINALLY:
visitedNodesFinallyCode.put(node, visitedNodesFinallyCode.get(node) + 1);
default:
// do nothing
}
@@ -368,6 +440,7 @@ public class NodesSubTree {
Collections.sort(mergeBranchStarts, new Comparator<INode>() {
@Override
public int compare(INode node1, INode node2) {
if (node1.getLinkedMergeInfo().get(mergeNode) > node2.getLinkedMergeInfo().get(mergeNode)) {
return 1;
@@ -415,4 +488,40 @@ public class NodesSubTree {
public void setSubTreeContainsParallelIterate(boolean subTreeContainsParallelIterate) {
this.subTreeContainsParallelIterate = subTreeContainsParallelIterate;
}
/**
* Getter for isRefSubTree.
*
* @return the isRefSubTree
*/
public boolean isRefSubTree() {
return this.isRefSubTree;
}
/**
* Sets the isRefSubTree.
*
* @param isRefSubTree the isRefSubTree to set
*/
public void setRefSubTree(boolean isRefSubTree) {
this.isRefSubTree = isRefSubTree;
}
/**
* Getter for refNodes.
*
* @return the refNodes
*/
public List<INode> getRefNodes() {
return this.refNodes;
}
/**
* Sets the refNodes.
*
* @param refNodes the refNodes to set
*/
public void setRefNodes(List<INode> refNodes) {
this.refNodes = refNodes;
}
}

View File

@@ -16,6 +16,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.talend.core.model.process.EConnectionType;
import org.talend.core.model.process.INode;
import org.talend.core.model.process.IProcess;
import org.talend.core.model.temp.ETypeGen;
@@ -47,12 +48,16 @@ public class NodesTree {
buildSubTrees(true);
}
}
public NodesTree(IProcess process, List<? extends INode> treeNodes, boolean init, ETypeGen typeGen) {
this.nodes = treeNodes;
buildRootNodes(process);
if (init) {
buildCamelSubTrees(true);
if (typeGen == ETypeGen.CAMEL) {
buildCamelSubTrees(true);
} else if (typeGen == ETypeGen.MR) {
buildMRSubTrees();
}
}
}
@@ -93,6 +98,21 @@ public class NodesTree {
}
}
private void buildMRSubTrees() {
subTrees = new ArrayList<NodesSubTree>();
for (INode node : nodes) {
if (((node.isSubProcessStart()) && (node.isActivate())) || (rootNodes.contains(node))) {
if (node.getOutgoingConnections(EConnectionType.FLOW_REF) != null
&& node.getOutgoingConnections(EConnectionType.FLOW_REF).size() == 1) {
// ignore the node when it output connection is flow_ref, because it has been added in
// AbstractNode.setRefNodes
continue;
}
subTrees.add(new NodesSubTree(node, nodes, ETypeGen.MR));
}
}
}
/**
* Build Root Nodes List.
*
@@ -111,7 +131,8 @@ public class NodesTree {
for (INode node : nodes) {
String componentName = node.getComponent().getName();
if ((node.isStart()) && (node.isActivate()) && (!componentName.equals("tPrejob")) //$NON-NLS-1$
if ((node.isStart()) && (node.isActivate()) && (node.isSubtreeStart() || node.isELTComponent())
&& (!componentName.equals("tPrejob"))//$NON-NLS-1$
&& (!componentName.equals("tPostjob"))) { //$NON-NLS-1$
rootNodes.add(node);
}

View File

@@ -378,7 +378,7 @@ public class TalendJetEmitter extends JETEmitter {
marker.getAttribute(IMarker.MESSAGE),
(CodeGenPlugin.getPlugin().getString("jet.mark.file.line", new Object[] { //$NON-NLS-1$
targetFile.getLocation(), marker.getAttribute(IMarker.LINE_NUMBER) }))));
classAvailable = false;
setClassAvailable(false);
}
}
@@ -516,6 +516,10 @@ public class TalendJetEmitter extends JETEmitter {
public boolean isClassAvailable() {
return this.classAvailable;
}
public void setClassAvailable(boolean classAvailable) {
this.classAvailable = classAvailable;
}
/*
* (non-Javadoc)

View File

@@ -424,6 +424,9 @@ public final class CodeGeneratorEmittersPoolFactory {
if (component.getAvailableCodeParts().contains(ECodePart.END)) {
initComponent(codeLanguage, jetBeans, ECodePart.END, component);
}
if (component.getAvailableCodeParts().contains(ECodePart.FINALLY)) {
initComponent(codeLanguage, jetBeans, ECodePart.FINALLY, component);
}
if (component.getAvailableCodeParts().contains(ECodePart.MRCODE)) {
initComponent(codeLanguage, jetBeans, ECodePart.MRCODE, component);
}

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -84,25 +84,39 @@
<!-- 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==0){
alert("Extension Title is empty");
alert("Extension Title is empty");
isSkipPage = false;
}else if(labelValidate=="null"){
alert("Extension Title can not be null");
alert("Extension Title can not be null");
isSkipPage = false;
}else if(lastVersionAvailableValidate==0){
alert("Initial Version is empty");
isSkipPage = false;
}else if(lastVersionAvailableValidate=="null"){
alert("Initial Version can not be null");
alert("Initial Version can not be null");
isSkipPage = false;
}else if(filename==0){
alert("Please input a vaild File path");
isSkipPage = false;
}
<!-- validate the createNewExtension text end-->
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 + "}"
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;
}
var url = prefix + "&amp;extensionValues=" + jsonObj;
document.getElementById('commit').href = url;
}
function updateReWriteUrl() {
@@ -133,22 +147,28 @@
<!-- validate the updateExtension text start-->
var lastVersionAvailable_updateValidate = document.getElementById("lastVersionAvailable_update").value;
var isSkipPage = true;
if(lastVersionAvailable_updateValidate==0){
alert("New Version is empty");
var isSkipPage = false;
}else if(lastVersionAvailable_updateValidate=="null"){
alert("New Version can not be null");
alert("New Version can not be null");
var isSkipPage = false;
}
<!-- validate the updateExtension text end-->
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 + "}"
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;
}
var url = prefix + "&amp;extensionValues=" + jsonObj;
document.getElementById('commit_update').href = url;
}
function modifyReWriteUrl() {
@@ -460,7 +480,7 @@
<td ></td>
<td>
<a class="xh" href="" id="commit" style="margin-left:5px;">
<button onclick="window.location.href=document.getElementById('commit').href" onmouseover="createNewExtensionWriteUrl()" style="width: 176px">
<button onclick="createNewExtensionWriteUrl()" style="width: 176px">
Add Extension
</button>
</a>
@@ -519,7 +539,7 @@
<td ></td>
<td>
<a class="xh" href="" id="commit_update" style="margin-left:5px;">
<button onclick="window.location.href=document.getElementById('commit_update').href" onmouseover="updateReWriteUrl()" style="width: 176px">
<button onclick="updateReWriteUrl()" style="width: 176px">
Upload Extension
</button>
</a>

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -71,15 +71,15 @@ public class SAXLooper {
}
private void judgeIsSimple() {
if (this.loopPath.indexOf("..") >= 0 || this.loopPath.indexOf("*") >= 0) {
this.isSimpleParse = false;
}
for (int i = 0; i < nodePaths.length; i++) {
if (nodePaths[i].indexOf("..") >= 0 || nodePaths[i].indexOf("*") >= 0) {
this.isSimpleParse = false;
isSimpleParse = isSimplePath(loopPath);
for(String path : nodePaths) {
if(!isSimpleParse) {
break;
}
isSimpleParse = isSimplePath(path);
}
if (this.isSimpleParse) {
looper = new SimpleSAXLooper(loopPath, nodePaths, asXMLs);
} else {

View File

@@ -135,7 +135,10 @@ public class SimpleSAXLooper implements ISAXLooper,Callable {
String resultCol = node.loopPath;
String[] splits = column.split("/");
for (String tmp : splits) {
if (tmp.equals(".")) {
if (tmp.equals("..")) {
resultCol = resultCol.substring(0, resultCol.lastIndexOf("/"));
node.setAttrOutOfLoop(true);
} else if (tmp.equals(".")) {
node.isDot = true;
} else {
resultCol += "/" + tmp;

View File

@@ -142,22 +142,17 @@ public class FileCopy {
if (position + MAP_SIZE >= size) {
buf = in.map(FileChannel.MapMode.READ_ONLY, position, size - position);
out.write(buf);
if (delSrc) {
// here must clean first, or it can't delete
clean(buf);
}
//For But TDI-26493, here must clean first, or it can't delete
clean(buf);
break;
} else {
buf = in.map(FileChannel.MapMode.READ_ONLY, position, MAP_SIZE);
out.write(buf);
if (delSrc) {
// here must clean first, or it can't delete
clean(buf);
}
// here must clean first, or it can't delete
clean(buf);
position += MAP_SIZE;
}
}
in.close();
out.close();

View File

@@ -18,18 +18,14 @@ public class MsmqUtil {
private String msgContent;
boolean bTried = false;
String ipAddr = "";
final String LOCALIP = "127.0.0.1";
public MsmqUtil() {
try {
java.net.InetAddress thisIp = java.net.InetAddress.getLocalHost();
ipAddr = thisIp.getHostAddress();
} catch (Exception ex1) {
ex1.printStackTrace();
}
public MsmqUtil() throws Exception {
java.net.InetAddress thisIp = java.net.InetAddress.getLocalHost();
ipAddr = thisIp.getHostAddress();
}
public static void main(String[] args) throws java.lang.Exception {
@@ -52,43 +48,29 @@ public class MsmqUtil {
}
// message remain in queue
public void peek() {
try {
checkOpen();
System.out.println("peek");
Message msg = msmqHandle.peek(2000); // timeout= 2000 ms
System.out.println(" ==> message: " + msg.getBodyAsString());
System.out.println(" label: " + msg.getLabel());
} catch (MessageQueueException ex1) {
System.out.println("Peek failure: " + ex1);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
public void peek() throws MessageQueueException, UnsupportedEncodingException {
checkOpen();
System.out.println("peek");
Message msg = msmqHandle.peek(2000); // timeout= 2000 ms
System.out.println(" ==> message: " + msg.getBodyAsString());
System.out.println(" label: " + msg.getLabel());
}
// close an open queue
public void close() {
try {
checkOpen();
msmqHandle.close();
msmqHandle = null;
} catch (MessageQueueException ex1) {
System.out.println("close failure: " + ex1);
}
public void close() throws MessageQueueException {
checkOpen();
msmqHandle.close();
msmqHandle = null;
}
// delete the queue
private void delete() {
try {
String fullname = getQueueFullName(".", queueName);
ionic.Msmq.Queue.delete(fullname);
} catch (MessageQueueException ex1) {
System.out.println("Queue deletion failure: " + ex1);
}
private void delete() throws MessageQueueException {
String fullname = getQueueFullName(".", queueName);
ionic.Msmq.Queue.delete(fullname);
}
// open the queue, if it not exists, and creating is required, try to create a queue with the name.
public void open() {
public void open() throws MessageQueueException {
try {
if (msmqHandle != null) {
msmqHandle.close();
@@ -98,45 +80,34 @@ public class MsmqUtil {
msmqHandle = new Queue(fullname);
// msmqHandle= new Queue(fullname, 0x02); // 0x02 == SEND only
} catch (MessageQueueException ex1) {
System.out.println("Queue open failure: " + ex1);
if (bTried) {
System.out.println("Queue open failure: " + ex1);
bTried = false;
create();
}else{
throw ex1;
}
}
}
public void send() {
try {
checkOpen();
// the transaction flag must agree with the transactional flavor of the queue.
int transactionFlag = 0; // 0 = NO TRANSACTION, 1= MTS, 2= XA, 3= SINGLE_MESSAGE
String mLabel = "inserted by " + this.getClass().getName() + ".java";
String correlationID = "L:none";
Message msg = new Message(msgContent, mLabel, correlationID);
msmqHandle.send(msg);
} catch (MessageQueueException ex1) {
System.out.println("Send failure: " + ex1);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
public void send() throws MessageQueueException, UnsupportedEncodingException {
checkOpen();
// the transaction flag must agree with the transactional flavor of the queue.
int transactionFlag = 0; // 0 = NO TRANSACTION, 1= MTS, 2= XA, 3= SINGLE_MESSAGE
String mLabel = "inserted by " + this.getClass().getName() + ".java";
String correlationID = "L:none";
Message msg = new Message(msgContent, mLabel, correlationID);
msmqHandle.send(msg);
}
public String receive() {
try {
checkOpen();
// System.out.println("receive");
Message msg = msmqHandle.receive(2000); // timeout= 2000 ms
// System.out.println(" ==> message: " + msg.getMessage());
// System.out.println(" label: " + msg.getLabel());
return msg.getBodyAsString();
} catch (MessageQueueException ex1) {
System.out.println("Receive failure: " + ex1);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return null;
public String receive() throws MessageQueueException, UnsupportedEncodingException {
checkOpen();
// System.out.println("receive");
Message msg = msmqHandle.receive(2000); // timeout= 2000 ms
// System.out.println(" ==> message: " + msg.getMessage());
// System.out.println(" label: " + msg.getLabel());
return msg.getBodyAsString();
}
private String getQueueFullName(String hostname, String queueShortName) {
@@ -151,19 +122,15 @@ public class MsmqUtil {
return "DIRECT=" + a1 + ":" + h1 + "\\private$\\" + queueShortName;
}
private void create() {
try {
if (!(host == null || "".equals(host) || "localhost".equalsIgnoreCase(host) || host.equals(ipAddr) || LOCALIP
.equals(host))) {
throw new MessageQueueException("can only create queue locally", -1); // can only create locally.
}
String fullname = ".\\private$\\" + queueName;
String qLabel = "Created by " + this.getClass().getName() + ".java";
boolean transactional = false; // should the queue be transactional
msmqHandle = Queue.create(fullname, qLabel, transactional);
} catch (MessageQueueException ex1) {
System.out.println("Queue creation failure: " + ex1);
private void create() throws MessageQueueException {
if (!(host == null || "".equals(host) || "localhost".equalsIgnoreCase(host) || host.equals(ipAddr) || LOCALIP
.equals(host))) {
throw new MessageQueueException("can only create queue locally", -1); // can only create locally.
}
String fullname = ".\\private$\\" + queueName;
String qLabel = "Created by " + this.getClass().getName() + ".java";
boolean transactional = false; // should the queue be transactional
msmqHandle = Queue.create(fullname, qLabel, transactional);
}
private void checkOpen() throws MessageQueueException {

View File

@@ -102,6 +102,9 @@ public class palodata {
csv.setQuoteChar('"');
int iCoordElem = 0;
while (csv.readNext()) {
if(iCoordElem > lstDimensionElementArray.size()-1){
break;
}
String strArrCoord[] = new String[iDimensionElementLength];
for (int i = 0; i < iDimensionElementLength; i++) {
strArrCoord[i] = (String) lstDimensionElementArray.get(iCoordElem++);

View File

@@ -256,8 +256,9 @@ public class SalesforceBulkAPI {
private JobInfo createJob() throws AsyncApiException {
JobInfo job = new JobInfo();
if (concurrencyMode != null)
if (concurrencyMode != null) {
job.setConcurrencyMode(concurrencyMode);
}
job.setObject(sObjectType);
job.setOperation(operation);
if (OperationEnum.upsert.equals(operation)) {
@@ -276,8 +277,8 @@ public class SalesforceBulkAPI {
char c = '\"';
int num = 0;
char[] chars = value.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (c == chars[i]) {
for (char d : chars) {
if (c == d) {
num++;
}
}
@@ -372,6 +373,12 @@ public class SalesforceBulkAPI {
connection.updateJob(closeJob);
}
private long awaitTime = 10000L;
public void setAwaitTime(long awaitTime) {
this.awaitTime = awaitTime;
}
private void awaitCompletion() throws AsyncApiException {
long sleepTime = 0L;
Set<String> incomplete = new HashSet<String>();
@@ -384,7 +391,7 @@ public class SalesforceBulkAPI {
} catch (InterruptedException e) {
}
// System.out.println("Awaiting results..." + incomplete.size());
sleepTime = 100L;
sleepTime = awaitTime;
BatchInfo[] statusList = connection.getBatchInfoList(job.getId()).getBatchInfo();
for (BatchInfo b : statusList) {
if (b.getState() == BatchStateEnum.Completed || b.getState() == BatchStateEnum.Failed) {
@@ -447,8 +454,9 @@ public class SalesforceBulkAPI {
job = new JobInfo();
job.setObject(moduleName);
job.setOperation(OperationEnum.query);
if (concurrencyMode != null)
if (concurrencyMode != null) {
job.setConcurrencyMode(concurrencyMode);
}
job.setContentType(ContentType.CSV);
job = connection.createJob(job);
@@ -473,6 +481,8 @@ public class SalesforceBulkAPI {
}
}
batchInfoList.add(info);
//For TDI-27909
closeJob();
}
public String[] getQueryResultIDs() {
@@ -487,18 +497,24 @@ public class SalesforceBulkAPI {
// batchInfoList was populated when batches were created and submitted
List<Map<String, String>> resultInfoList = new ArrayList<Map<String, String>>();
Map<String, String> resultInfo;
CSVReader rdr = new CSVReader(connection.getQueryResultStream(job.getId(), batchInfoList.get(0).getId(), resultId));
// fix for TDI-26533
baseFileReader = new com.talend.csv.CSVReader(new java.io.BufferedReader(new java.io.InputStreamReader(
connection.getQueryResultStream(job.getId(), batchInfoList.get(0).getId(), resultId), FILE_ENCODING)), ',');
List<String> resultHeader = rdr.nextRecord();
int resultCols = resultHeader.size();
List<String> row;
while ((row = rdr.nextRecord()) != null) {
resultInfo = new HashMap<String, String>();
// resultInfo.putAll(getBaseFileRow());
for (int i = 0; i < resultCols; i++) {
resultInfo.put(resultHeader.get(i), row.get(i));
if (baseFileReader.readNext()) {
baseFileHeader = Arrays.asList(baseFileReader.getValues());
}
baseFileHeaderSize = baseFileHeader.size();
String[] row;
while (baseFileReader.readNext()) {
if ((row = baseFileReader.getValues()) != null) {
resultInfo = new HashMap<String, String>();
// resultInfo.putAll(getBaseFileRow());
for (int i = 0; i < baseFileHeaderSize; i++) {
resultInfo.put(baseFileHeader.get(i), row[i]);
}
resultInfoList.add(resultInfo);
}
resultInfoList.add(resultInfo);
// boolean success = Boolean.valueOf(resultInfo.get("Success"));
// boolean created = Boolean.valueOf(resultInfo.get("Created"));
// String id = resultInfo.get("Id");
@@ -509,7 +525,14 @@ public class SalesforceBulkAPI {
// System.out.println("Failed with error: " + error);
// }
}
closeFileRead();
return resultInfoList;
}
// for TDI-26832
public void closeFileRead() throws IOException {
if (baseFileReader != null) {
baseFileReader.close();
}
}
}

View File

@@ -231,6 +231,8 @@ public class SforceManagementImpl implements SforceManagement {
private ArrayList<SObject> updateItems;
private String[] changedItemKeys = new String[0];
private String upsertKeyColumn;
public boolean login(String endpoint, String username, String password, String timeout, boolean needCompression,
@@ -330,19 +332,22 @@ public class SforceManagementImpl implements SforceManagement {
try {
if (insertItems.size() > 0) {
SObject[] accs = insertItems.toArray(new SObject[insertItems.size()]);
changedItemKeys = new String[accs.length];
Create create = new Create();
create.setSObjects(accs);
SaveResult[] sr = stub.create(create, sh, co, null, null, null, null, null, null, null, null, null).getResult();
insertItems.clear();
accs = null;
if (exceptionForErrors && sr != null && sr.length != 0) {
if (sr != null && sr.length != 0) {
int batch_idx = -1;
for (SaveResult result : sr) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?""+(batch_idx+1):"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -357,6 +362,10 @@ public class SforceManagementImpl implements SforceManagement {
}
if (deleteItems.size() > 0) {
ID[] delIDs = deleteItems.toArray(new ID[deleteItems.size()]);
changedItemKeys = new String[delIDs.length];
for(int ix=0;ix<delIDs.length;++ix) {
changedItemKeys[ix]=delIDs[ix].getID();
}
Delete dels = new Delete();
dels.setIds(delIDs);
DeleteResponse dresp = stub.delete(dels, sh, co, null, null, null, null, null, null, null, null);
@@ -364,13 +373,15 @@ public class SforceManagementImpl implements SforceManagement {
deleteItems.clear();
delIDs = null;
if (exceptionForErrors && dr != null && dr.length != 0) {
if (dr != null && dr.length != 0) {
int batch_idx = -1;
for (DeleteResult result : dr) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -385,6 +396,10 @@ public class SforceManagementImpl implements SforceManagement {
}
if (updateItems.size() > 0) {
SObject[] upds = updateItems.toArray(new SObject[updateItems.size()]);
changedItemKeys = new String[upds.length];
for(int ix=0;ix<upds.length;++ix) {
changedItemKeys[ix]=upds[ix].getId().getID();
}
Update update = new Update();
update.setSObjects(upds);
SaveResult[] saveResults = stub.update(update, sh, co, null, null, null, null, null, null, null, null, null)
@@ -392,13 +407,15 @@ public class SforceManagementImpl implements SforceManagement {
updateItems.clear();
upds = null;
if (exceptionForErrors && saveResults != null && saveResults.length != 0) {
if (saveResults != null && saveResults.length != 0) {
int batch_idx = -1;
for (SaveResult result : saveResults) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -413,6 +430,17 @@ public class SforceManagementImpl implements SforceManagement {
}
if (upsertItems.size() > 0) {
SObject[] upds = upsertItems.toArray(new SObject[upsertItems.size()]);
changedItemKeys = new String[upds.length];
for(int ix=0;ix<upds.length;++ix) {
changedItemKeys[ix]="No value for "+upsertKeyColumn+" ";
OMElement[] oms = upds[ix].getExtraElement();
for(int iy=0;iy<oms.length;++iy) {
if(upsertKeyColumn!=null && oms[iy]!=null && upsertKeyColumn.equals(oms[iy].getLocalName())) {
changedItemKeys[ix]=oms[iy].getText();
break;
}
}
}
Upsert upsert = new Upsert();
upsert.setSObjects(upds);
upsert.setExternalIDFieldName(upsertKeyColumn);
@@ -421,13 +449,15 @@ public class SforceManagementImpl implements SforceManagement {
upsertItems.clear();
upds = null;
if (exceptionForErrors && upsertResults != null && upsertResults.length != 0) {
if (upsertResults != null && upsertResults.length != 0) {
int batch_idx = -1;
for (UpsertResult result : upsertResults) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -462,6 +492,10 @@ public class SforceManagementImpl implements SforceManagement {
if (deleteItems.size() >= commitLevel) {
ID[] delIDs = deleteItems.toArray(new ID[deleteItems.size()]);
changedItemKeys = new String[delIDs.length];
for(int ix=0;ix<delIDs.length;++ix) {
changedItemKeys[ix]=delIDs[ix].getID();
}
Delete dels = new Delete();
dels.setIds(delIDs);
DeleteResponse dresp = stub.delete(dels, sh, co, null, null, null, null, null, null, null, null);
@@ -470,12 +504,14 @@ public class SforceManagementImpl implements SforceManagement {
delIDs = null;
if (dr != null && dr.length != 0) {
int batch_idx = -1;
for (DeleteResult result : dr) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -516,6 +552,7 @@ public class SforceManagementImpl implements SforceManagement {
if (insertItems.size() >= commitLevel) {
SObject[] accs = insertItems.toArray(new SObject[insertItems.size()]);
changedItemKeys = new String[accs.length];
Create create = new Create();
create.setSObjects(accs);
SaveResult[] sr = stub.create(create, sh, co, null, null, null, null, null, null, null, null, null).getResult();
@@ -523,12 +560,14 @@ public class SforceManagementImpl implements SforceManagement {
accs = null;
if (sr != null && sr.length != 0) {
int batch_idx = -1;
for (SaveResult result : sr) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?""+(batch_idx+1):"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -561,6 +600,10 @@ public class SforceManagementImpl implements SforceManagement {
// call the update passing an array of object
if (updateItems.size() >= commitLevel) {
SObject[] upds = updateItems.toArray(new SObject[updateItems.size()]);
changedItemKeys = new String[upds.length];
for(int ix=0;ix<upds.length;++ix) {
changedItemKeys[ix]=upds[ix].getId().getID();
}
Update update = new Update();
update.setSObjects(upds);
SaveResult[] saveResults = stub.update(update, sh, co, null, null, null, null, null, null, null, null, null)
@@ -568,13 +611,15 @@ public class SforceManagementImpl implements SforceManagement {
updateItems.clear();
upds = null;
if (exceptionForErrors && saveResults != null && saveResults.length != 0) {
if (saveResults != null && saveResults.length != 0) {
int batch_idx = -1;
for (SaveResult result : saveResults) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -611,6 +656,17 @@ public class SforceManagementImpl implements SforceManagement {
// call the update passing an array of object
if (upsertItems.size() >= commitLevel) {
SObject[] upds = upsertItems.toArray(new SObject[upsertItems.size()]);
changedItemKeys = new String[upds.length];
for(int ix=0;ix<upds.length;++ix) {
changedItemKeys[ix]="No value for "+upsertKeyColumn+" ";
OMElement[] oms = upds[ix].getExtraElement();
for(int iy=0;iy<oms.length;++iy) {
if(upsertKeyColumn!=null && oms[iy]!=null && upsertKeyColumn.equals(oms[iy].getLocalName())) {
changedItemKeys[ix]=oms[iy].getText();
break;
}
}
}
Upsert upsert = new Upsert();
upsert.setSObjects(upds);
upsert.setExternalIDFieldName(upsertKeyColumn);
@@ -619,13 +675,15 @@ public class SforceManagementImpl implements SforceManagement {
upsertItems.clear();
upds = null;
if (exceptionForErrors && upsertResults != null && upsertResults.length != 0) {
if (upsertResults != null && upsertResults.length != 0) {
int batch_idx = -1;
for (UpsertResult result : upsertResults) {
++batch_idx;
StringBuilder errors = new StringBuilder("");
if (result.getSuccess()) {
// TODO: send back the ID
} else {
errors = addLog(result.getErrors());
errors = addLog(result.getErrors(),batch_idx<changedItemKeys.length?changedItemKeys[batch_idx]:"Batch index out of bounds");
}
if (exceptionForErrors && errors.toString().length() > 0) {
if (logWriter != null) {
@@ -642,7 +700,7 @@ public class SforceManagementImpl implements SforceManagement {
}
private StringBuilder addLog(Error[] resultErrors) throws Exception {
private StringBuilder addLog(Error[] resultErrors, String row_key) throws Exception {
StringBuilder errors = new StringBuilder("");
if (resultErrors != null) {
for (Error error : resultErrors) {
@@ -651,8 +709,10 @@ public class SforceManagementImpl implements SforceManagement {
logWriter.append("\tStatus Code: ").append(error.getStatusCode().toString());
logWriter.newLine();
logWriter.newLine();
logWriter.append("\tFields: ");
logWriter.append("\tRowKey/RowNo: "+row_key);
if (error.getFields() != null) {
logWriter.newLine();
logWriter.append("\tFields: ");
boolean flag = false;
for (String field : error.getFields()) {
if (flag) {

View File

@@ -221,7 +221,7 @@ public class ExcelTool {
}
private CellStyle getPreCellStyle() {
if (isAbsY && keepCellFormat) {
if (preSheet!=null && isAbsY && keepCellFormat) {
CellStyle preCellStyle =null;
if (preCell == null) {
preCellStyle = preSheet.getColumnStyle(curCell.getColumnIndex());

View File

@@ -1,13 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="org.talend.designer.components.libs" default="process" basedir=".">
<property name="component.plugin.home" value="../../../org.talend.designer.components.localprovider/components" />
<property name="jar.plugin.home" value="../../../org.talend.libraries.custom/lib" />
<!-- #################################################### -->
<!-- modification 1: config -->
<property name="jar.name" value="talend_file_enhanced_20070724.jar" />
<property name="component.name" value="tFileInputDelimited" />
<property name="author.name" value="wyang" />
<!-- modification 2: compile classpath -->
@@ -19,7 +18,7 @@
<!-- sourcecode and final jar path -->
<property name="source.home" value="." />
<property name="jar.home" value="${component.plugin.home}/${component.name}/${jar.name}" />
<property name="jar.home" value="${jar.plugin.home}/${jar.name}" />
<!-- temp dir for clasee files -->
<property name="build.dir" value="../../build" />

View File

@@ -68,12 +68,14 @@ public class RowParser extends DelimitedDataReader {
values = null;
if (rowSeparator.equals("\n") || rowSeparator.equals("\r\n")) {
if ("\n".equals(rowSeparator) || "\r\n".equals(rowSeparator)) {
// simpleMode = true;
mode = 0;
scanner = new Scanner(inputStream);
scanner.useDelimiter(rowSeparator);
} else {
if("\r\n".equals(rowSeparator)){
scanner = new Scanner(inputStream);
scanner.useDelimiter(rowSeparator);
}
} else if(rowSeparator!=null) {
streamBuffer = new StreamBuffer();
rowBuffer = new ColumnBuffer();
@@ -125,7 +127,7 @@ public class RowParser extends DelimitedDataReader {
}
try {
if (initialized && mode == 0) {
if (initialized && scanner != null) {
scanner.close();
} else if(initialized) {
inputStream.close();
@@ -151,10 +153,17 @@ public class RowParser extends DelimitedDataReader {
if (skipEmptyRecord) {
do {
rowRecord = null;
if (!scanner.hasNext()) {
return false;
}
rowRecord = scanner.next();
if(scanner != null){
if (!scanner.hasNext()) {
return false;
}
rowRecord = scanner.next();
}else{
rowRecord = inputStream.readLine();
if (rowRecord == null) {
return false;
}
}
if (!rowRecord.equals("")) {
currentRecord++;
return true;
@@ -162,13 +171,23 @@ public class RowParser extends DelimitedDataReader {
} while (true);
} else {
rowRecord = null;
if (!scanner.hasNext()) {
return false;
} else {
rowRecord = scanner.next();
currentRecord++;
return true;
}
if (scanner != null) {
if (!scanner.hasNext()) {
return false;
} else {
rowRecord = scanner.next();
currentRecord++;
return true;
}
}else{
rowRecord = inputStream.readLine();
if (rowRecord == null) {
return false;
} else {
currentRecord++;
return true;
}
}
}
} else if (mode == 1) {
hasReadRecord = false;

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -0,0 +1 @@
jarprocessor.exclude.children=true

View File

@@ -36,6 +36,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
REQUIRED="true"
NUM_ROW="10"
>

View File

@@ -70,6 +70,7 @@ List<Column> stmtStructure = null;
Manager manager = null;
if(columnList != null && columnList.size() > 0) {
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
}
%>
@@ -78,7 +79,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int updateKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isUpdateKey()) {
if(column.isUpdateKey() && !column.isDynamic()) {
updateKeyCount++;
}
}
@@ -93,7 +94,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int deleteKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isDeleteKey()) {
if(column.isDeleteKey() && !column.isDynamic()) {
deleteKeyCount++;
}
}

View File

@@ -73,8 +73,6 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
Manager manager = null;
boolean isDynamic = false;
List<IMetadataTable> metadatas = node.getMetadataList();
@@ -83,10 +81,13 @@ skeleton="../templates/db_output_bulk.skeleton"
isDynamic = metadata.isDynamicSchema();
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
////////////////////////////////////////////////////////////
List<Column> colStruct = new ArrayList<Column>();
for(Column colStmt : stmtStructure) {
if(!colStmt.isReplaced() && !colStmt.isAddCol()) {
if(!colStmt.isReplaced() && !colStmt.isAddCol() && !colStmt.isDynamic()) {
colStruct.add(colStmt);
}
}
@@ -118,10 +119,10 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns_dynamic.get(0);
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
}
@@ -134,10 +135,10 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns_dynamic.get(0);
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -150,18 +151,18 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns_dynamic.get(0);
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -176,18 +177,18 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns_dynamic.get(0);
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -261,7 +262,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -289,8 +290,8 @@ skeleton="../templates/db_output_bulk.skeleton"
}else {
%>
try {
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.sql.SQLException e) {
whetherReject_<%=cid%> = true;
<%
@@ -310,6 +311,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -339,7 +341,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -395,8 +397,8 @@ skeleton="../templates/db_output_bulk.skeleton"
}else {
%>
try {
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.sql.SQLException e) {
whetherReject_<%=cid%> = true;
<%
@@ -416,6 +418,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -471,7 +474,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -533,6 +536,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -562,7 +566,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -596,6 +600,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -631,7 +636,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -695,6 +700,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -730,7 +736,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -764,6 +770,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -845,6 +852,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -153,6 +153,7 @@ try {
}
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -88,6 +88,9 @@ skeleton="../templates/db_output_bulk.skeleton"
Manager manager = null;
if(columnList != null && columnList.size() > 0) {
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, false, null, null);
}
if((columnList != null && columnList.size() > 0) || "CLEAR".equals(tableAction)){
%>
<%@ include file="../templates/_tableActionForBulk.javajet"%>
<%

View File

@@ -68,6 +68,11 @@
</ITEMS>
</PARAMETER>
<PARAMETER NAME="TYPE" FIELD="TEXT" NUM_ROW="20" SHOW="false"
REPOSITORY_VALUE="TYPE">
<DEFAULT>Access</DEFAULT>
</PARAMETER>
<PARAMETER
NAME="DBNAME"

View File

@@ -48,6 +48,7 @@ skeleton="../templates/db_output_bulk.skeleton"
String dbproperties = ElementParameterParser.getValue(node, "__PROPERTIES__");
boolean isParallelize ="true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__PARALLELIZE__"));
%>
<%
@@ -167,7 +168,7 @@ if(!useExistingConnection) {
<%
if(columnList != null && columnList.size()>0) {
if(!("NONE").equals(tableAction)) {
if(!isParallelize && !("NONE").equals(tableAction)) {
Manager manager = getManager(dbmsId, cid);
if(("DROP_CREATE").equals(tableAction)) {
%>

View File

@@ -157,6 +157,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -242,6 +243,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -353,6 +355,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -406,6 +409,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -496,6 +500,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -554,6 +559,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -625,6 +631,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -71,10 +71,15 @@ if ((metadatas!=null)&&(metadatas.size()>0)) {
}
%>
java.io.File file_<%=cid%>=new java.io.File(<%=filename %>);
final java.io.BufferedWriter out<%=cid %> = new java.io.BufferedWriter(new java.io.OutputStreamWriter(
new java.io.FileOutputStream(fileName_<%=cid%>, <%= isAppend%>),<%= encoding%>));
new java.io.FileOutputStream(file_<%=cid%>, <%= isAppend%>),<%= encoding%>));
resourceMap.put("out<%=cid%>", out<%=cid%>);
<%
if(isIncludeHeader){
%>
if(file_<%=cid%>.length()==0){
<%
if(isIncludeHeader&&!isAppend){
List<IMetadataColumn> columns = metadata.getListColumns();
int sizeColumns = columns.size();
for (int i = 0; i < sizeColumns; i++) {
@@ -88,6 +93,7 @@ if ((metadatas!=null)&&(metadatas.size()>0)) {
}%>
out<%=cid %>.write(OUT_DELIM_ROWSEP_<%=cid %>);
out<%=cid%>.flush();
}
<%
}
}

View File

@@ -10,4 +10,5 @@
String cid = node.getUniqueName();
%>
out<%=cid %>.close();
resourceMap.put("finish_<%=cid%>", true);
globalMap.put("<%=cid %>_NB_LINE",nb_line_<%=cid %>);

View File

@@ -0,0 +1,16 @@
<%@ jet
imports="
org.talend.core.model.process.INode
org.talend.designer.codegen.config.CodeGeneratorArgument
"
%>
<%
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
INode node = (INode)codeGenArgument.getArgument();
String cid = node.getUniqueName();
%>
if(resourceMap.get("finish_<%=cid%>") == null){
if(resourceMap.get("out<%=cid%>") != null){
((java.io.BufferedWriter)resourceMap.get("out<%=cid%>")).close();
}
}

View File

@@ -68,6 +68,10 @@
</ITEMS>
</PARAMETER>
<PARAMETER NAME="TYPE" FIELD="TEXT" NUM_ROW="20" SHOW="false"
REPOSITORY_VALUE="TYPE">
<DEFAULT>Access</DEFAULT>
</PARAMETER>
<PARAMETER
NAME="DBNAME"
@@ -231,6 +235,7 @@
<TEMPLATE_PARAM SOURCE="self.DB_VERSION" TARGET="tABE.DB_VERSION" />
<TEMPLATE_PARAM SOURCE="self.DBNAME" TARGET="tABE.DBNAME" />
<TEMPLATE_PARAM SOURCE="self.TYPE" TARGET="tABE.TYPE" />
<TEMPLATE_PARAM SOURCE="self.USER" TARGET="tABE.USER" />
<TEMPLATE_PARAM SOURCE="self.PASS" TARGET="tABE.PASS" />
<TEMPLATE_PARAM SOURCE="self.TABLE_ACTION" TARGET="tABE.TABLE_ACTION" />

View File

@@ -44,6 +44,11 @@
</ITEMS>
</PARAMETER>
<PARAMETER NAME="TYPE" FIELD="TEXT" NUM_ROW="20" SHOW="false"
REPOSITORY_VALUE="TYPE">
<DEFAULT>Access</DEFAULT>
</PARAMETER>
<PARAMETER NAME="DBNAME" FIELD="FILE" NUM_ROW="20"
REQUIRED="true" REPOSITORY_VALUE="FILE" SHOW_IF="USE_EXISTING_CONNECTION == 'false'">

View File

@@ -157,6 +157,7 @@ whetherReject_<%=cid%> = false;
}
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -25,7 +25,7 @@
<PARAMETERS>
<PARAMETER NAME="SCHEMA" FIELD="SCHEMA_TYPE" REQUIRED="true"
<PARAMETER NAME="SCHEMA" FIELD="SCHEMA_TYPE" READONLY="true" REQUIRED="true"
NUM_ROW="10">
<TABLE READONLY="true">
<COLUMN NAME="CRC" TYPE="id_Long" LENGTH="255"

View File

@@ -37,6 +37,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
REQUIRED="true"
NUM_ROW="10"
>

View File

@@ -159,20 +159,33 @@ class GenerateToolByDom4j{
}
if(isAppend){
%>
int app_size_<%=cid %>=<%=parentName%>_<%=cid%>.elements("<%=node.name%>").size();
List currentList_<%=cid %> = <%=parentName%>_<%=cid%>.elements("<%=node.name%>");
int app_size_<%=cid %> = currentList_<%=cid %>.size();
if(app_size_<%=cid %> > 0){
orders_<%=cid %>[<%=currPos %>] =1+ <%=parentName%>_<%=cid%>.elements().indexOf(<%=parentName%>_<%=cid%>.elements("<%=node.name%>").get(app_size_<%=cid %>-1));
}else{
orders_<%=cid %>[<%=currPos %>] =1+ <%=parentName%>_<%=cid%>.elements().indexOf(currentList_<%=cid %>.get(app_size_<%=cid %>-1));
}else{//when the group or loop element appear first time
<%
if(currPos==0){
List<XMLNode> nextSiblings = node.getNextSiblings();
%>
orders_<%=cid %>[<%=currPos %>] = <%=parentName%>_<%=cid%>.elements().size();
List allList_<%=cid %> = <%=parentName%>_<%=cid%>.elements();
//append tail as default action
orders_<%=cid %>[<%=currPos %>] = allList_<%=cid%>.size();
<%
}else{
if(nextSiblings.size() > 0) {
%>
orders_<%=cid %>[<%=currPos %>] = <%=node.getNodeInsertIndex() %>;
if(orders_<%=cid %>[<%=currPos %>] == 0 && <%=parentName%>_<%=cid%>.elements().size() != 0 && !bl_<%=cid%>) {
orders_<%=cid %>[<%=currPos %>] = <%=parentName%>_<%=cid%>.elements().size();
List siblingList_<%=cid %> = null;
boolean findInsertPosition_<%=cid%> = false;
<%
}
for(XMLNode sibling : nextSiblings) {
%>
if(!findInsertPosition_<%=cid%> && allList_<%=cid%>.size()!=0) {
siblingList_<%=cid%> = <%=parentName%>_<%=cid%>.elements("<%=sibling.name%>");
if(siblingList_<%=cid %>.size() > 0) {
findInsertPosition_<%=cid%> = true;
orders_<%=cid %>[<%=currPos %>] = allList_<%=cid %>.indexOf(siblingList_<%=cid %>.get(0));
}
}
<%
}

View File

@@ -149,7 +149,6 @@ String cid = node.getUniqueName();
String cid_original = cid;
cid = cid_original.replace("tAdvancedFileOutputXML","tAFOX");
String filename = ElementParameterParser.getValue(node, "__FILENAME__");
boolean isDeleteEmptyFile = ("true").equals(ElementParameterParser.getValue(node, "__DELETE_EMPTYFILE__"));
boolean isCompact = ("true").equals(ElementParameterParser.getValue(node, "__PRETTY_COMPACT__"));
@@ -331,6 +330,6 @@ globalMap.put("<%=cid_original %>_NB_LINE",nb_line_<%=cid %>);
<%if(!useStream && isDeleteEmptyFile){%>
if((nb_line_<%=cid %> == 0) && !alreadyExistsFile_<%=cid%>){
new java.io.File(<%=filename %>).delete();
createFile<%=cid%>.delete();
}
<%}%>

View File

@@ -78,6 +78,18 @@ public class CLASS {
return insertIndex;
}
public List<XMLNode> getNextSiblings(){
List<XMLNode> result = new ArrayList<XMLNode>();
if(parent!=null && parent.elements!=null){
for(XMLNode tmpNode: parent.elements){
if(order < tmpNode.order){
result.add(tmpNode);
}
}
}
return result;
}
public int getCurrGroupPos(){
int currPos =0;
if(5==(special & 5)){//group and loop main node

View File

@@ -290,8 +290,7 @@ if(column_gr.length > 0){//while loop
%>
while(true){
<% for(int i = 0; i < column_gr.length; i++){
JavaType javaType = JavaTypesManager.getJavaTypeFromId(column_gr[i][0].getTalendType());
if(JavaTypesManager.isNumberType(javaType) && javaType != JavaTypesManager.BIGDECIMAL && !column_gr[i][0].isNullable()){
if(JavaTypesManager.isJavaPrimitiveType(column_gr[i][0].getTalendType(),column_gr[i][0].isNullable())){
%>
if(group_<%=column_gr[i][0].getLabel() %>_<%=cid %> != <%=connName %>.<%=column_gr[i][0].getLabel() %>){
sameGroup_<%=cid %> = false;

View File

@@ -96,6 +96,7 @@ List<Column> stmtStructure = null;
Manager manager = null;
if(columnList != null && columnList.size() > 0) {
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
}
%>
@@ -104,7 +105,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int updateKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isUpdateKey()) {
if(column.isUpdateKey() && !column.isDynamic()) {
updateKeyCount++;
}
}
@@ -119,7 +120,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int deleteKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isDeleteKey()) {
if(column.isDeleteKey() && !column.isDynamic()) {
deleteKeyCount++;
}
}
@@ -481,7 +482,7 @@ if(isDynamic) {
class BufferLine_<%=cid%> {
<%
for(Column column : stmtStructure) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable()) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable() && !column.isDynamic()) {
String typeToGenerate = JavaTypesManager.getTypeToGenerate(column.getColumn().getTalendType(), column.getColumn().isNullable());
%>
<%=typeToGenerate%> <%=column.getName()%>;
@@ -489,7 +490,7 @@ if(isDynamic) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -503,7 +504,7 @@ if(isDynamic) {
<%
int count = 0;
for(Column column : stmtStructure) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable()) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable() && !column.isDynamic()) {
if(count != 0) {
%>
,
@@ -517,7 +518,7 @@ if(isDynamic) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -530,14 +531,14 @@ if(isDynamic) {
){
<%
for(Column column : stmtStructure) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable()) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable() && !column.isDynamic()) {
%>
this.<%=column.getName()%> = <%=column.getName()%>;
<%
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>

View File

@@ -77,8 +77,7 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns.get(0);
incomingConnName = conn.getName();
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
boolean isDynamic = false;
List<IMetadataTable> metadatas = node.getMetadataList();
if ((metadatas!=null)&&(metadatas.size()>0)) {
@@ -86,6 +85,9 @@ skeleton="../templates/db_output_bulk.skeleton"
isDynamic = metadata.isDynamicSchema();
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
String dbVersion = "" ;
String connection = ElementParameterParser.getValue(node,"__CONNECTION__");
if(("true").equals(useExistingConn)) {
@@ -312,7 +314,7 @@ skeleton="../templates/db_output_bulk.skeleton"
<%
}
for(Column column : stmtStructure) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable()) {
if(!column.isReplaced() && !column.isAddCol() && column.isInsertable() && !column.isDynamic()) {
String typeToGenerate = JavaTypesManager.getTypeToGenerate(column.getColumn().getTalendType(), column.getColumn().isNullable());
eiOperation.generateSetStmt(typeToGenerate, column, cid);
%>
@@ -321,7 +323,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>

View File

@@ -89,8 +89,6 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
Manager manager = null;
boolean isDynamic = false;
List<IMetadataTable> metadatas = node.getMetadataList();
@@ -99,6 +97,9 @@ skeleton="../templates/db_output_bulk.skeleton"
isDynamic = metadata.isDynamicSchema();
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
if(isDynamic) {
%>
if(nb_line_<%=cid%>==0) {
@@ -190,10 +191,10 @@ if(columnList != null && columnList.size() > 0) {
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
}
@@ -243,7 +244,7 @@ if(columnList != null && columnList.size() > 0) {
if(conns_dynamic!=null && conns_dynamic.size()>0){
IConnection conn = conns_dynamic.get(0);
%>
extendInsertValueStmt_<%=cid%>.append("(<%=insertValueStmt.toString()%>,"+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")");
extendInsertValueStmt_<%=cid%>.append("(<%=insertValueStmt.toString()%>,"+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")");
<%
}
} else {
@@ -260,10 +261,10 @@ if(columnList != null && columnList.size() > 0) {
IConnection conn = conns_dynamic.get(0);
if(!("".equals(insertColName.toString()))) {
%>
insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES " + extendInsertValueStmt_<%=cid%>.toString();
insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES " + extendInsertValueStmt_<%=cid%>.toString();
<% } else {
%>
insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES " + extendInsertValueStmt_<%=cid%>.toString();
insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES " + extendInsertValueStmt_<%=cid%>.toString();
<%
}
if (supportDuplicateUpdate) {
@@ -278,13 +279,13 @@ if(columnList != null && columnList.size() > 0) {
if(!("".equals(insertColName.toString()))) {
%>
insertColName<%=cid%> = "<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>");
insertColValue<%=cid%> = "<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>);
insertColName<%=cid%> = "<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>");
insertColValue<%=cid%> = "<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>);
<%
} else {
%>
insertColName<%=cid%> = DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>");
insertColValue<%=cid%> = DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>);
insertColName<%=cid%> = DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>");
insertColValue<%=cid%> = DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>);
<%
}
}
@@ -303,10 +304,10 @@ if(columnList != null && columnList.size() > 0) {
IConnection conn = conns_dynamic.get(0);
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + <%=table%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
}
@@ -340,10 +341,10 @@ if(columnList != null && columnList.size() > 0) {
IConnection conn = conns_dynamic.get(0);
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -358,18 +359,18 @@ if(columnList != null && columnList.size() > 0) {
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -387,18 +388,18 @@ if(columnList != null && columnList.size() > 0) {
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO `" + tableName_<%=cid%> + "` ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE `" + tableName_<%=cid%> + "` SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -447,7 +448,7 @@ if(columnList != null && columnList.size() > 0) {
////////////////////////////////////////////////////////////
List<Column> colStruct = new ArrayList();
for(Column colStmt : stmtStructure){
if(!colStmt.isReplaced() && !colStmt.isAddCol()){
if(!colStmt.isReplaced() && !colStmt.isAddCol() && !colStmt.isDynamic()){
colStruct.add(colStmt);
}
}
@@ -667,7 +668,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -695,7 +696,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -741,7 +742,7 @@ if(columnList != null && columnList.size() > 0) {
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -770,8 +771,8 @@ if(columnList != null && columnList.size() > 0) {
}else {
%>
try {
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -789,6 +790,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -823,7 +826,7 @@ if(columnList != null && columnList.size() > 0) {
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -838,8 +841,8 @@ if(columnList != null && columnList.size() > 0) {
}
%>
try {
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -857,6 +860,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -886,7 +891,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -947,8 +952,8 @@ if(columnList != null && columnList.size() > 0) {
}else {
%>
try {
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -966,6 +971,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1026,7 +1033,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -1089,6 +1096,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1118,7 +1127,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -1151,6 +1160,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1184,7 +1195,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -1252,6 +1263,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1287,7 +1300,7 @@ if(columnList != null && columnList.size() > 0) {
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -1320,6 +1333,8 @@ if(columnList != null && columnList.size() > 0) {
<%
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1405,6 +1420,7 @@ if(columnList != null && columnList.size() > 0) {
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
@@ -1466,6 +1482,7 @@ if(columnList != null && columnList.size() > 0) {
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1542,6 +1559,7 @@ if(columnList != null && columnList.size() > 0) {
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1583,8 +1601,8 @@ if(columnList != null && columnList.size() > 0) {
}
%>
try {
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -1603,6 +1621,7 @@ if(columnList != null && columnList.size() > 0) {
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%>+ 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -157,6 +157,7 @@ try {
}
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -83,13 +83,15 @@ Manager manager = null;
if(columnList != null && columnList.size() > 0) {
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
if(convertToUppercase) {
for(Column column : stmtStructure) {
if(column.isReplaced()) {
for (Column replacedColumn : column.getReplacement()) {
replacedColumn.setColumnName(replacedColumn.getColumnName().toUpperCase());
}
} else {
} else if(!column.isDynamic()){
column.setColumnName(column.getColumnName().toUpperCase());
}
}
@@ -98,7 +100,7 @@ if(columnList != null && columnList.size() > 0) {
boolean xmlTypeExist = false;
for(Column column : stmtStructure) {
//when use Additional column column.getColumn() == null
if (column.getColumn()!= null && "XMLTYPE".equals(column.getColumn().getType())) {
if (column.getColumn()!= null && "XMLTYPE".equals(column.getColumn().getType()) && !column.isDynamic()) {
column.setSqlStmt("XMLType(?)");
xmlTypeExist = true;
}
@@ -110,7 +112,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int updateKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isUpdateKey()) {
if(column.isUpdateKey() && !column.isDynamic()) {
updateKeyCount++;
}
}
@@ -125,7 +127,7 @@ if(("UPDATE").equals(dataAction) || ("INSERT_OR_UPDATE").equals(dataAction) || (
int deleteKeyCount = 0;
if(stmtStructure != null) {
for(Column column : stmtStructure) {
if(column.isDeleteKey()) {
if(column.isDeleteKey() && !column.isDynamic()) {
deleteKeyCount++;
}
}

View File

@@ -199,7 +199,7 @@
</PARAMETER>
<PARAMETER NAME="NOTE" FIELD="LABEL" NUM_ROW="81"
NOT_SHOW_IF="(TABLE_ACTION == 'NONE') OR (USE_EXISTING_CONNECTION == 'false')"
NOT_SHOW_IF="(PARALLELIZE == 'true') OR (TABLE_ACTION == 'NONE') OR (USE_EXISTING_CONNECTION == 'false')"
>
<DEFAULT>Warning : this component configuration will automatically generate a commit before data insert/update/delete</DEFAULT>
</PARAMETER>

View File

@@ -85,8 +85,6 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
Manager manager = null;
boolean isDynamic = false;
List<IMetadataTable> metadatas = node.getMetadataList();
@@ -95,6 +93,9 @@ skeleton="../templates/db_output_bulk.skeleton"
isDynamic = metadata.isDynamicSchema();
}
List<Column> stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
if(isDynamic) {
%>
if(nb_line_<%=cid%>==0) {
@@ -178,10 +179,10 @@ skeleton="../templates/db_output_bulk.skeleton"
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>,"<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>,"<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
}
@@ -215,10 +216,10 @@ skeleton="../templates/db_output_bulk.skeleton"
IConnection conn = conns_dynamic.get(0);
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -236,18 +237,18 @@ skeleton="../templates/db_output_bulk.skeleton"
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -264,18 +265,18 @@ skeleton="../templates/db_output_bulk.skeleton"
if(!("".equals(insertColName.toString()))) {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<% } else {
%>
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>)+")";
String insert_<%=cid%> = "INSERT INTO " + tableName_<%=cid%> + " ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
<%
}
if(!("".equals(updateSetStmt.toString()))) {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET <%=updateSetStmt.toString()%>, "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<% } else {
%>
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=columnList.get(columnList.size()-1)%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
String update_<%=cid%> = "UPDATE " + tableName_<%=cid%> + " SET "+DynamicUtils.getUpdateSet(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+" WHERE <%=updateWhereStmt.toString()%>";
<%
}
}
@@ -307,7 +308,7 @@ skeleton="../templates/db_output_bulk.skeleton"
////////////////////////////////////////////////////////////
List<Column> colStruct = new ArrayList();
for(Column colStmt : stmtStructure) {
if(!colStmt.isReplaced() && !colStmt.isAddCol()) {
if(!colStmt.isReplaced() && !colStmt.isAddCol() && !colStmt.isDynamic()) {
colStruct.add(colStmt);
}
}
@@ -413,7 +414,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -442,8 +443,8 @@ skeleton="../templates/db_output_bulk.skeleton"
}else {
%>
try {
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
insertedCount_<%=cid%> = insertedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -463,6 +464,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -497,7 +499,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -560,8 +562,8 @@ skeleton="../templates/db_output_bulk.skeleton"
}else {
%>
try {
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
nb_line_<%=cid%>++;
updatedCount_<%=cid%> = updatedCount_<%=cid%> + pstmt_<%=cid %>.executeUpdate();
} catch(java.lang.Exception e) {
whetherReject_<%=cid%> = true;
<%
@@ -581,6 +583,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -651,7 +654,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -719,6 +722,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -752,7 +756,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -787,6 +791,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -824,7 +829,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -896,6 +901,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -934,7 +940,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
}
if(isDynamic) {
Column dynamicColumn = getColumn(columnList.get(columnList.size()-1));
Column dynamicColumn = getColumn(getDynamicColumn());
String typeToGenerate = JavaTypesManager.getTypeToGenerate(dynamicColumn.getColumn().getTalendType(), dynamicColumn.getColumn().isNullable());
if("Dynamic".equals(typeToGenerate)) {
%>
@@ -970,6 +976,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {
@@ -1056,6 +1063,7 @@ skeleton="../templates/db_output_bulk.skeleton"
}
%>
rejectedCount_<%=cid%> = rejectedCount_<%=cid%> + 1;
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -197,6 +197,7 @@ try {
}
}
%>
<%=rejectConnName%>.errorCode = ((java.sql.SQLException)e).getSQLState();
<%=rejectConnName%>.errorMessage = e.getMessage() + " - Line: " + tos_count_<%=node.getUniqueName() %>;
<%
} else {

View File

@@ -80,6 +80,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
REQUIRED="true"
NUM_ROW="10"

View File

@@ -32,7 +32,7 @@ COMPATIBILITY="ALL"
</CONNECTORS>
<PARAMETERS>
<PARAMETER NAME="SCHEMA" FIELD="SCHEMA_TYPE" REQUIRED="true" NUM_ROW="1" >
<PARAMETER NAME="SCHEMA" FIELD="SCHEMA_TYPE" READONLY="true" REQUIRED="true" NUM_ROW="1" >
<TABLE READONLY="true">
<COLUMN NAME="moment" TYPE="id_Date" PATTERN='"yyyy-MM-dd HH:mm:ss"'/>
<COLUMN NAME="pid" TYPE="id_String" LENGTH="20"/>

View File

@@ -23,7 +23,9 @@ if (inConns != null && !inConns.isEmpty()) {
for (IMetadataColumn column : columns) {
columnsName.add(column.getLabel());
}
%>
int nb_line_<%=cid%> = 0;
<%
if (columnsName.contains("value") && columnsName.contains("series") && columnsName.contains("category")) {
%>
org.jfree.data.category.DefaultCategoryDataset dataset_<%=cid%> = new org.jfree.data.category.DefaultCategoryDataset();

View File

@@ -50,4 +50,7 @@ if (inConns != null && !inConns.isEmpty()) {
org.jfree.chart.ChartUtilities.saveChartAsPNG(new java.io.File(<%=filePath%>), chart_<%=cid%>, <%=imageWidth%>, <%=imageHeight%>);
<%
}
%>
globalMap.put("<%=cid %>_NB_LINE",nb_line_<%=cid%>);
<%
}%>

View File

@@ -27,6 +27,7 @@ if (inConns != null && !inConns.isEmpty()) {
if (columnsName.contains("value") && columnsName.contains("series") && columnsName.contains("category")) {
%>
dataset_<%=cid%>.setValue(<%=sInConnName%>.value, <%=sInConnName%>.series, <%=sInConnName%>.category);
nb_line_<%=cid%> ++;
<%}
}
%>

View File

@@ -13,4 +13,5 @@ VALUE_AXIS.NAME=Value axis name
FORE_GROUND_ALPHA.NAME=Foreground alpha
PLOT_ORIENTATION.NAME=Plot orientation
PLOT_ORIENTATION.ITEM.VERTICAL=VERTICAL
PLOT_ORIENTATION.ITEM.HORIZONTAL=HORIZONTAL
PLOT_ORIENTATION.ITEM.HORIZONTAL=HORIZONTAL
NB_LINE.NAME=Number of line

View File

@@ -19,23 +19,23 @@ imports="
String process_name = ElementParameterParser.getValue(node, "__PROCESS_NAME__");
String process_version = ElementParameterParser.getValue(node, "__PROCESS_VERSION__");
String userName = ElementParameterParser.getValue(node, "__USERNAME__");
%>
String processInstanceUUID_<%=cid%> = null;
StringBuilder parameters_<%=cid%> = new StringBuilder("options=user:");
parameters_<%=cid%>.append(<%=userName%>);
String url_<%=cid %> = <%=url%> + "API/runtimeAPI/instantiateProcessWithVariables/" + <%=process_name%> +"--" +<%=process_version%>;
java.net.HttpURLConnection httpConn_<%=cid %> = null;
%>
String processInstanceUUID_<%=cid%> = null;
StringBuilder parameters_<%=cid%> = new StringBuilder("options=user:");
parameters_<%=cid%>.append(<%=userName%>);
String url_<%=cid %> = <%=url%> + "API/runtimeAPI/instantiateProcessWithVariables/" + <%=process_name%> +"--" +<%=process_version%>;
java.net.HttpURLConnection httpConn_<%=cid %> = null;
try {
httpConn_<%=cid %> = (java.net.HttpURLConnection) new java.net.URL(url_<%=cid%>).openConnection();
resourceMap.put("httpConn_<%=cid%>", httpConn_<%=cid%>);
httpConn_<%=cid %>.setUseCaches (false);
httpConn_<%=cid %>.setDoInput(true);
httpConn_<%=cid %>.setDoOutput(true);
httpConn_<%=cid %>.setInstanceFollowRedirects(false);
httpConn_<%=cid %>.setRequestMethod("POST");
httpConn_<%=cid %>.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
httpConn_<%=cid %>.setRequestProperty("Authorization", "Basic " + org.ow2.bonita.util.Base64.encodeBytes((<%=authUserName%>+":"+<%=authPasswd%>).getBytes()));
<%
httpConn_<%=cid %>.setRequestProperty("Authorization", "Basic " + new String(org.apache.commons.codec.binary.Base64.encodeBase64((<%=authUserName%>+ ":"+ <%=authPasswd%>).getBytes(utf8Charset)),utf8Charset));
<%
} else { // JAVA CLIENT
String processID = ElementParameterParser.getValue(node, "__PROCESS_ID__");
@@ -57,15 +57,15 @@ imports="
String bonitaHome = ElementParameterParser.getValue(node, "__BONITA_HOME__");
if("BONITA_561".equals(dbVersion)){
%>
System.setProperty("BONITA_HOME", <%=bonitaHome%>);
<%
%>
System.setProperty("BONITA_HOME", <%=bonitaHome%>);
<%
}else if("BONITA_531".equals(dbVersion)||"BONITA_523".equals(dbVersion)){
%>
System.setProperty("org.ow2.bonita.environment", <%=bonitaEnvironmentFile%> );
<%
%>
System.setProperty("org.ow2.bonita.environment", <%=bonitaEnvironmentFile%> );
<%
}
%>
%>
System.setProperty("java.security.auth.login.config", <%=jassFile%> );
System.setProperty("java.util.logging.config.file", new java.io.File(<%=loggingFile%>).toURI().toURL().toString());
@@ -77,19 +77,18 @@ imports="
String processInstanceUUID_<%=cid%> = null;
java.util.Map<String, Object> parameters_<%=cid%>=new java.util.HashMap<String, Object>();
try {
loginContext_<%=cid%> = new javax.security.auth.login.LoginContext(<%=loginModule%>, new org.ow2.bonita.util.SimpleCallbackHandler(<%=userName%>, <%=password%>));
loginContext_<%=cid%>.login();
<%
loginContext_<%=cid%> = new javax.security.auth.login.LoginContext(<%=loginModule%>, new org.ow2.bonita.util.SimpleCallbackHandler(<%=userName%>, <%=password%>));
resourceMap.put("loginContext_<%=cid%>", loginContext_<%=cid%>);
loginContext_<%=cid%>.login();
<%
if("true".equals(use_process_id)) {
%>
%>
processID_<%=cid%> = new org.ow2.bonita.facade.uuid.ProcessDefinitionUUID(<%=processID%>);
<%
<%
} else {
%>
%>
processID_<%=cid%> = new org.ow2.bonita.facade.uuid.ProcessDefinitionUUID(<%=process_name%>, <%=process_version%>);
<%
<%
}
}
%>
}
%>

View File

@@ -11,22 +11,8 @@ imports="
INode node = (INode)codeGenArgument.getArgument();
String cid = node.getUniqueName();
boolean dieOnError = ("true").equals(ElementParameterParser.getValue(node, "__DIE_ON_ERROR__"));
String clientMode = ElementParameterParser.getValue(node, "__CLIENT_MODE__");
%>
} catch (java.lang.Exception lee_<%=cid%>) {
<%
if (dieOnError) {
%>
throw lee_<%=cid%>;
<%
} else {
%>
System.err.println(lee_<%=cid%>.getMessage());
<%
}
%>
} finally {
<%
if ("HTTP_CLIENT".equals(clientMode)) {
%>
@@ -42,4 +28,4 @@ imports="
<%
}
%>
}
resourceMap.put("finish_<%=cid%>", true);

View File

@@ -0,0 +1,32 @@
<%@ jet
imports="
org.talend.core.model.process.INode
org.talend.core.model.process.ElementParameterParser
org.talend.designer.codegen.config.CodeGeneratorArgument
"
%>
<%
CodeGeneratorArgument codeGenArgument = (CodeGeneratorArgument) argument;
INode node = (INode)codeGenArgument.getArgument();
String cid = node.getUniqueName();
String clientMode = ElementParameterParser.getValue(node, "__CLIENT_MODE__");
%>
if(resourceMap.get("finish_<%=cid%>") == null){
<%
if ("HTTP_CLIENT".equals(clientMode)) {
%>
if (resourceMap.get("httpConn_<%=cid %>") != null) {
((java.net.HttpURLConnection)resourceMap.get("httpConn_<%=cid %>")).disconnect();
}
<%
} else {
%>
if (resourceMap.get("loginContext_<%=cid%>") != null) {
((javax.security.auth.login.LoginContext)resourceMap.get("loginContext_<%=cid%>")).logout();
}
<%
}
%>
}

View File

@@ -40,6 +40,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
NUM_ROW="1"
>
<TABLE READONLY="true">
@@ -211,7 +212,7 @@
<!-- Bonita 5.2.3 -->
<IMPORT NAME="bonita_client_523" MODULE="bonita-client-5.2.3.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-client-5.2.3.jar" REQUIRED="false" />
<IMPORT NAME="bonita_server_523" MODULE="bonita-server-5.2.3.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-server-5.2.3.jar" REQUIRED="false" />
<IMPORT NAME="atlr_276" MODULE="antlr-2.7.6.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.axis2/lib/antlr-2.7.6.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="atlr_276" MODULE="antlr-2.7.6.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.axis2/lib/antlr-2.7.6.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="asm_153" MODULE="asm-1.5.3.jar" UrlPath="platform:/plugin/org.talend.libraries.asm/lib/asm-1.5.3.jar" REQUIRED="false" />
<IMPORT NAME="asm_31" MODULE="asm-3.1.jar" UrlPath="platform:/plugin/org.talend.libraries.asm/lib/asm-3.1.jar" REQUIRED="false" />
<IMPORT NAME="asm_attrs_153" MODULE="asm-attrs-1.5.3.jar" UrlPath="platform:/plugin/org.talend.libraries.asm/lib/asm-attrs-1.5.3.jar" REQUIRED="false" />
@@ -219,14 +220,14 @@
<IMPORT NAME="cglib_nodep_213" MODULE="cglib-nodep-2.1_3.jar" REQUIRED="false" />
<IMPORT NAME="commons_collections_211" MODULE="commons-collections-2.1.1.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-collections-2.1.1.jar" REQUIRED="false" />
<IMPORT NAME="commons_logging_104" MODULE="commons-logging-1.0.4.jar" UrlPath="platform:/base/plugins/org.apache.commons.logging_1.0.4.v201101211617.jar" REQUIRED="false" />
<IMPORT NAME="dom4j_161" MODULE="dom4j-1.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.dom4j-jaxen/lib/dom4j-1.6.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="dom4j_161" MODULE="dom4j-1.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.dom4j-jaxen/lib/dom4j-1.6.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="ehcache_123" MODULE="ehcache-1.2.3.jar" UrlPath="platform:/plugin/org.talend.libraries.ehcache/lib/ehcache-1.2.3.jar" REQUIRED="false" />
<IMPORT NAME="groovy_all_170" MODULE="groovy-all-1.7.0.jar" UrlPath="platform:/plugin/org.talend.libraries.groovy/lib/groovy-all-1.7.0.jar" REQUIRED="false" />
<IMPORT NAME="h2_12132" MODULE="h2-1.2.132.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.h2/lib/h2-1.2.132.jar" REQUIRED="false" />
<IMPORT NAME="hibernate_326_ga" MODULE="hibernate-3.2.6.ga.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-3.2.6.ga.jar" REQUIRED="false" />
<IMPORT NAME="jline_0994" MODULE="jline-0.9.94.jar" REQUIRED="false" />
<IMPORT NAME="jta_11" MODULE="jta-1.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="jta_11" MODULE="jta-1.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="novabpmidentity_10" MODULE="novaBpmIdentity-1.0.jar" UrlPath="platform:/plugin/org.talend.libraries.novabpm/lib/novaBpmIdentity-1.0.jar" REQUIRED="false" />
<IMPORT NAME="novabpmperf_10" MODULE="novaBpmPerf-1.0.jar" UrlPath="platform:/plugin/org.talend.libraries.novabpm/lib/novaBpmPerf-1.0.jar" REQUIRED="false" />
@@ -237,26 +238,26 @@
<!-- Bonita 5.3.1 -->
<IMPORT NAME="bonita_client_53" MODULE="bonita-client-5.3.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-client-5.3.jar" REQUIRED="false" />
<IMPORT NAME="bonita_server_53" MODULE="bonita-server-5.3.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-server-5.3.jar" REQUIRED="false" />
<IMPORT NAME="hibernate_core_356" MODULE="hibernate-core-3.5.6-Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-core-3.5.6-Final.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="commons_collections_31" MODULE="commons-collections-3.1.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-collections-3.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="hibernate_core_356" MODULE="hibernate-core-3.5.6-Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-core-3.5.6-Final.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="commons_collections_31" MODULE="commons-collections-3.1.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-collections-3.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="ehcache_core_220" MODULE="ehcache-core-2.2.0.jar" UrlPath="platform:/plugin/org.talend.libraries.ehcache/lib/ehcache-core-2.2.0.jar" REQUIRED="false" />
<IMPORT NAME="hibernate_commons_annotations_320_Final" MODULE="hibernate-commons-annotations-3.2.0.Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-commons-annotations-3.2.0.Final.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="hibernate_search_321_Final" MODULE="hibernate-search-3.2.1.Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-search-3.2.1.Final.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="javassist_380_GA" MODULE="javassist-3.8.0.GA.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="lucene_core_293" MODULE="lucene-core-2.9.3.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.lucene/lib/lucene-core-2.9.3.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="hibernate_commons_annotations_320_Final" MODULE="hibernate-commons-annotations-3.2.0.Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-commons-annotations-3.2.0.Final.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="hibernate_search_321_Final" MODULE="hibernate-search-3.2.1.Final.jar" UrlPath="platform:/plugin/org.talend.libraries.hibernate/lib/hibernate-search-3.2.1.Final.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="javassist_380_GA" MODULE="javassist-3.8.0.GA.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="lucene_core_293" MODULE="lucene-core-2.9.3.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.lucene/lib/lucene-core-2.9.3.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="slf4j_api_161" MODULE="slf4j-api-1.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.slf4j/lib/slf4j-api-1.6.1.jar" REQUIRED="false" />
<IMPORT NAME="commons_logging_111" MODULE="commons-logging-1.1.1.jar" UrlPath="platform:/base/plugins/org.apache.commons.logging_1.1.1.v201101211721.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="commons_logging_111" MODULE="commons-logging-1.1.1.jar" UrlPath="platform:/base/plugins/org.apache.commons.logging_1.1.1.v201101211721.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<!-- Bonita 5.6.1 -->
<IMPORT NAME="bonita_server_561" MODULE="bonita-server-5.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-server-5.6.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="chemistry_opencmis_client_api_020_incubating" MODULE="chemistry-opencmis-client-api-0.2.0-incubating.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.chemistry/lib/chemistry-opencmis-client-api-0.2.0-incubating.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="chemistry_opencmis_commons_api_020_incubating" MODULE="chemistry-opencmis-commons-api-0.2.0-incubating.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.chemistry/lib/chemistry-opencmis-commons-api-0.2.0-incubating.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="h2_12139" MODULE="h2-1.2.139.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.h2/lib/h2-1.2.139.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="slf4j_api_161" MODULE="slf4j-api-1.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.slf4j/lib/slf4j-api-1.6.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="slf4j_jdk14_161" MODULE="slf4j-jdk14-1.6.1.jar" REQUIRED_IF="DB_VERSION=='BONITA_561'" />
<IMPORT NAME="bonita_server_561" MODULE="bonita-server-5.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-server-5.6.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="chemistry_opencmis_client_api_020_incubating" MODULE="chemistry-opencmis-client-api-0.2.0-incubating.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.chemistry/lib/chemistry-opencmis-client-api-0.2.0-incubating.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="chemistry_opencmis_commons_api_020_incubating" MODULE="chemistry-opencmis-commons-api-0.2.0-incubating.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.chemistry/lib/chemistry-opencmis-commons-api-0.2.0-incubating.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="h2_12139" MODULE="h2-1.2.139.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.h2/lib/h2-1.2.139.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="slf4j_api_161" MODULE="slf4j-api-1.6.1.jar" UrlPath="platform:/plugin/org.talend.libraries.slf4j/lib/slf4j-api-1.6.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<IMPORT NAME="slf4j_jdk14_161" MODULE="slf4j-jdk14-1.6.1.jar" REQUIRED_IF="(CLIENT_MODE=='JAVA_CLIENT') AND (DB_VERSION=='BONITA_561')" />
<!-- Bonita Http Client -->
<IMPORT NAME="bonita_http_client" MODULE="bonita-client-5.2.3.jar" UrlPath="platform:/plugin/org.talend.libraries.bonita/lib/bonita-client-5.2.3.jar" REQUIRED_IF="CLIENT_MODE=='HTTP_CLIENT'" />
<IMPORT NAME="apache_commons_codec_1_7" MODULE="commons-codec-1.7.jar" UrlPath="platform:/plugin/org.talend.libraries.apache.common/lib/commons-codec-1.7.jar" REQUIRED_IF="CLIENT_MODE=='HTTP_CLIENT'" />
</IMPORTS>
</CODEGENERATION>

View File

@@ -8,6 +8,7 @@ imports="
org.talend.core.model.process.IConnectionCategory
org.talend.core.model.metadata.IMetadataColumn
org.talend.core.model.metadata.IMetadataTable
org.talend.core.model.metadata.types.JavaTypesManager
"
%>
@@ -18,107 +19,128 @@ imports="
String processID = ElementParameterParser.getValue(node, "__PROCESS_ID__");
String clientMode = ElementParameterParser.getValue(node, "__CLIENT_MODE__");
boolean dieOnError = ("true").equals(ElementParameterParser.getValue(node, "__DIE_ON_ERROR__"));
List< ? extends IConnection> conns = node.getIncomingConnections();
if(conns != null && conns.size() > 0 && conns.get(0) != null) {
IConnection conn = conns.get(0);
if(conn!=null && conn.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)){
INode previousNode = conn.getSource();
if(previousNode != null) {
List<IMetadataTable> metadatas = previousNode.getMetadataList();
if ((metadatas!=null)&&(metadatas.size()>0)) {
IMetadataTable metadata = metadatas.get(0);
if (metadata!=null) {
List<IMetadataColumn> columns = metadata.getListColumns();
int sizeColumns = columns.size();
for (int i = 0; i < sizeColumns; i++) {
if ("HTTP_CLIENT".equals(clientMode)) {
if (i==0) {
%>
parameters_<%=cid%>.append("&variables=<map>");
<%
}
%>
parameters_<%=cid%>.append("<entry><string><%=columns.get(i).getLabel() %></string><string>");
parameters_<%=cid%>.append("<![CDATA[");
parameters_<%=cid%>.append(String.valueOf(<%=conn.getName()%>.<%=(columns.get(i)).getLabel()%>).replaceAll("&","%26"));
parameters_<%=cid%>.append("]]>");
parameters_<%=cid%>.append("</string></entry>");
<%
if (i==sizeColumns-1) {
%>
parameters_<%=cid%>.append("</map>");
<%
}
} else {
%>
parameters_<%=cid%>.put("<%=(columns.get(i)).getLabel()%>", <%=conn.getName()%>.<%=(columns.get(i)).getLabel()%>);
<%
}
}
}
}
}
}
}
if ("HTTP_CLIENT".equals(clientMode)) {
%>
java.io.DataOutputStream output_<%=cid%> = new java.io.DataOutputStream(httpConn_<%=cid %>.getOutputStream());
output_<%=cid%>.writeBytes(parameters_<%=cid%>.toString());
output_<%=cid%>.flush();
if (output_<%=cid%> != null) {
output_<%=cid%>.close();
output_<%=cid%> = null;
}
int responseCode_<%=cid%> = httpConn_<%=cid %>.getResponseCode();
if(responseCode_<%=cid %> != java.net.HttpURLConnection.HTTP_OK){
System.out.println("----------\nRequest failled: " + responseCode_<%=cid%>+ "----------");
throw new java.lang.Exception("Request the url:" + url_<%=cid%> + " failed: " + responseCode_<%=cid%>);
} else {
java.io.InputStream is_<%=cid%> = httpConn_<%=cid %>.getInputStream();
javax.xml.xpath.XPath xPath_<%=cid%> = javax.xml.xpath.XPathFactory.newInstance().newXPath();
org.xml.sax.InputSource inputSource_<%=cid %> = new org.xml.sax.InputSource(is_<%=cid %>);
processInstanceUUID_<%=cid%> = (String) xPath_<%=cid%>.evaluate("/ProcessInstanceUUID/value/text()", inputSource_<%=cid %>, javax.xml.xpath.XPathConstants.STRING);
if (is_<%=cid%> != null) {
is_<%=cid%>.close();
is_<%=cid%> = null;
}
}
<%
} else { // Java Client
%>
org.ow2.bonita.facade.uuid.ProcessInstanceUUID instanceUUID_<%=cid%> = runtimeAPI_<%=cid%>.instantiateProcess(processID_<%=cid%>, parameters_<%=cid%>);
processInstanceUUID_<%=cid%> = instanceUUID_<%=cid%>.getValue();
<%
}
List<IMetadataTable> metadatas = node.getMetadataList();
if ((metadatas!=null)&&(metadatas.size()>0)) {
IMetadataTable metadata = metadatas.get(0);
if (metadata!=null) {
List< ? extends IConnection> conns_out = node.getOutgoingConnections();
for (IConnection conn : conns_out) {
String connName = conn.getName();
if (conn.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)) {
List< ? extends IConnection> conns = node.getIncomingConnections();
if(conns != null && conns.size() > 0 && conns.get(0) != null) {
IConnection conn = conns.get(0);
if(conn!=null && conn.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)){
INode previousNode = conn.getSource();
if(previousNode != null) {
List<IMetadataTable> metadatas = previousNode.getMetadataList();
if ((metadatas!=null)&&(metadatas.size()>0)) {
IMetadataTable metadata = metadatas.get(0);
if (metadata!=null) {
List<IMetadataColumn> columns = metadata.getListColumns();
int sizeColumns = columns.size();
for (int i = 0; i < sizeColumns; i++) {
if ("ProcessInstanceUUID".equals(columns.get(i).getLabel()) ) {
%>
<%=connName%>.<%=(columns.get(i)).getLabel()%> = processInstanceUUID_<%=cid%>;
<%
break;
if ("HTTP_CLIENT".equals(clientMode)) {
if (i==0) {
%>
parameters_<%=cid%>.append("&variables=<map>");
<%
}
%>
parameters_<%=cid%>.append("<entry><string><%=columns.get(i).getLabel() %></string><string>");
<%if(!JavaTypesManager.isJavaPrimitiveType(columns.get(i).getTalendType(), columns.get(i).isNullable())) {%>
if(<%=conn.getName()%>.<%=(columns.get(i)).getLabel()%> != null) {
<%}%>
parameters_<%=cid%>.append("<![CDATA[");
parameters_<%=cid%>.append(java.net.URLEncoder.encode(java.net.URLEncoder.encode(String.valueOf(<%=conn.getName()%>.<%=(columns.get(i)).getLabel()%>), utf8Charset),utf8Charset));
parameters_<%=cid%>.append("]]>");
<%if(!JavaTypesManager.isJavaPrimitiveType(columns.get(i).getTalendType(), columns.get(i).isNullable())) {%>
}
<%}%>
parameters_<%=cid%>.append("</string></entry>");
<%
if (i==sizeColumns-1) {
%>
parameters_<%=cid%>.append("</map>");
<%
}
} else {
%>
parameters_<%=cid%>.put("<%=(columns.get(i)).getLabel()%>", <%=conn.getName()%>.<%=(columns.get(i)).getLabel()%>);
<%
}
}
}
}
}
}
}
%>
try{
<%
if ("HTTP_CLIENT".equals(clientMode)) {
%>
java.io.DataOutputStream output_<%=cid%> = new java.io.DataOutputStream(httpConn_<%=cid %>.getOutputStream());
output_<%=cid%>.writeBytes(parameters_<%=cid%>.toString());
output_<%=cid%>.flush();
if (output_<%=cid%> != null) {
output_<%=cid%>.close();
output_<%=cid%> = null;
}
int responseCode_<%=cid%> = httpConn_<%=cid %>.getResponseCode();
if(responseCode_<%=cid %> != java.net.HttpURLConnection.HTTP_OK){
System.out.println("----------\nRequest failled: " + responseCode_<%=cid%>+ "----------");
throw new java.lang.Exception("Request the url:" + url_<%=cid%> + " failed: " + responseCode_<%=cid%>);
} else {
java.io.InputStream is_<%=cid%> = httpConn_<%=cid %>.getInputStream();
javax.xml.xpath.XPath xPath_<%=cid%> = javax.xml.xpath.XPathFactory.newInstance().newXPath();
org.xml.sax.InputSource inputSource_<%=cid %> = new org.xml.sax.InputSource(is_<%=cid %>);
processInstanceUUID_<%=cid%> = (String) xPath_<%=cid%>.evaluate("/ProcessInstanceUUID/value/text()", inputSource_<%=cid %>, javax.xml.xpath.XPathConstants.STRING);
if (is_<%=cid%> != null) {
is_<%=cid%>.close();
is_<%=cid%> = null;
}
}
<%
} else { // Java Client
%>
org.ow2.bonita.facade.uuid.ProcessInstanceUUID instanceUUID_<%=cid%> = runtimeAPI_<%=cid%>.instantiateProcess(processID_<%=cid%>, parameters_<%=cid%>);
processInstanceUUID_<%=cid%> = instanceUUID_<%=cid%>.getValue();
<%
}
%>
} catch (java.lang.Exception lee_<%=cid%>) {
<%
if (dieOnError) {
%>
throw lee_<%=cid%>;
<%
} else {
%>
System.err.println(lee_<%=cid%>.getMessage());
<%
}
%>
}
<%
List<IMetadataTable> metadatas = node.getMetadataList();
if ((metadatas!=null)&&(metadatas.size()>0)) {
IMetadataTable metadata = metadatas.get(0);
if (metadata!=null) {
List< ? extends IConnection> conns_out = node.getOutgoingConnections();
for (IConnection conn : conns_out) {
String connName = conn.getName();
if (conn.getLineStyle().hasConnectionCategory(IConnectionCategory.DATA)) {
List<IMetadataColumn> columns = metadata.getListColumns();
int sizeColumns = columns.size();
for (int i = 0; i < sizeColumns; i++) {
if ("ProcessInstanceUUID".equals(columns.get(i).getLabel()) ) {
%>
<%=connName%>.<%=(columns.get(i)).getLabel()%> = processInstanceUUID_<%=cid%>;
<%
break;
}
}
}
}
}
%>
}
%>
System.out.println("**** Instance "+ processInstanceUUID_<%=cid%> + " created ****");

View File

@@ -1,5 +1,5 @@
HELP=org.talend.help.tCloudInstanceStop
LONG_NAME=Allows to suspend, resume, reboot or stop cloud provider instances.
LONG_NAME=Allows to suspend, resume or terminate cloud provider instances.
AUTHENTICATION.NAME=Authentication
CONFIGURATION.NAME=Configuration

View File

@@ -30,6 +30,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
REQUIRED="true"
NUM_ROW="1"
>

View File

@@ -34,6 +34,7 @@
<PARAMETER
NAME="SCHEMA"
FIELD="SCHEMA_TYPE"
READONLY="true"
REQUIRED="true"
NUM_ROW="1"
>

View File

@@ -208,7 +208,7 @@
FIELD="TEXT"
NUM_ROW="70"
REPOSITORY_VALUE="SCHEMA"
SHOW_IF="(DBTYPE=='DBORACLE' or DBTYPE=='POSTGRE' or DBTYPE=='POSTGREPLUS' or DBTYPE=='INFORMIX' or DBTYPE=='DB2' or DBTYPE=='GREENPLUM' or DBTYPE=='VERTICA') and (USE_EXISTING_CONNECTION == 'false')"
SHOW_IF="(DBTYPE=='DBORACLE' or DBTYPE=='POSTGRE' or DBTYPE=='POSTGREPLUS' or DBTYPE=='INFORMIX' or DBTYPE=='DB2' or DBTYPE=='GREENPLUM' or DBTYPE=='VERTICA' or DBTYPE=='MSSQL' or DBTYPE=='SYBASE') and (USE_EXISTING_CONNECTION == 'false')"
>
<DEFAULT>""</DEFAULT>
</PARAMETER>
@@ -482,6 +482,18 @@
NUM_ROW="30"
SHOW_IF="(DBTYPE=='POSTGRE') and (USE_EXISTING_CONNECTION == 'true')"
/>
<PARAMETER
NAME="DB_POSTGRE_VERSION"
FIELD="CLOSED_LIST"
NUM_ROW="50"
SHOW_IF="((DBTYPE=='POSTGRE') or (DBTYPE=='POSTGREPLUS')) and (USE_EXISTING_CONNECTION == 'false')">
<ITEMS DEFAULT="PRIOR_TO_V9">
<ITEM NAME="PRIOR_TO_V9" VALUE="PRIOR_TO_V9" />
<ITEM NAME="V9_X" VALUE="V9_X" />
</ITEMS>
</PARAMETER>
<!--Postgre configuration end-->
<!--PostgrePlus configuration start-->
@@ -657,37 +669,38 @@
<IMPORTS>
<IMPORT NAME="Driver-V5R2_V5R4" MODULE="jt400_V5R2.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.as400/lib/jt400_V5R2.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') and (DBTYPE=='AS400') and (DB_AS400_VERSION=='V5R2_V5R4')"/>
<IMPORT NAME="Driver-V5R3_V6R1" MODULE="jt400_V5R3.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.as400/lib/jt400_V5R3.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') and (DBTYPE=='AS400') and (DB_AS400_VERSION=='V5R3_V6R1')"/>
<IMPORT NAME="Driver-DB2" MODULE="db2jcc.jar" REQUIRED_IF="DBTYPE=='DB2'" />
<IMPORT NAME="Driver-DB2-LICENSE-CISUZ" MODULE="db2jcc_license_cisuz.jar" REQUIRED_IF="DBTYPE=='DB2'" />
<IMPORT NAME="Driver-DB2-LICENSE-CU" MODULE="db2jcc_license_cu.jar" REQUIRED_IF="DBTYPE=='DB2'" />
<IMPORT NAME="Driver-DB2" MODULE="db2jcc.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='DB2')" />
<IMPORT NAME="Driver-DB2-LICENSE-CISUZ" MODULE="db2jcc_license_cisuz.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='DB2')" />
<IMPORT NAME="Driver-DB2-LICENSE-CU" MODULE="db2jcc_license_cu.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='DB2')" />
<IMPORT NAME="Driver_MaxDB" MODULE="sapdbc.jar" REQUIRED_IF="DBTYPE=='MAXDB'" />
<IMPORT NAME="Driver-MSSQL" MODULE="jtds-1.2.5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.jtds/lib/jtds-1.2.5.jar" REQUIRED_IF="DBTYPE=='MSSQL'" />
<IMPORT NAME="Driver-MSSQL" MODULE="jtds-1.2.5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.jtds/lib/jtds-1.2.5.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='MSSQL')" />
<IMPORT NAME="Driver-MYSQL4" MODULE="mysql-connector-java-3.1.14-bin.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.mysql/lib/mysql-connector-java-3.1.14-bin.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') and (DBTYPE=='MYSQL') and (DB_MYSQL_VERSION=='MYSQL_4')"/>
<IMPORT NAME="Driver-MYSQL5" MODULE="mysql-connector-java-5.1.22-bin.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.mysql/lib/mysql-connector-java-5.1.22-bin.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') and (DBTYPE=='MYSQL') and (DB_MYSQL_VERSION=='MYSQL_5')"/>
<IMPORT NAME="Driver-Oracle8i" MODULE="ojdbc12.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc12.jar" REQUIRED_IF="(DB_VERSION == 'ORACLE_8') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle9i" MODULE="ojdbc14-9i.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc14-9i.jar" REQUIRED_IF="(DB_VERSION == 'ORACLE_9') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle10g" MODULE="ojdbc14.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc14.jar" REQUIRED_IF="(DB_VERSION == 'ORACLE_10') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle11g-1" MODULE="ojdbc5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc5.jar" REQUIRED_IF="(DB_VERSION == 'ORACLE_11') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle11g-2" MODULE="ojdbc6.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc6.jar" REQUIRED_IF="(DB_VERSION == 'ORACLE_11-6') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-POSTGRESQL" MODULE="postgresql-8.3-603.jdbc3.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.postgresql/lib/postgresql-8.3-603.jdbc3.jar" REQUIRED_IF="(DBTYPE=='POSTGRE') or (DBTYPE=='POSTGREPLUS') or (DBTYPE=='GREENPLUM')" />
<IMPORT NAME="Driver-FIREBIRD" MODULE="jaybird-full-2.1.1.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.firebird/lib/jaybird-full-2.1.1.jar" REQUIRED_IF="DBTYPE=='FIREBIRD'" />
<IMPORT NAME="Driver-Oracle8i" MODULE="ojdbc12.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc12.jar" REQUIRED_IF="(DBTYPE=='DBORACLE') AND (DB_VERSION == 'ORACLE_8') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle9i" MODULE="ojdbc14-9i.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc14-9i.jar" REQUIRED_IF="(DBTYPE=='DBORACLE') AND (DB_VERSION == 'ORACLE_9') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle10g" MODULE="ojdbc14.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc14.jar" REQUIRED_IF="(DBTYPE=='DBORACLE') AND (DB_VERSION == 'ORACLE_10') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle11g-1" MODULE="ojdbc5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc5.jar" REQUIRED_IF="(DBTYPE=='DBORACLE') AND (DB_VERSION == 'ORACLE_11') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-Oracle11g-2" MODULE="ojdbc6.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.oracle/lib/ojdbc6.jar" REQUIRED_IF="(DBTYPE=='DBORACLE') AND (DB_VERSION == 'ORACLE_11-6') AND (USE_EXISTING_CONNECTION == 'false')" />
<IMPORT NAME="Driver-POSTGRESQL" MODULE="postgresql-8.3-603.jdbc3.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.postgresql/lib/postgresql-8.3-603.jdbc3.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND ((((DBTYPE=='POSTGRE') or (DBTYPE=='POSTGREPLUS')) AND (DB_POSTGRE_VERSION =='PRIOR_TO_V9')) or (DBTYPE=='GREENPLUM'))" />
<IMPORT NAME="Driver-Postgres9" MODULE="postgresql-9.2-1003.jdbc3.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.postgresql/lib/postgresql-9.2-1003.jdbc3.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (((DBTYPE=='POSTGRE') or (DBTYPE=='POSTGREPLUS')) AND (DB_POSTGRE_VERSION =='V9_X'))" />
<IMPORT NAME="Driver-FIREBIRD" MODULE="jaybird-full-2.1.1.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.firebird/lib/jaybird-full-2.1.1.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='FIREBIRD')" />
<IMPORT NAME="Driver-HSQLDb" MODULE="hsqldb.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.hsql/lib/hsqldb.jar" REQUIRED_IF="DBTYPE=='HSQLDB'"/>
<IMPORT NAME="Driver-INFORMIX-JDBC" MODULE="ifxjdbc.jar" REQUIRED_IF="DBTYPE=='INFORMIX'" />
<IMPORT NAME="Driver-INFORMIX-JDBCX" MODULE="ifxjdbcx.jar" REQUIRED_IF="DBTYPE=='INFORMIX'" />
<IMPORT NAME="Driver-INFORMIX-LANG" MODULE="ifxlang.jar" REQUIRED_IF="DBTYPE=='INFORMIX'" />
<IMPORT NAME="Driver-INFORMIX-LSUPP" MODULE="ifxlsupp.jar" REQUIRED_IF="DBTYPE=='INFORMIX'" />
<IMPORT NAME="Driver-INFORMIX-SQLJ" MODULE="ifxsqlj.jar" REQUIRED_IF="DBTYPE=='INFORMIX'" />
<IMPORT NAME="Driver-INFORMIX-TOOLS" MODULE="ifxtools.jar" REQUIRED_IF="DBTYPE=='INFORMIX'"/>
<IMPORT NAME="Driver-INGRES" MODULE="iijdbc.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.ingres/lib/iijdbc.jar" REQUIRED_IF="DBTYPE=='INGRES'"/>
<IMPORT NAME="Driver-Interbase" MODULE="interclient.jar" REQUIRED_IF="DBTYPE=='INTERBASE'" />
<IMPORT NAME="Driver-INFORMIX-JDBC" MODULE="ifxjdbc.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')" />
<IMPORT NAME="Driver-INFORMIX-JDBCX" MODULE="ifxjdbcx.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')" />
<IMPORT NAME="Driver-INFORMIX-LANG" MODULE="ifxlang.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')" />
<IMPORT NAME="Driver-INFORMIX-LSUPP" MODULE="ifxlsupp.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')" />
<IMPORT NAME="Driver-INFORMIX-SQLJ" MODULE="ifxsqlj.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')" />
<IMPORT NAME="Driver-INFORMIX-TOOLS" MODULE="ifxtools.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INFORMIX')"/>
<IMPORT NAME="Driver-INGRES" MODULE="iijdbc.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.ingres/lib/iijdbc.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INGRES')"/>
<IMPORT NAME="Driver-Interbase" MODULE="interclient.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='INTERBASE')" />
<IMPORT NAME="Driver-JAVADB-DERBY" MODULE="derby.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.derby/lib/derby.jar" REQUIRED_IF="DBTYPE=='JAVADB'"/>
<IMPORT NAME="Driver-JAVADB-DERBYCLIENT" MODULE="derbyclient.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.derby/lib/derbyclient.jar" REQUIRED_IF="DBTYPE=='JAVADB'"/>
<IMPORT NAME="Driver-JAVADB-DERBYNET" MODULE="derbynet.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.derby/lib/derbynet.jar" REQUIRED_IF="DBTYPE=='JAVADB'"/>
<IMPORT NAME="Driver-SQLITE-JDBC-NESTED" MODULE="sqlitejdbc-v056.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.sqlite3/lib/sqlitejdbc-v056.jar" REQUIRED_IF="DBTYPE=='SQLITE'" />
<IMPORT NAME="Driver-SYBASE-JCONN3" MODULE="jconn3.jar" REQUIRED_IF="DBTYPE=='SYBASE'" />
<IMPORT NAME="Driver-Teradata_jdbc" MODULE="terajdbc4.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.teradata/lib/terajdbc4.jar" REQUIRED_IF="DBTYPE=='TERADATA'" />
<IMPORT NAME="Driver-Teradata_config" MODULE="tdgssconfig.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.teradata/lib/tdgssconfig.jar" REQUIRED_IF="DBTYPE=='TERADATA'" />
<IMPORT NAME="Driver-Netezza" MODULE="nzjdbc.jar" REQUIRED_IF="DBTYPE=='NETEZZA'" />
<IMPORT NAME="Driver-SQLITE-JDBC-NESTED" MODULE="sqlitejdbc-v056.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.sqlite3/lib/sqlitejdbc-v056.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='SQLITE')" />
<IMPORT NAME="Driver-SYBASE-JCONN3" MODULE="jconn3.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='SYBASE')" />
<IMPORT NAME="Driver-Teradata_jdbc" MODULE="terajdbc4.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.teradata/lib/terajdbc4.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='TERADATA')" />
<IMPORT NAME="Driver-Teradata_config" MODULE="tdgssconfig.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.teradata/lib/tdgssconfig.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='TERADATA')" />
<IMPORT NAME="Driver-Netezza" MODULE="nzjdbc.jar" REQUIRED_IF="(USE_EXISTING_CONNECTION == 'false') AND (DBTYPE=='NETEZZA')" />
<IMPORT NAME="Driver-VERTICA" MODULE="vertica_3.0_jdk_5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.vertica/lib/vertica_3.0_jdk_5.jar" REQUIRED_IF="(DBTYPE=='VERTICA') and (USE_EXISTING_CONNECTION == 'false') and (DB_VERTICA_VERSION=='VERTICA_3')" />
<IMPORT NAME="Driver-VERTICA_3.5" MODULE="vertica_3.5_jdk_5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.vertica/lib/vertica_3.5_jdk_5.jar" REQUIRED_IF="(DBTYPE=='VERTICA') and (USE_EXISTING_CONNECTION == 'false') and (DB_VERTICA_VERSION=='VERTICA_3.5')" />
<IMPORT NAME="Driver-VERTICA_4" MODULE="vertica_4.0_jdk_5.jar" UrlPath="platform:/plugin/org.talend.libraries.jdbc.vertica/lib/vertica_4.0_jdk_5.jar" REQUIRED_IF="(DBTYPE=='VERTICA') and (USE_EXISTING_CONNECTION == 'false') and (DB_VERTICA_VERSION=='VERTICA_4')" />

View File

@@ -351,6 +351,7 @@ class AccessManager extends Manager {
class DB2Manager extends Manager {
private String host;
private String port;
private String userName;
private String dbSchema;
private boolean useExistingConnection;
private String connection;
@@ -359,6 +360,7 @@ class DB2Manager extends Manager {
this.host = host;
this.port = port;
this.dbSchema = dbSchema;
this.userName = userName;
this.useExistingConnection = useExistingConnection;
this.connection = connection;
}
@@ -402,8 +404,10 @@ class DB2Manager extends Manager {
javaCode.append(super.retrieveTable());
if(useExistingConnection) {
javaCode.append("String dbSchema_" + cid + " = (String)globalMap.get(\"tableschema_" + connection + "\");\r\n");
javaCode.append("String dbUser_" + cid + " = (String)globalMap.get(\"username_" + connection + "\");\r\n");
} else {
javaCode.append("String dbSchema_" + cid + " = " + dbSchema + ";\r\n");
javaCode.append("String dbUser_" + cid + " = " + userName + ";\r\n");
}
javaCode.append("if(dbSchema_" + cid + " != null && dbSchema_" + cid + ".trim().length() != 0) {");
javaCode.append("tableName_" + cid + " = dbSchema_" + cid + " + \"" + getLProtectedChar() + "." + getRProtectedChar() + "\" + tableName_" + cid + ";\r\n");
@@ -744,7 +748,7 @@ class JavaDBManager extends Manager {
javaCode.append("}\r\n");
javaCode.append("}\r\n");
javaCode.append("if(!isServerUp_" + cid + ") {\r\n");
javaCode.append("System.exit(1);\r\n");
javaCode.append("throw new java.lang.Exception(\"Can not obtain a connection to network server\");\r\n");
javaCode.append("}\r\n");
return javaCode.toString();
}
@@ -796,13 +800,15 @@ class MaxDBManager extends Manager {
class MSSQLManager extends Manager {
private String host;
private String port;
private String dbSchema;
private boolean useExistingConnection;
private String connection;
private String dbproperty;
public MSSQLManager(String host, String port, String dbName, String tableName, String userName, String password, boolean useExistingConnection, String connection, String cid, String dbproperty) {
public MSSQLManager(String host, String port, String dbName, String dbSchema, String tableName, String userName, String password, boolean useExistingConnection, String connection, String cid, String dbproperty) {
super(dbName, tableName, userName, password, cid);
this.host = host;
this.port = port;
this.dbSchema = dbSchema;
this.useExistingConnection = useExistingConnection;
this.connection = connection;
this.dbproperty = dbproperty;
@@ -845,6 +851,19 @@ class MSSQLManager extends Manager {
}
return javaCode.toString();
}
protected String retrieveTable() {
StringBuilder javaCode = new StringBuilder();
javaCode.append(super.retrieveTable());
if(useExistingConnection) {
javaCode.append("String dbSchema_" + cid + " = (String)globalMap.get(\"dbschema_" + connection + "\");\r\n");
} else {
javaCode.append("String dbSchema_" + cid + " = " + dbSchema + ";\r\n");
}
javaCode.append("if(dbSchema_" + cid + " != null && dbSchema_" + cid + ".trim().length() != 0) {");
javaCode.append("tableName_" + cid + " = dbSchema_" + cid + " + \"" + getRProtectedChar() + "." + getLProtectedChar() + "\" + tableName_" + cid + ";\r\n");
javaCode.append("}");
return javaCode.toString();
}
}
class MysqlManager extends Manager {
private String host;
@@ -1274,12 +1293,14 @@ class SQLiteManager extends Manager {
class SybaseManager extends Manager {
private String host;
private String port;
private String dbSchema;
private boolean useExistingConnection;
private String connection;
public SybaseManager(String host, String port, String dbName, String tableName, String userName, String password, String cid, boolean useExistingConnection, String connection) {
public SybaseManager(String host, String port, String dbName, String dbSchema, String tableName, String userName, String password, String cid, boolean useExistingConnection, String connection) {
super(dbName, tableName, userName, password, cid);
this.host = host;
this.port = port;
this.dbSchema = dbSchema;
this.useExistingConnection = useExistingConnection;
this.connection = connection;
}
@@ -1324,6 +1345,19 @@ class SybaseManager extends Manager {
}
return javaCode.toString();
}
protected String retrieveTable() {
StringBuilder javaCode = new StringBuilder();
javaCode.append(super.retrieveTable());
if(useExistingConnection) {
javaCode.append("String dbSchema_" + cid + " = (String)globalMap.get(\"dbschema_" + connection + "\");\r\n");
} else {
javaCode.append("String dbSchema_" + cid + " = " + dbSchema + ";\r\n");
}
javaCode.append("if(dbSchema_" + cid + " != null && dbSchema_" + cid + ".trim().length() != 0) {");
javaCode.append("tableName_" + cid + " = dbSchema_" + cid + " + \"" + getRProtectedChar() + "." + getLProtectedChar() + "\" + tableName_" + cid + ";\r\n");
javaCode.append("}");
return javaCode.toString();
}
}
class ODBCManager extends Manager {
public ODBCManager(String dbName, String tableName, String userName, String password, String cid) {
@@ -1786,12 +1820,13 @@ class ManagerFactory {
String host = ElementParameterParser.getValue(node, "__HOST__");
String port = ElementParameterParser.getValue(node, "__PORT__");
String dbName = ElementParameterParser.getValue(node, "__DBNAME__");
String dbSchema = ElementParameterParser.getValue(node, "__SCHEMA_DB__");
String userName = ElementParameterParser.getValue(node, "__USER__");
String password = ElementParameterParser.getValue(node, "__PASS__");
boolean useExistingConnection = ("true").equals(ElementParameterParser.getValue(node, "__USE_EXISTING_CONNECTION__"));
String connection = stringUtil.getString(ElementParameterParser.getValue(node, "__CONNECTION_MSSQL__"));
String dbproperties = ElementParameterParser.getValue(node, "__PROPERTIES__");
manager = new MSSQLManager(host, port, dbName, tableName, userName, password, useExistingConnection, connection, cid, dbproperties);
manager = new MSSQLManager(host, port, dbName,dbSchema, tableName, userName, password, useExistingConnection, connection, cid, dbproperties);
} else if(("MYSQL").equals(dbType)) {
String host = ElementParameterParser.getValue(node, "__HOST__");
String port = ElementParameterParser.getValue(node, "__PORT__");
@@ -1855,11 +1890,12 @@ class ManagerFactory {
String host = ElementParameterParser.getValue(node, "__HOST__");
String port = ElementParameterParser.getValue(node, "__PORT__");
String dbName = ElementParameterParser.getValue(node, "__DBNAME__");
String dbSchema = ElementParameterParser.getValue(node, "__SCHEMA_DB__");
String userName = ElementParameterParser.getValue(node, "__USER__");
String password = ElementParameterParser.getValue(node, "__PASS__");
boolean useExistingConnection = ("true").equals(ElementParameterParser.getValue(node, "__USE_EXISTING_CONNECTION__"));
String connection = stringUtil.getString(ElementParameterParser.getValue(node, "__CONNECTION_SYBASE__"));
manager = new SybaseManager(host, port, dbName, tableName, userName, password, cid,useExistingConnection, connection);
manager = new SybaseManager(host, port, dbName, dbSchema, tableName, userName, password, cid,useExistingConnection, connection);
} else if(("TERADATA").equals(dbType)) {
String host = ElementParameterParser.getValue(node, "__HOST__");
String port = ElementParameterParser.getValue(node, "__PORT__");
@@ -1942,6 +1978,9 @@ if(columnList != null && columnList.size() > 0) {
<%
} else {
String tableName = ElementParameterParser.getValue(node,"__TABLE__");
%>
boolean whetherExist_<%=cid%> = false;
<%
if("DBORACLE".equalsIgnoreCase(dbType)) {
%>
<%=manager.generateCode4TabelExist()%>
@@ -1952,16 +1991,77 @@ if(columnList != null && columnList.size() > 0) {
tableNameForSearch_<%=cid%> = tableNameForSearch_<%=cid%>.replaceAll("\"","");
}
java.sql.ResultSet rsTable_<%=cid%> = dbMetaData_<%=cid%>.getTables(null, dbschemaForSearch_<%=cid%>, tableNameForSearch_<%=cid%>, new String[]{"TABLE"});
boolean whetherExist_<%=cid%> = false;
if(rsTable_<%=cid%>.next()) {
whetherExist_<%=cid%> = true;
}
<%
} else if("DB2".equalsIgnoreCase(dbType) ){
%>
java.sql.DatabaseMetaData dbMetaData_<%=cid%> = conn_<%=cid%>.getMetaData();
java.sql.ResultSet rsTable_<%=cid%> = dbMetaData_<%=cid%>.getTables(null, null, null, new String[]{"TABLE"});
while(rsTable_<%=cid%>.next()) {
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
String schema_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_SCHEM");
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=tableName%>)
&& (schema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(dbSchema_<%=cid%>) || (dbSchema_<%=cid%>.trim().length() ==0 && dbUser_<%=cid%>.equalsIgnoreCase(schema_<%=cid%>)))) {
whetherExist_<%=cid%> = true;
break;
}
}
<%
} else if ("GREENPLUM".equalsIgnoreCase(dbType) || "POSTGRE".equalsIgnoreCase(dbType) || "POSTGREPLUS".equalsIgnoreCase(dbType)) {
%>
java.sql.DatabaseMetaData dbMetaData_<%=cid%> = conn_<%=cid%>.getMetaData();
java.sql.ResultSet rsTable_<%=cid%> = dbMetaData_<%=cid%>.getTables(null, null, null, new String[]{"TABLE"});
String defaultSchema_<%=cid%> = "public";
if(dbSchema_<%=cid%> == null || dbSchema_<%=cid%>.trim().length() == 0) {
java.sql.Statement stmtSchema_<%=cid%> = conn_<%=cid%>.createStatement();
java.sql.ResultSet rsSchema_<%=cid%> = stmtSchema_<%=cid%>.executeQuery("select current_schema() ");
while(rsSchema_<%=cid%>.next()){
defaultSchema_<%=cid%> = rsSchema_<%=cid%>.getString("current_schema");
}
rsSchema_<%=cid%>.close();
stmtSchema_<%=cid%>.close();
}
while(rsTable_<%=cid%>.next()) {
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
String schema_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_SCHEM");
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=tableName%>)
&& (schema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(dbSchema_<%=cid%>) || ((dbSchema_<%=cid%> ==null || dbSchema_<%=cid%>.trim().length() ==0) && defaultSchema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(schema_<%=cid%>)))) {
whetherExist_<%=cid%> = true;
break;
}
}
<%
} else if ("MSSQL".equalsIgnoreCase(dbType)){
%>
java.sql.Statement rsTable_<%=cid%> = conn_<%=cid%>.createStatement();
try {
rsTable_<%=cid%>.execute("SELECT TOP 1 1 FROM [" + tableName_<%=cid%> + "]" );
whetherExist_<%=cid%> = true;
} catch (Exception e){
whetherExist_<%=cid%> = false;
}
<%
} else if ( "SYBASE".equalsIgnoreCase(dbType)
|| "INFORMIX".equalsIgnoreCase(dbType) ) {
%>
java.sql.DatabaseMetaData dbMetaData_<%=cid%> = conn_<%=cid%>.getMetaData();
java.sql.ResultSet rsTable_<%=cid%> = dbMetaData_<%=cid%>.getTables(null, null, null, new String[]{"TABLE"});
while(rsTable_<%=cid%>.next()) {
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
String schema_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_SCHEM");
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=tableName%>)
&& (schema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(dbSchema_<%=cid%>) || dbSchema_<%=cid%>.trim().length() ==0)) {
whetherExist_<%=cid%> = true;
break;
}
}
<%
} else {
%>
java.sql.DatabaseMetaData dbMetaData_<%=cid%> = conn_<%=cid%>.getMetaData();
java.sql.ResultSet rsTable_<%=cid%> = dbMetaData_<%=cid%>.getTables(null, null, null, new String[]{"TABLE"});
boolean whetherExist_<%=cid%> = false;
while(rsTable_<%=cid%>.next()) {
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=tableName%>)) {

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