From c775b4ab9688d4ca238f011aa6a715a2ecf2c7cb Mon Sep 17 00:00:00 2001 From: Jan-Philipp Luithardt Date: Sat, 6 Dec 2025 20:08:03 +0100 Subject: [PATCH] add db --- .gradle/8.14/checksums/checksums.lock | Bin 17 -> 17 bytes .gradle/8.14/checksums/md5-checksums.bin | Bin 18597 -> 19747 bytes .gradle/8.14/checksums/sha1-checksums.bin | Bin 18767 -> 21089 bytes .../executionHistory/executionHistory.bin | Bin 150478 -> 205060 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .gradle/8.14/fileHashes/fileHashes.bin | Bin 24447 -> 25347 bytes .gradle/8.14/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../8.14/fileHashes/resourceHashesCache.bin | Bin 21727 -> 24379 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .gradle/file-system.probe | Bin 8 -> 8 bytes .idea/dataSources.xml | 17 ++ .idea/sqldialects.xml | 6 + build.gradle | 1 + .../java/main/hhn/temp/project/Task.class | Bin 2393 -> 2744 bytes .../main/hhn/temp/project/TaskManager.class | Bin 5014 -> 3343 bytes .../expections/SQLNoConectionException.class | Bin 0 -> 424 bytes .../expections/SQLStatmentException.class | Bin 0 -> 415 bytes .../expections/TaskNotExistsException.class | Bin 0 -> 421 bytes .../hhn/temp/project/provider/MySql.class | Bin 0 -> 7127 bytes .../java/test/project/BadCaseTaskTest.class | Bin 7546 -> 9444 bytes .../java/test/project/GoodCaseTaskTest.class | Bin 4862 -> 8336 bytes .../test/jacocoTestReport.xml | 2 +- build/jacoco/test.exec | Bin 41867 -> 55887 bytes .../SQLNoConectionException.html | 1 + .../SQLNoConectionException.java.html | 10 + .../SQLStatmentException.html | 1 + .../SQLStatmentException.java.html | 10 + .../TaskNotExistsException.html | 1 + .../TaskNotExistsException.java.html | 10 + .../hhn.temp.project.expections/index.html | 2 +- .../index.source.html | 2 +- .../hhn.temp.project.provider/MySql.html | 1 + .../hhn.temp.project.provider/MySql.java.html | 227 ++++++++++++++++++ .../hhn.temp.project.provider/index.html | 1 + .../index.source.html | 1 + build/jacocoHtml/hhn.temp.project/Task.html | 2 +- .../hhn.temp.project/Task.java.html | 82 ++++--- .../hhn.temp.project/TaskManager.html | 2 +- .../hhn.temp.project/TaskManager.java.html | 85 ++++--- build/jacocoHtml/hhn.temp.project/index.html | 2 +- .../hhn.temp.project/index.source.html | 2 +- build/jacocoHtml/index.html | 2 +- build/jacocoHtml/jacoco-sessions.html | 2 +- build/reports/problems/problems-report.html | 2 +- .../test/classes/project.BadCaseTaskTest.html | 24 +- .../classes/project.GoodCaseTaskTest.html | 22 +- build/reports/tests/test/index.html | 18 +- .../reports/tests/test/packages/project.html | 14 +- .../test/TEST-project.BadCaseTaskTest.xml | 15 +- .../test/TEST-project.GoodCaseTaskTest.xml | 13 +- build/test-results/test/binary/results.bin | Bin 1118 -> 1290 bytes .../stash-dir/MySql.class.uniqueId2 | Bin 0 -> 7344 bytes .../stash-dir/Task.class.uniqueId1 | Bin 0 -> 2744 bytes .../stash-dir/TaskManager.class.uniqueId0 | Bin 0 -> 3343 bytes .../compileJava/previous-compilation-data.bin | Bin 431 -> 943 bytes .../stash-dir/BadCaseTaskTest.class.uniqueId0 | Bin 0 -> 9912 bytes .../previous-compilation-data.bin | Bin 1452 -> 1804 bytes src/main/java/hhn/temp/project/Task.java | 18 +- .../java/hhn/temp/project/TaskManager.java | 39 ++- .../expections/SQLNoConectionException.java | 9 + .../expections/SQLStatmentException.java | 9 + .../expections/TaskNotExistsException.java | 9 + .../java/hhn/temp/project/provider/MySql.java | 226 +++++++++++++++++ task ':build'/reports/jacoco/jacoco.csv | 8 +- test/project/BadCaseTaskTest.java | 31 ++- test/project/GoodCaseTaskTest.java | 84 ++++++- 66 files changed, 848 insertions(+), 165 deletions(-) create mode 100644 .idea/dataSources.xml create mode 100644 .idea/sqldialects.xml create mode 100644 build/classes/java/main/hhn/temp/project/expections/SQLNoConectionException.class create mode 100644 build/classes/java/main/hhn/temp/project/expections/SQLStatmentException.class create mode 100644 build/classes/java/main/hhn/temp/project/expections/TaskNotExistsException.class create mode 100644 build/classes/java/main/hhn/temp/project/provider/MySql.class create mode 100644 build/jacocoHtml/hhn.temp.project.expections/SQLNoConectionException.html create mode 100644 build/jacocoHtml/hhn.temp.project.expections/SQLNoConectionException.java.html create mode 100644 build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.html create mode 100644 build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.java.html create mode 100644 build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.html create mode 100644 build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.java.html create mode 100644 build/jacocoHtml/hhn.temp.project.provider/MySql.html create mode 100644 build/jacocoHtml/hhn.temp.project.provider/MySql.java.html create mode 100644 build/jacocoHtml/hhn.temp.project.provider/index.html create mode 100644 build/jacocoHtml/hhn.temp.project.provider/index.source.html create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/MySql.class.uniqueId2 create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/Task.class.uniqueId1 create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/TaskManager.class.uniqueId0 create mode 100644 build/tmp/compileTestJava/compileTransaction/stash-dir/BadCaseTaskTest.class.uniqueId0 create mode 100644 src/main/java/hhn/temp/project/expections/SQLNoConectionException.java create mode 100644 src/main/java/hhn/temp/project/expections/SQLStatmentException.java create mode 100644 src/main/java/hhn/temp/project/expections/TaskNotExistsException.java create mode 100644 src/main/java/hhn/temp/project/provider/MySql.java diff --git a/.gradle/8.14/checksums/checksums.lock b/.gradle/8.14/checksums/checksums.lock index 276825ee508c3d9fc17b1894fda33297bd04a8dd..28ad6b2c4f503a3afe45cbfc45415d86e37d1c08 100644 GIT binary patch literal 17 UcmZP$)7bd`{pL^o3=j|l06b%7 literal 17 UcmZP$)7bd`{pL^o3=qHz06+=_VgLXD diff --git a/.gradle/8.14/checksums/md5-checksums.bin b/.gradle/8.14/checksums/md5-checksums.bin index a64674fcff60e2d7f820189f92cbdba1ed5b4e11..9bdfd68f6bee291d4ce466e97d9ed71e97b40f14 100644 GIT binary patch literal 19747 zcmeI3YcO0_9Kf%~B4V-ih<9R&M!FuQGE|C+$1ahk9wS|bm8jH4rdhGoRz;Ae8nP9S z8lC;$ci zF9jm#jcB9Im~d4UCwi$A<*Y-Wm}Y&ruRL(sRRg^ov_k%WkhecJhf|Z6fOv2m;iu+) zJX0NX;RfQoBZL=ybTd9ByFL@obAa&T%Y%uAGa-$bs}Ww-woS^id)$CHzmM<=jz(qt z53ALfdlD{_XZG*BRyB9;Z>yG{}QdQ5LnXibv?=23+2 z=s7Bj6@UL6b9=(Q7QBs3kF(Yg4=yC!|2OwVt0C?K#QEP49xxpyU92#2K|IKfZ~-q& zZ?IfsgXeih_(9!RPJ3r~Cw_ky;pCa3R1?u_aD)O-017|>C;$bZ02F`%Pyh-*0Vn_k zpa2wr0#E=7KmjNK1)u;FfC5ke3P1rU00p1`6o3Ly017|>C;$bZ02F`%Pyh-*f&Z$2 zD?O1t{jgR%^fj%1krhadOFtevY-drnC!V5I%I@E9=tZmPd`3Sz{@XB5Y|Qmc%lS&o z+Obf0eT2SNTwyfrM20~M(>UXwEq^+x>pnM?P{#F$^i~)PKgYa^*N9^p5*g~J-k+tbBPkiZKKUCaV~+VsuyGZw@v@4-JRcxdoL*pf;kvttCx27%C~=5^;Bwr!fmMyk@Fj5jh3orhLS0=G+9 z-B$jO8cl`tr%|pkj0~+Vrr~uf*-D%@-f?sMkLKCq!zYjtr}$#iLvxlstZOA2V1FLn z663p&_Q7~z&rkq1?34nf<;*lDl7^m~(@$zx7DO#ZY<5q_hT<299$K5|!@4!jOC#=% zdL#`P4sJPHb8P~*isLB-%D0JWTo&#-kt$D#@Gfpt$uds6h1cLBL;W_>7#h4InTcRc1DQgv+8!$ue~*ovRzx_u02TKWeVNT#0E z`+DrXvim7EB9UQK#WcQcc6VAlpRE`7T&>D8=xQ`JT9C1IhG`V@H)HC-zT`}Fz@;byMnLdOy3DZe@pI|DE>~-Lwyf@aQp{KQjeYh delta 56 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 UdCdVNa-HDj1x#*UVuSJj00eH9qyPW_ diff --git a/.gradle/8.14/executionHistory/executionHistory.lock b/.gradle/8.14/executionHistory/executionHistory.lock index 9e020d2112b258be1d8a005b1763d548252e3013..b190eb5c436af22adc833110723e1493d5bdff28 100644 GIT binary patch literal 17 VcmZSnb#-Tx%i?)c7{Guz8vsKY1(g5* literal 17 VcmZSnb#-Tx%i?)c7{Gw>9RNd^1{MGS diff --git a/.gradle/8.14/fileHashes/fileHashes.bin b/.gradle/8.14/fileHashes/fileHashes.bin index aac4397ea7e204a37cd74d0ce9b4fb39b1968a84..b2380bf8596b35d39eea43a931f45d5122969292 100644 GIT binary patch delta 2977 zcmZuz2~<GM43!o^z<@(hFbE$RK7+p( zEQ2B{xIje6&w^5=2#O3vD&Xg11&b(E5Kvm7-(V^Ky?0+$OX6MY-gnlyd!KXeaL#>; z%}8oHQs-ohWCCYndrroxJh^j}&2tjoLM4kt%arvu+|Zkjhk8*35E|Ff&N&^ZlW&&m zLuD8lXqwc~uD;lj?2y9Hfy#XevKkW_!f9y}%#p6!cM{rah22*3A96h=@|Qt<=rd5y ztfLKf_J=J-Sdt057l6=I{((N$8c`=3$! zC)9}sL6TWA?X9o#9`UvlZ3NH@%$Yr*85rmlN0oJp38bg2XC)1xaj&^}HK!-a2(2C% zSk+0})Un0o_J%@Fs0@|L3e3k5j)?8mNWWoNLqOvdVSQ=kpzAHWd=Kiw`oIy32wK#= z_6=LL+o*)n4GdVYXwj=GNIh=u@1Szu3fZ*9aYT(WA+>mGB(=BKk$HOWKsL?}`eZ@` zqKAID>(F5}+AXk7V{{MGD^Ic`?9Ni&w6i)wNF=0qPTg_>okW{DxVL?X-(?e;yE128 zMQD~Q`{s#F9XN){qd|-o1^p^n<<;yut}p8m*#-=hnTJ;%fDG|+$k5aV@=w_sb5yYw zu;OuD=BRtS;0!)0*@_g*S!XoF%rEpiCM2hRhk8RJq>9NPoma;?ws2>16}P!mcc0Wm z>wqO6P9BfAHz~KmMGul@g4vaRyS^2VDK}MZ|$tJ`*JQGq4rKg93jpCP3{d)W!ih)QZ6x zK0Yl5LMX(6JcZEum%s$nUAVnCV6%&`7X$?{$W#b76~eRvgGJ&hAejCFE(MDOE|D|< z`gYSnself{^A|9|eFgM|06PXTahuids_uqUevHkpPkE>BTy4A3VZJPv*o`c}3t$=# zjWo?X+wZ4$=q=qznsWO`Vlo>f1>nJFfLbVIgVBJKtP>{t%Tjrn!m5$)+1IOhgBX1F z-2)=Qv}1uJa0}n|%aQSn)p5hI@dl~QXY6>~;|hqUtdHKzuNMv$DbYU?wX$wBT0Z_Sb@N^o=_jt)LSz87GjaXi-sScynTm z&0ghg_ zlU5@$sQls|1Vd5HOjQ|+9|uls^|G`fcZLR9R^z~}kYMa8W&%?olfQoP z!>jcAUwCTnUM)EfKVL(@(Hz4XV;&up_U5_RMlA9fH?-?NPjPeczC&%hk;Ot=qv^x8{k5}=R=s`s9h6x;c&F+Fypef^f73jIc^hX{+X+L6@1RgGZ; z_{K#((SM>V4_I9kWxi)ABRWEr;p0{j5_<5fkk=k>+DGqiLtkY4u_;B7*tJ<1rb^lG z_f^-+=lRz27oYhEGd9*?l!-)>5)_HGdbBHTO>5MYgj0Jx^l{Sd-r>mPEjXj(u|19_ zk!n>L+oB>1BsT-yMchA~jhTs6=v#otH4Z7JXnj(4LiPo(jq*-c@Q0^@$f5)h#z2n~ zJ!q^U7tlc|Ecx2v!NW0|Yp$%dD;VlMo~^_PuT-Uw?_}?|*ifQD*=kB)(1OJ>LQ*K@k|G?Yoza-+}x zdnrbHO4aJQ^1}<9yPTI&Y~NE->Nd5QJH|S$J(b?tSVZ1%4r9!| z;v1mGv4;KVDTSqd(#$ETf6RH3d@cXm_`@GSMg#@NlaPw{^vL;H7(@qfUHaN+;} delta 1726 zcmZWp3s96*6yBdlvdBvwy6l23Es(IpEJ+}aJk(V{6xn5AS(0T(j2M-nA;2Y&9rFd) zWX%~!mWAZKwP3JYnZ`?^QicRXG*JQ~#-cD32$>SP|9^j)TF%V9_sl)tch0%z-g8fV zODwk&&HgOnIK0XdKnY6=an4$U6WfA-{TwY=yF3A3R{`X>9tZP{KN#jWB7+mR(=g2) zBjEXq3drWM40XIr!enhwi`%meErKyC!;Xk(B6w1$<}fHBY|-Mo1x;RPxRJwdb7)$z z^Y0Z4Rie@kwe2f927^!|h6getA)q(%fw(DBl1S?=-ehvyrdG@-DktWsdHE zjd^+gD6JTs1DKn zRmQ12BARXMS2|{A)77Yhs5myur&@C(bLr6RWbuc>r)593(Z&Wi5l1Co1)pN20mkDB zxTBo;)C|4PnbNU9yBF-gOrYS*#``!?OAAoN3&l#^6w@weTX>lKs{3L_cn<~Q2Cv1S zH6N``@xgoih=I$yH_!OBJRE#y@CwdC?T8r;rQjqbFHFsbP$`=m`|IJ|!#9;jHMRNA zl4FF^G{+gteRirKu?&MWmoUhl>>;B%nLA`XN$r1B?W`X; zvrk{brWw_k;k14=BlqicU32g4- zZ_0t6x_{p3a;wVHq<#&`_g^?dZ_>a$jIJ^eG8+?BX=((&FvUvSy%c>fvU;|Xf_rSu zLs%qM^UllNZ2(+{sj^ j(SdC;+x_Hr|A{{XoYIMfboUZPUnlJye}s%s>aP9)pdBXL diff --git a/.gradle/8.14/fileHashes/fileHashes.lock b/.gradle/8.14/fileHashes/fileHashes.lock index b0bfcc3a6fc0c0c5c575da7e39e433e336eb2019..66a32fb9ccb3f40e75f136532d7f549257db620b 100644 GIT binary patch literal 17 VcmZQJ+4?|x>8n?D3}C>&6#zWF1+xGE literal 17 VcmZQJ+4?|x>8n?D3}C={3IIID1;PLT diff --git a/.gradle/8.14/fileHashes/resourceHashesCache.bin b/.gradle/8.14/fileHashes/resourceHashesCache.bin index 7a4882300a65cca16b569fe573aacdb0ec68a29c..c3afadcab5786d036f7cd980858e4cd0e77c7550 100644 GIT binary patch delta 4444 zcmbW43p7+~8^?`Ma+y6j7?&}7N;O}7qMK%1N6IZZE*XXlsmZu>qjGOtN;sr*-YC*3 z%6A%6Bq9+~ObQjsiByQLCn~ydeCFGGTe6+gx6Z7!*Rp==Kfm|ckLP{&o-QGwypm9` zg3LJ=RiP9VHgcp^;(s64(J}NB^H`1r+n7Zo+(8=Su@@U0z`I9P2Bo z{ka|>(8Cx+svUz0`60WvO87lMAln%zsKcyFr^}u8OaF8TT__K$s${{o=CM!>v=18r z#!G{)>CUn+)j-XCV7@vZs%p-R+RIRrLZFK|IG}D%Z*H-zz2TWsgeGrbhI_`3P2|d{ zYZ1;7fjjCn;(W4?akc(Egt?`HUUhp`yLokD&JwxjC=9{`?JaHj)GZy-2p=V`vMhEogqK)Jhfn*Js-hG^V!!p4h zUCuog)AlUNbn8}C96$`510Y9(Ml9tN-e0K_jIvjtVqEb2p!9Y9=$Q2gWT#_-zJmWr%9qfwKN?By6Iwu;R@P;Pm%CdguBotc)$OkbZtaEYVHJ)nlSX`5KUxfy((Ov9Uaeh5xOk%4Kp_$|7M` zC*Yw)BT6i3VrvLjAu%?UDy|GyUK1= zTqfBf+?5D;R0d>6$@Z+(rL$W>8YiR#g4~bW&kgZvAb?#+d$G zG`tiGdr~&m_!#BiM){)&UK1LO~MWaAE|u$mb>MR`i)OZ zkuc{sEX?CL98u1&ME|WGr-3sJLq444A1zAt(XH;G0k)09ZEcr^Tyj#-Gl5M42Ve#i zc-8Xapr=kEqUFkhVii(e2@0hw+d;xsR8-k2xX| z_e~fNow5C0Q*yKyDhIb=8Wdr3e7C<<3LRlCLeLA-h%p9hQ-$hi^pO^{c#K`S>@~#xIiif=W{uwmh#>1f5iogfK!hG7h!AP3+tqkZZePo5#YW z2U*W86x;EMh03S4wkfS3C+g~3T8NT%;1gXobGXT^I$Nw)#Rv*t=h}()!<1!W%gR*_oR7Oa4e2p@LSbG!_l)pz8t2&1e!i%(?r*3M`w>IsXo^?Wa{ znU{)B)OpK#$g1{#YN?m-gQUC0CM5)D#V4{+#g_!HVp!s|H zROD`67iSW+Hsx<5f9cq__Ki?TvK;vO^w#NZVCibSLlAo@Rmm&LlTg zP9y~5e<54%`)xI5md%xxyt(>Os>->*owrmcBomJB7h=2WW2w55h#7uCmpSj<8XfWa zQ^x4~l73#0PP1u)p;Wr>{N()=cmIil5MH0UygNXU$Ez$PZFDop`X>^P%Z|*3tx^1| z8}+!YDxnQ{$A{`+OY<)s`PS(hDkCcM#V=mp+^&EGNxXgQd{;4JXY1Uc*>-X1zEdM4 zNK&=;gGpXP!K~${j$hZVdWBD1AF??A*|}>)ChyIlcHPi4r()GF`y-T084)8R3BOiF z9FIpGf=P$(NZRJDw2 z9-i%;kuYfW-BJb9)k+>vQV+@ConMyBEcvLmOZ-szrfDRoUgNIc54UD7i97LUc!O)= zIeg;#9cggzF3c3%uwavSN(}leo5lPmlB{Bx(P&d?Sy8;Qyi<~=_~ms8GFo#s_YV-+C>M=xZqKZA8_ba$ zHY3rfCT+yqp!tR0p7y-Gdp|GU`bxYRBN3iODaA52!h^BwomyR4)Sn0gp$KxyK$$lT ztHzLis62+k&N+_^H<3>fS-zs2aZ}hjzfENt=N#fCMRLz~;xkBCOP^W8(+TO>Z0st_W1atrZ diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index 7cfafcc43e7dfcfc96d0a959a90c83f9d3b91f65..6da46601dfae14317e6d16bdee1d70d577b58209 100644 GIT binary patch literal 8 PcmZQzV4U^k#j%qB3+)64 literal 8 PcmZQzV4U^TC_oSZ2kQb9 diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml new file mode 100644 index 0000000..3d7ff42 --- /dev/null +++ b/.idea/dataSources.xml @@ -0,0 +1,17 @@ + + + + + mariadb + true + org.mariadb.jdbc.Driver + jdbc:mariadb://localhost:3306/hhn + + + + + + $ProjectFileDir$ + + + \ No newline at end of file diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml new file mode 100644 index 0000000..6eeecc5 --- /dev/null +++ b/.idea/sqldialects.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index a67facd..2a9da2f 100644 --- a/build.gradle +++ b/build.gradle @@ -10,6 +10,7 @@ repositories { } dependencies { + implementation 'com.mysql:mysql-connector-j:8.4.0' testImplementation platform('org.junit:junit-bom:5.10.0') testImplementation 'org.junit.jupiter:junit-jupiter' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' diff --git a/build/classes/java/main/hhn/temp/project/Task.class b/build/classes/java/main/hhn/temp/project/Task.class index b63acf1b334ac02fa74c4e7b550f47a549956556..1cc7d6f6a1ef552f157fccde464d9ccdb039743a 100644 GIT binary patch literal 2744 zcmai0T~`xV6x}x;goFX*D?*VnP{k0GXp6RrU@@Ykg`fsetZf~_n2hAhnF&Il`zPvS zU+hD>R@+syt6i&oYuD<(=-=pC{n+>UDQVH6;Rucj1WHEH6zE#mN6EOhRmx4tU0oWw<*v4M)5+Ra z#kI;Mx!$WGiemy1=``aSZq*SOTxbgIeOB)JHM}9+MV^-J4bzs;(%W$jgLqRQSlrG$ zDF_TVI$|uF*1BmY7UhNuaY@SvOp>4ox5$OEvS|iZcS; zQW!5gb+k?)q2Vmf322_b-SiIARRf287gLh)JD3dNyoL*S_dwxzk_v<@XRcUrw^ilb zZ^cDsaXD|=rXo;w^AujUN;)TwzG>K&u~slABGhO~!(~hh9LeU*?8Z{5u)Scqu4%s_ zd-Q!p;JDnUdmFcP!_n_5-Ssqu9}Z&{S3^i@xF$x`rE4 zlUjy6uaad-!w2|~+a1&0&6^(kpR|RrC@|RoZ*En1dRXv|IzjV>lP-Hmb>+1r(0{XF z8jh(GQh#LGj;kBBI3rlV2`S2L4H+!+3>M5%&dsarr{sqf4R>*mAF_GFp5@67#8P9) z2=3#f5FTjw7@x3C_Uk;!ZAMn5z14Dd6$r$VWA_ENn$=ok^)*>(h`p|?8k2Xh?pb%F zoh+}jiyT?7N@luRTr=%uSvj(=l(R-*rB+F`#egg?fn$xXCGM1f&st|roLXNA=S)|A zkj*Q^xvUeyIgBmy1WaNq<=>)lcqqRs1Kr8!kRVBSvK?8c%|sd1N;gMsh3(+7jk5#oc$0dyjaE_4vR8$IYpFWY4lC&^)rJLWy_$YPyu#DPgx zLd_&^8N;Yz?pHI(HK1mX=pm?Pl6MPja#*ghPH>byg7F^^`kE7ul-vZ~8xq(93D$rG z^01m1w|{%c_|2xqkDD5I9yT6nYP^9$6Xc%5#-mM*i_D~_R1toaEq(lVwEv8u)vn=} zc8Me4F1qh!&iG+S8hO25QSsacBiR3Wx$rP8 z)s;cC22~TKlbZ2nrPGHrc+NL@K4O7s|I8p0aqCMAjt{=ToeP29z>ipchF1UdbA&(l zi|7CTd0ZY7570Zi8QS0BFk^^Dg&Gva!7! h#86c^@X=}$Pw7*VZG-=B1cVs)i!ONGaLI@5{{W8`I+6eY literal 2393 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 literal 5014 zcmcIod0Z6d8GgQHWnmcwF=$YUDrEJ3wE!x8nU+HI)jWcTplBU;84sNSxdy1PT5s=ec23^fAF zJ*9%H8{PXIK&3a%Q)yP3ODwwk1t zy{EiD{b0!+ZKYyZF3?&EWWX@AN!94LCkxY>>Fzn6(ekctnKf7;(0o9h*1C6VPR7*i#t<6s?sLY!{jcU#esct4Gus(3J zn9Yvy7|7%;3#h3b&-*wy9!vWTCX$`mb6j^^XP$74?3K1SyQV3IU99Q?E0W-G^kcWA z-5!CB6|!DfI!VNSJYB&)3<%UtYOb_1u-hZuKpguq7{ic)0~jv$p2y<>)7AV|@`^h= zK?b%D1mz8D5XyEuQ^745q0M}O^|&z{ncwNDP-KB5Y%37O@GOB9rCRjcwmLINnBo}4 zn9TdxY|3yMO7vmNHKGc=va+`-cn)qOp(b>Lts<~Byru#j!n7?TfJc<)DR@3qqBo(N z*}b|gIk&QmqQl;FPz|y(ij0CRG=f2}1=f`*&ifuI_HBO$g;ZZCMXVL9s{+Ml< zlLYpWiuwy{TZ5w<6UAZXP0U7C&nwQ1f)~i1t2HfC^IEG0FJfH2JCg%& zeIu&TD}lK~qH-q(MiIo&=HU_VWeQ#{MaW1inno& zv(7Tr%fsZrl3Rfc;2jFyDZ#JSZZD{YQ-f0i@lwJBV?>`cRkvW%O3*9bnBkVSJp^yi zm8rps(;>AZ#njSPmPYCabyGV~m_Dr8qv~OUlEy(RqZ$WQTbIv)FzV)X4(_We8w~bS zT8(Eovs|un$kD!Ve+OBHf(#@bm2JupWszk-9@jm@gEgcrnL!tINgm-xzR`!FOcz_57ItL5~p zTsHDTrX`26AaUba&CrTiiwuQn{^>G#?YPf%r(p1Ag`rL#&Z=!C{kC3#t_oo-;<$r| zipqwre$zADc*UlV96@klq1T2q=lE3ozaBhOxTvSoAD z-4zBVQ1p%NQ_ZZQIckZ<6T0vwFLF7V_G($n+Z3kC1m$(O9%q-^*FwPZ^rN~1>eSZ%FeZc zk3o+i%u<~w!caFIetPWx56Y7wR`$}bLm1Gq*B;v8?Jama4`c%@qVhd?Z2rE22Qk-x z9}28)UzGke_%Z1tSx1n)Q&~dev~ju;$9Pb_4DFvvyFXKKN!q=Wj(#ZxPbm02E;isI z1;3Gk-zxYV=J@n``Sb?`=P@Us449^7rw!F{G$)2X3tY2+wUx*i!(Ta`pInvm!)GqP z6zX`41dqrO`JKey(|n5HT~K(>k1$@}P022vlmvepI?qCMUO?>7S=2s&_QcBz1RQx`6&e z$*!|VZ;N(vS#xw2d(Yt+&C&C?xe8;=(R&$66=WKl88om0HE2R3R-u`j@zwkyOJXgy zB7qS?HilMc*nm7X;snn+GSyx`ogh^vh7aOHUiv5TVctc!vKJr08T!f7?nm)4Lhx~} zjAKbnZ9~&Pk>qT}CvXpSCFH39a^^C6NQUiYdlm;}un{j;0-8pZp2;CtG-FSqT=L*c>FffaW2hm^h)^_9=B9 zFO6VKc7>lpD~Tja8Rd7{GSaaJJNcBxZP*Q+zZUj}(#p@Ll@G9#X)Qt3vesI{$j|y9 zu`_&bo-x<`Ns1j%X^TgVFE(>UY>-UrC zgJk*;*?j;l7$&>-lhwC)0ZBfuz*5|g2N-;mo@a@(Z1MK_AlunolH(DsI!9(lyeib8 z>R*TovF0CG(hw)2b3xF3RFGV#WxQ|hoWQv}b!4y@3pzdz45?6^GB~I19#e~Gb58y{3 z&ZQDahy`0Z-+Om{XTSH4*Eaw+=tuCd5yJ0a69L1~Tr31HgwFUwtF0>K?J|{>RYo%e z*GelpVmLUBzxxtfE1eC`rXjW%uJT-SE6a*kwVBJ*a=EPNAc2M__wmGxjsC(vl>M=J zk__EgX*p@jnXDhhtRSWzn^Y82Q7ebnq;GT8Fbv{<%o;L;rED6Jt<-;ggCR;xTc`3) zx%tO`Jo(aH#0f&O&n-rq45YYCXhf{zgY%0QuxH9VL=>Ib#8PL79m)>ZxPx6nuCj;j KN~=f6!~Q4M^K2ym literal 0 HcmV?d00001 diff --git a/build/classes/java/main/hhn/temp/project/expections/SQLStatmentException.class b/build/classes/java/main/hhn/temp/project/expections/SQLStatmentException.class new file mode 100644 index 0000000000000000000000000000000000000000..c034fabae6593d338d7de8b7ad559cf9cfa1bf92 GIT binary patch literal 415 zcmb7AO-sZu5Phk&)w;Utf`Z<>`2j|}uDch}QxUYX_iP>7ENxoaRQ7Lq5Bf$LHHSfH8&PCw z+D-)aj^ppX#5USwqmyZf4S|b1H_}pB%etxNlv+uPnhzFeWpW=UR@st_{UPgLS5G9+ zkF}w@uAEWxsAdH-!?;RSF;$Irct!d)*R8;1{NF(%fv}{uRoPPd*9Qcmr0SZKZnYbJ z@YiF{-7Op;WY^phyxBL7n~WyRIzBi(dxd!6%tOS{dCV+#hS=h4e}#M4X5=b6=r6Sf Ij6Cdq0qNLi?*IS* literal 0 HcmV?d00001 diff --git a/build/classes/java/main/hhn/temp/project/expections/TaskNotExistsException.class b/build/classes/java/main/hhn/temp/project/expections/TaskNotExistsException.class new file mode 100644 index 0000000000000000000000000000000000000000..0301cec5f7612aea3b5a03f937e4637b21d58f69 GIT binary patch literal 421 zcmb7AJx{|h5PdEoflw$^f&nHrJ|rxmZiOzWOi>3~b$5f6xFmKIJ1BpP35kIpz>h+l zt4bijf-Rlzy*t0N-^b_MJAhmCV|1_)A?RWgA;a-fJPTe3o$-f8J5|bYo65>5qZz^* zrIi~o9G)fLeN$H}oej_D5w;kv^IUT$%ZgXES<2LL*;aIrfaNn`pC-nQTVg(KWfMjmC{;~t;BzQf+3!orcUL( z^5akbe(;sQhf_r4onMSLxkquE(1=*ihZmQxU@w$)5L5I{6HA>Db|^bq<1Tgy`N|%8 LE3JJ(9UOcC?Nw|6 literal 0 HcmV?d00001 diff --git a/build/classes/java/main/hhn/temp/project/provider/MySql.class b/build/classes/java/main/hhn/temp/project/provider/MySql.class new file mode 100644 index 0000000000000000000000000000000000000000..7dc4f8dc7fa169970bf41dbcb3f276eac77296cd GIT binary patch literal 7127 zcmb7J2YeIP9sW)>oG@aE7LY|9kKI{`0-_ zF=5_nLgqu7T@n5<#u?#NIi7>^`+gPXc{8$G6m$!lYYnAxbIsG@S)6nHU3 zM~M$p;nT3FuP+faje)`7U@9r%(hkLK6KFmE8zZ!{+pJrQ$z z%V^6eoQ|bB&hTLw&eSkhO~`eF)_NV0 zM5I@=H?7w&NiRVK$C3#R9R+63CzIb}Bajtx(|%p7Zmlf-q@Xqe+b z4Q**}9qus(1(}YZhLw3fVGIvi$kRbecP6>E_3XUp#aS8_G}C&18-U+T`prJWAB~ui z?nv4wK`mB_ldj_81?X39)3I8E|0J7qCe8K9Od{%9=^PDbPqb2<-_pLnM~v!EBu)P= znPRaQbu>k|Yinoox^S!CjHLUgVl5hUH2Tnl^EAwIw31UVV`?yE3`SB$$c!*lj09t9 zc_9WlZEv<-h&pf7PsRCY*3sfaE7oh6?<|xjN{Gg=(UUQat%Fn^eUWk7regzFeI3il za)QsLtc_W-#1f2SQ<=jbOSsH(0akj^p`o#@Gt}A@_P2G0H!0otD^w%#P_6D-jC4;b zrW~cxzinOn*47YZn*7!LRqEKpEaA{{n2UzDhceGtvzvq?!sL}OhG}=2VyB3A`_O|Zb1N5V6Nf0SXsc}VVwZ-6^i66wr|s^Hshluv z#2GbS^l3Ofr0)Fz|N5>?9hSDYZ)okZoKiI2&?H=T`_M03e6~ky$rz~-F9xhtOusdy zWz=1%D(1#EcKti=nKeMM=%H z;@<6OUJTQLw{C99hMqsv8a~;r8k+n$H3&d2-jba+qoN_tfxUQ}hN?pIiVJ4ac~h3) z9eAgX%YAqk-mRfLFQ&rG3)Z`0c2x~#XB|fsR=fUr@!oM(-kwbL8>zgNy|_}0LR~h8 z$1%NdE@92Q+J|d!EfW&`OYp3xaa-(6s-eb?BT4LzkJeYV7o<|J<9ZD%^2S_AT~=VC zZ5@uK&9sv|O1ZPxQ-bRxKYT!Zb|T=G&z7PH9}<81u!dy?g1w-FeUu@WKevvLW%F^y zjKzcNQmM#DI{}v9MifoOE%>;OTYb02UL3TaEx!{N{gMw~#=YE<3`OD@V-pigq3k)1&8=y;J=urDQge@J7%r4C z^W(ihPeD!DE9AS}*!^RDB@_3B1w5g^I?9Ib0Lzz=*@~N!Q5MA+?XiT>nHlIdQsGE< zoIR!O$(~4jTO<{eXS=i5?29q;FMeI1)U>^G(V%g*dDiL@V(uMMy@n+&TxuJbw@0B+ zQ6?2v^l_LL2l*zf+#z@l);h~ruS$#^9`xC zvW=VZ6xA?0H+3#=XqXz!RdzbBA$h=>e@p~r9iIhB${ia|j8Ud>_7W@WTQ8krrD~VM zvw~TDmfO%C^u~$&N(?ZA~=*X@e2XP~pm=cQhCRpB5^wg?6 z3=_RsENMsFdpvcNI0b+XQxZyMQa#4{m;_jfIuh1OoYIfaPbST@nTiZ{7-nBGnw~Kk zzb(P<@OvG9kP`4m4NG$&9ZL))`;DOGLfl;Q%(p($Vw-b8 zZsp45tAkooBx5GK3_E2sn5m4hj3?z#sJ&rVB%U_B_$wnr^WyKUoSjL(M22+?aW+M1 z!@rluUVkiF=cnL5dFY&2Q1&7erNg)JD49~Z$4Kk=58uqwbRh-mc#S*9iA5PdmbS5& z`w$P0>yvop#{%AYXP1!LqYlAq2t?GdgfuEj&mBd*2klj(Sf^q8eoSvajth2_wjIHRBq55MMgG+` zcuW0NT(Fw`L5|dL(OS}2t^oTf=Yx)~<1xNF&xS6uEU^I#OdTE`;;RMLH}E*G^a46| zk+NM_!D=ra#pWV())W(2s0cNas;$<-Su=|58tRJ6D0Y#Co8c=f=554-0}8$&@H=x% zY@M|cb`#q8mn9S+MDdzww9g!@rd`(12Ip}6Tt3xNdM%|Jv5|LTkw&U<8vBG`5v5MU z6L^wV+GtZ1&j~x;7v|By^1d*>$vY2({z7>EizXfC>$vy?y@6ll#9Ud6Q6JyJw=Jz; zKUXQ{J2grxy~Sw5HJVa8y^cia4HiK00kxEi>HXvM&4^7f0_

eO5JM%8>Dj=R zFQS&d7rC??aIgkkT4uytYDdg7*k*%0W~+IP0=rj%Wx&{hGRdWGdWenOiiwdN@(L#8 zEb=8x<`e+fUZDZgw}ZdR1vpQY@CelF9FVOw-x3L_dLb-BZ{wV1IUwhyK%=6+|)@UtLj=>6R4(nM{%=4%4?@29{ z@-rVl#!rZEwM|#b*?BhImw7KW)sp%tr6idzK+$U`w`l9QW!?!&(8ONL&Of7s2e0tQ zk7c|H|6vYF%36IK`*u{7-Z6^1Jg6%D)F?hJ?dR6t?nz zHBhUoh*?s*Y=JndW1Q8BmBw)oevV)8`b&<>o>QFSSG@Po7O%3M&)(m#|4-`r7j^xc Ty8Z+I;<)UW{*C|Q1j_ygj&A#1 literal 0 HcmV?d00001 diff --git a/build/classes/java/test/project/BadCaseTaskTest.class b/build/classes/java/test/project/BadCaseTaskTest.class index df0cc4693c95da0880c3674aa0c2c5d92ad9cfdd..4558ef170b8ab563155f4bf68c4d07f8326afe8c 100644 GIT binary patch literal 9444 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 diff --git a/build/classes/java/test/project/GoodCaseTaskTest.class b/build/classes/java/test/project/GoodCaseTaskTest.class index bde6540dee72549da9ef8a7826e3585440dc7fbe..bf84e0e77266b9019d10c4b7548ab5c4d1b170ea 100644 GIT binary patch literal 8336 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 literal 4862 zcmb7H30oW26+MFlLh^tKUgdZZHc8lpoivUCAt5++yrlJx~FaGrv1MDfc}$yJ@38INHUU}etgWld2`>n_uPBleWTa@bK?~N z$MMey8W0E}sG|{08rm)x7maw<$gRX@moAtoS3}c?m9yMY4S}xi#Soe`?8sztao1eS z$McRYjN&tfm5U%GkhW;pyXpOcQCOWZa>k13L=ZtBj8<$7p-snKXxFg2gmcQa(-TI) z6!r^df!?>c<)s?-C+-A2+>GrSf=Oe|Y{pKmoiqz6$I82w&FCW7ts{y(8X_sjG+gOK z!||>}ne)8sSh8e+Dy62DMnzIe@BuIa>$ycHiS6ii1% zQP9w0$cLouCX3lDlUeCs<$Sn%F@l3Q6hfztdvI^9jEf9u2(6f|psQhfSNGG26FMHo7)i(0@f=hXz1X4*DPpBD>Ob!0(tgt?$3&sZH+o~pYSn_*K| zmuzR%blTZ)pVHxgn<8XhHd95HrCF>4QL`1*ZZf{UrX;Ablr?30D(bk1OWX=d3X`^3 zVDnkXI5sB-x)N_3O|_+U9q$m`Ky1)+l9I^FyL7x;BvRz1G~0lubv%P-$=&qYPL)JT zO@@knAD#~3{Z;3W5)f58VW*j)tqChbXk?7VJdxLUY;oId)}%PkXc#?P%(>Q@xo8zEx){slY_>Di#}C#?+_<@HJLZ&; z$`D|i%K3ymZ<6LEwb_C>*|OU!`mMKH*uK)`GfT7<+2(6RD3Iu2Z=EQ_;mOyB>b#z` z3i+(DE{+abHC{BbqCecF;*1%woOvmxVr}zOQ?bo;x#xLKDvM?jV^((CHpR$qro`S^ zU8MDVsZf6!`w^=3%N*4 z#H?jGj=34r5rR@MQ)$Z`Q)^pEyP`o*%;Kfzb*D0)H{G$Ko3WkQWp7nP?Q8EC=KGj3 zh}p}`q(VNBHP)8WMrUn|&LbN7{*MN*$i6#uIc3TZn?eXbrO?XXFmh+B9dfA3txU&l z3F|zp;c#8owflcJ8@a~(Myt?Oi3EJ-prlid$P;&+0t>jvyj^rs=1EKJ>m9d$1r7)( z_J(oWb_=d!gdg+BoX+J; zXCf=4ORe3~aL=Y3*Gg9iuk(BT&ZayVRBq8hj}82$(s<=h0*)da^CtT^ZoR_z0gge3Wk+4852t9fg;Y80(L^#l2MoSs1 zl~%xZG-C(0VVA_*sn&Uz&Ghjxe4N;ypr!ErN$KfRzNhDi5#(IFeOsb^$4t*lXzA_S zz^-KfHQe3Xzk!ZxxUY}*Uf!=@fTIUEDhF|p?!oW30QM1dKic@aVmo4-=|Crs*#TY! z*&gM_3oL*>d>Wr&Ku!GE|13uha^-XQ9Fat@TRHQ2-oHSbFBb46-oETd{cjpI@#Tz) zx_w*H4}2&nh8uWjs4?0|4$;Qz7}3yw1LMGToNVCsOGKqn?*`_`Mc9+pg5VU8Me1QK zfi6CE(@hV;=q0CqG8`bIIF4eFUx$a0!2Ocjs0zmCcE;y+%HtNM{a45`K%8R`EQ3TF z#8>e(YUbi_Wd$hio6_? z{o6M1cCW4~2ltXS@DSY`qthW)XN12+kF&y~WPO5v5A%b4T=IWFh2ry1`245++MbZC z1H^a`-y-Xv&sxnq&zTymzfIQP@mas_v7YnlzEoLvNw_Z>R9cM&$tvAndZcv4P-r(A zyn>YtT;R1dRhIJ+76SZ{6ToSDJ;NkC!jdHzc9Nx^r6}fD__IvLJWIO3nR68>nDbLG z}>5pX9ht z@&tY$Nw#2E(hU-EP|~fb>L0d6MAznK7fo}BchOXvdbl^=Sq@fp&9n?cb+{%8NmB+d z9BTLp$3fm-AR-S2j;auQdp7W%7id%2hezum{(>7+BMy%v59hcSS(t%!5bC|RL&Yng z!g8;R;KGnl%zD8{?=e1a@c-9%1;6t~fAB`H;?H;$uhB}JCx64=@ef4*3vnvU Apa1{> diff --git a/build/customJacocoReportDir/test/jacocoTestReport.xml b/build/customJacocoReportDir/test/jacocoTestReport.xml index a16e882..35ed832 100644 --- a/build/customJacocoReportDir/test/jacocoTestReport.xml +++ b/build/customJacocoReportDir/test/jacocoTestReport.xml @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/build/jacoco/test.exec b/build/jacoco/test.exec index ce45dfba1e205cb5edb7a0e9ad924d72424e6249..73c8257ac809de021f74578b8afb7a8a73e1688e 100644 GIT binary patch delta 16330 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 YrxFV;z}8|1*gDS~wxh3LsT1-jS zTPi7%DWNjcluT1;nx@4}(M;1!P5B*~`JI2xKj(Aa_j%v<`M&S1)AHM|$;~7?J9&yc zLf{`0H*>|B#LNvdV^h~#iDuh4uCQ^4AqeuoQ;!4npWg@H;6%z5aLG74Ts_C+ujB6? z@7O!?BcYy(ln_L{R#m|-zz6zG(~`ca5Xr{@u`oMp63cRO*Jr3XNFWG9+0*Q^>U#Y zPcv0^;(G=sd8GV&y_0Z5x=;(Rq!eb#FQ+fuaaChIwKO2CV5p{s0bdS^($&x-e-)MK ztte(Kqlbf7TM}oSUr6{OSJ4z5^Au3HW;4zxypSnoSd*{`OTZy^HL5aC%A6HVNvv8M zE;~joC#j-CA9do`_kID%p2$-Ob`~GwoC;`U#o!!OY)p?W&T`kT`KZiQs29ZLAM zDBgUJ`bME^x}^7mz#z5sdvz$`VvR-a?zsZNX=2=oc?1tZ6`!c`dl++9>&M{mX34vvg|Co5x7kq zu3HUdBWm>|I<_vvK0zR;FF)Xgz=K{8%1PA?t0*S?5V+J7c3-W5l}0GFqx)z{N!1J! zCSfyFt7t0Q%E|L1-?MMj8!J48Tf!W4Y6vj))nzQy^he9KVoERM)WWyD?LtP43G{Q6 za6?l7*ZgO6)ccdAkIH*lgb;>Pv@u-Fmgf!=;A!nQpKX57#O|h-w2 zN9kRK>QqV2vDEUMn$2jwE5NXbgWt59@tw{A+QpOqZfQW#2SS3f17`SDT??Iss!-7j zhF;NGaJP$SF27Xzdr*GH;TQaZ;rn%J%pcqwb&->+ zfeZs9hLuZT?$KqGRRw|-MvGT%FDHpsi z1yJ0of$JqYxNqb^o%hge`6;^LA;ttu&L@R1Dh-8!u?Kx$^KH5GrGW*poT;G~{w&po zLskWuqTaFf{dr>g#?ue|1vEp6|)erR~7T8cOh->e9SYG(e;6&&umD}T<-Sw2{l#5uM8C^m zykR)S7zQ~s!Yx(dv)>k}mN9gmJWr96ClC?#jFav0=Y9#b`FURGLBVSM|Nm;wj4Q}L za1!-amk@X`3CS}b(5tqIEbdxp1ruhIVy0It!Ho)ks`c!LkmozP&*QM$1V#kdXq^Es zo5eEiLvkbz*led#+YI05EL}3rfJTI)wtVPTHo#)ma`aYih0xBAtxFK28N=|aawWys zSrtjSRSOUVi*`!j)s>JSPeX@esODHWcRW zlkoE2#HyWVfP2Cn{mx$05A z&b2d8;NmAstZgDGmjx~%n=c0!PU5Vo%7JAvi^YLvT_mi<&h*@@418?S zTvv}(VkbnNioyx8Jsj%2@k6}``mVcV%5IhRhnxum&7(hiX-}pyW7KpU>d-=iOa-eK z_@Q0qhqeX#s4hq8t`hBWqe7SJoEE$Xdvnxk$XTdDawnNlE zwtDX`&Q&pH=%$9Ir7TFqG;;j)D2IgpodKkeJ#sSy;O(D{eHS!v$lnc(7eHlKd zz+o7lIh`g}L;gUi%Y>hKxD_RkC3a3F(R6t=xef+hTJ)=bKC$C3eDWivquEa#M;5EY zp=%>0_eGlJwz)cAOyeHrwStJ?UJ0#U3oESMy@+uxeT<`0} zkuYCc)k;}BQ zeK$%Vj;KS}&3KmXo^cW{B19wsVPr8~aH28qP?c3L!AvTn@5#*#Xo&Pi#H|V{>x@>@ zS>MHd|6;&k>f+3p%y^bEKPl+x>38PV-h}xi9>WHvl1{SfC~bK%11SR`FpG0T*T5_$ z!rK7@B*yj8{-=(&?dd64K+K!CVPtOKP9f>!Gy#+v2qyPJAa@c;V5eF zhQKmWMu)X|KXE5hOPGKYCTtos!o$St_-?R(T3?Z19BRIEEe2Fg&=?@Z?@3P(c5eZ5 org~uT-bSQLNoConectionException

SQLNoConectionException

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 4100 %0 of 0n/a010201
SQLNoConectionException(String)4100 %n/a010201
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/SQLNoConectionException.java.html b/build/jacocoHtml/hhn.temp.project.expections/SQLNoConectionException.java.html new file mode 100644 index 0000000..b405211 --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.expections/SQLNoConectionException.java.html @@ -0,0 +1,10 @@ +SQLNoConectionException.java

SQLNoConectionException.java

package hhn.temp.project.expections;
+
+public class SQLNoConectionException extends RuntimeException {
+
+  public SQLNoConectionException(String message) {
+    super(message);
+  }
+}
+
+
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.html b/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.html new file mode 100644 index 0000000..41f30ad --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.html @@ -0,0 +1 @@ +SQLStatmentException

SQLStatmentException

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total4 of 40 %0 of 0n/a112211
SQLStatmentException(String)40 %n/a112211
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.java.html b/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.java.html new file mode 100644 index 0000000..45826b2 --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.expections/SQLStatmentException.java.html @@ -0,0 +1,10 @@ +SQLStatmentException.java

SQLStatmentException.java

package hhn.temp.project.expections;
+
+public class SQLStatmentException extends RuntimeException {
+
+  public SQLStatmentException(String message) {
+    super(message);
+  }
+}
+
+
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.html b/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.html new file mode 100644 index 0000000..bd0b4ba --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.html @@ -0,0 +1 @@ +TaskNotExistsException

TaskNotExistsException

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total4 of 40 %0 of 0n/a112211
TaskNotExistsException(String)40 %n/a112211
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.java.html b/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.java.html new file mode 100644 index 0000000..670113c --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.expections/TaskNotExistsException.java.html @@ -0,0 +1,10 @@ +TaskNotExistsException.java

TaskNotExistsException.java

package hhn.temp.project.expections;
+
+public class TaskNotExistsException extends RuntimeException {
+
+  public TaskNotExistsException(String message) {
+    super(message);
+  }
+}
+
+
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/index.html b/build/jacocoHtml/hhn.temp.project.expections/index.html index acb2cae..6455ab1 100644 --- a/build/jacocoHtml/hhn.temp.project.expections/index.html +++ b/build/jacocoHtml/hhn.temp.project.expections/index.html @@ -1 +1 @@ -hhn.temp.project.expections

hhn.temp.project.expections

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 8100 %0 of 0n/a02040202
TaskAlreadyExistsException4100 %n/a01020101
TaskHasNoWorkerException4100 %n/a01020101
\ No newline at end of file +hhn.temp.project.expections

hhn.temp.project.expections

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total8 of 2060 %0 of 0n/a254102525
TaskNotExistsException40 %n/a11221111
SQLStatmentException40 %n/a11221111
SQLNoConectionException4100 %n/a01020101
TaskAlreadyExistsException4100 %n/a01020101
TaskHasNoWorkerException4100 %n/a01020101
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.expections/index.source.html b/build/jacocoHtml/hhn.temp.project.expections/index.source.html index 43487dd..be0d987 100644 --- a/build/jacocoHtml/hhn.temp.project.expections/index.source.html +++ b/build/jacocoHtml/hhn.temp.project.expections/index.source.html @@ -1 +1 @@ -hhn.temp.project.expections

hhn.temp.project.expections

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 8100 %0 of 0n/a02040202
TaskAlreadyExistsException.java4100 %n/a01020101
TaskHasNoWorkerException.java4100 %n/a01020101
\ No newline at end of file +hhn.temp.project.expections

hhn.temp.project.expections

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total8 of 2060 %0 of 0n/a254102525
SQLStatmentException.java40 %n/a11221111
TaskNotExistsException.java40 %n/a11221111
TaskAlreadyExistsException.java4100 %n/a01020101
TaskHasNoWorkerException.java4100 %n/a01020101
SQLNoConectionException.java4100 %n/a01020101
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.provider/MySql.html b/build/jacocoHtml/hhn.temp.project.provider/MySql.html new file mode 100644 index 0000000..ace2173 --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.provider/MySql.html @@ -0,0 +1 @@ +MySql

MySql

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total89 of 35574 %3 of 862 %31827100014
getTask(int)122062 %1150 %123801
getTask(String)121961 %1150 %123801
createTask(String, String)112771 %1150 %1231001
connect()62580 %n/a012901
getTaskList()62480 %2100 %022801
updateStatus(int, TaskStatus)62076 %n/a012801
updateDescription(int, String)61976 %n/a012801
updateWorker(int, String)61976 %n/a012801
existTask(int)61672 %n/a012601
existTask(String)61571 %n/a012601
deleteTask(String)61470 %n/a012701
reset()61062 %n/a012601
getTaskFromDatabase(ResultSet)23100 %n/a010201
MySql(String, String, String, String)15100 %n/a010601
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.provider/MySql.java.html b/build/jacocoHtml/hhn.temp.project.provider/MySql.java.html new file mode 100644 index 0000000..9ea83d6 --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.provider/MySql.java.html @@ -0,0 +1,227 @@ +MySql.java

MySql.java

package hhn.temp.project.provider;
+
+import hhn.temp.project.Task;
+import hhn.temp.project.TaskStatus;
+import hhn.temp.project.expections.SQLNoConectionException;
+import hhn.temp.project.expections.SQLStatmentException;
+import hhn.temp.project.expections.TaskNotExistsException;
+
+import java.sql.*;
+import java.util.ArrayList;
+import java.util.List;
+
+public class MySql {
+
+  private String user;
+  private String password;
+  private String db;
+  private String host;
+  private Connection connection;
+
+  public MySql(String user, String password, String db, String host) {
+    this.user = user;
+    this.password = password;
+    this.db = db;
+    this.host = host;
+  }
+
+  public void connect() {
+    String url = "jdbc:mysql://" + host + ":3306/" + db + "?autoReconnect=true&useSSL=false";
+
+    try {
+      Class.forName("com.mysql.cj.jdbc.Driver");
+      connection = DriverManager.getConnection(url, user, password);
+    } catch (SQLException e) {
+      throw new SQLNoConectionException("Cant connect to the database");
+    } catch (ClassNotFoundException e) {
+      throw new SQLNoConectionException("Cant connect to the database: Driver class not found!");
+    }
+  }
+
+  public void reset() {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("TRUNCATE task");
+      stmt.executeUpdate();
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant insert data in database");
+    }
+  }
+
+  public int createTask(String name, String description) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("INSERT INTO task ( taskName, taskDescription) VALUES ( ? , ? )", Statement.RETURN_GENERATED_KEYS);
+      stmt.setString(1, name);
+      stmt.setString(2, description);
+      stmt.executeUpdate();
+      ResultSet rs = stmt.getGeneratedKeys();
+      if(rs.next()) {
+        return rs.getInt(1);
+      }else{
+        throw new SQLStatmentException("Can insert data but not select");
+      }
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant insert data in database");
+    }
+  }
+
+//  public void deleteTask(int id) {
+//    try {
+//      PreparedStatement stmt = connection.prepareStatement("DELETE task WHERE taskID=?");
+//      stmt.setString(1, ""+id);
+//      stmt.executeUpdate();
+//    } catch (SQLException e) {
+//      throw new SQLStatmentException("Cant delete data in database");
+//    }
+//  }
+
+  public boolean existTask(String name) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("Select * FROM task WHERE taskName=?");
+      stmt.setString(1, name);
+      ResultSet rs = stmt.executeQuery();
+      return rs.next();
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant select data from database");
+    }
+  }
+
+  public boolean existTask(int id) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("Select * FROM task WHERE taskID=?");
+      stmt.setString(1, ""+id);
+      ResultSet rs = stmt.executeQuery();
+      return rs.next();
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant select data from database");
+    }
+  }
+
+  public void deleteTask(String name) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("DELETE FROM task WHERE taskName=?");
+      stmt.setString(1, name);
+      stmt.executeUpdate();
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant delete data in database");
+    }
+  }
+
+  public void updateDescription(int id, String description) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskDescription=? WHERE taskID=?");
+      stmt.setString(1, description);
+      stmt.setString(2, ""+id);
+      stmt.executeUpdate();
+
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant update data in database");
+    }
+  }
+//  public void updateDescription(String name, String description) {
+//    try {
+//      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskDescription=? WHERE taskName=?");
+//      stmt.setString(1, description);
+//      stmt.setString(2, name);
+//      stmt.executeUpdate();
+//
+//    } catch (SQLException e) {
+//      throw new SQLStatmentException("Cant update data in database");
+//    }
+//  }
+  public void updateStatus(int id, TaskStatus status) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskStatus=? WHERE taskID=?");
+      stmt.setString(1, status.name());
+      stmt.setString(2, ""+id);
+      stmt.executeUpdate();
+
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant update data in database");
+    }
+  }
+//  public void updateStatus(String name, TaskStatus status) {
+//    try {
+//      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskStatus=? WHERE taskName=?");
+//      stmt.setString(1, status.name());
+//      stmt.setString(2, name);
+//      stmt.executeUpdate();
+//
+//    } catch (SQLException e) {
+//      throw new SQLStatmentException("Cant update data in database");
+//    }
+//  }
+
+  public void updateWorker(int id, String worker) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskWorker=? WHERE taskID=?");
+      stmt.setString(1, worker);
+      stmt.setString(2, ""+id);
+      stmt.executeUpdate();
+
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant update data in database");
+    }
+  }
+
+//  public void updateWorker(String name, String worker) {
+//    try {
+//      PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskWorker=? WHERE taskName=?");
+//      stmt.setString(1, worker);
+//      stmt.setString(2, name);
+//      stmt.executeUpdate();
+//
+//    } catch (SQLException e) {
+//      throw new SQLStatmentException("Cant update data in database");
+//    }
+//  }
+
+  public Task getTask(int id) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task WHERE taskID=?");
+      stmt.setString(1, ""+id);
+      ResultSet rs = stmt.executeQuery();
+      if(rs.next()) {
+        return getTaskFromDatabase(rs);
+      } else {
+        throw new TaskNotExistsException("No Task found in databse with id: " + id);
+      }
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant select data from database");
+    }
+  }
+  public Task getTask(String name) {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task WHERE taskName=?");
+      stmt.setString(1, name);
+      ResultSet rs = stmt.executeQuery();
+      if(rs.next()) {
+        return getTaskFromDatabase(rs);
+      }else{
+        throw new TaskNotExistsException("No Task found in databse with name: " + name);
+      }
+
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant select data from database");
+    }
+  }
+
+  public List<Task> getTaskList() {
+    try {
+      PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task");
+      ResultSet rs = stmt.executeQuery();
+      List<Task> taskList = new ArrayList<>();
+      while(rs.next()) {
+        taskList.add(getTaskFromDatabase(rs));
+      }
+      return taskList;
+    } catch (SQLException e) {
+      throw new SQLStatmentException("Cant select data from database");
+    }
+  }
+
+  private Task getTaskFromDatabase(ResultSet rs) throws SQLException {
+    Task task = new Task(rs.getInt("taskID"), rs.getString("taskName"), rs.getString("taskDescription"), rs.getString("taskWorker"),TaskStatus.valueOf(rs.getString("taskStatus")), this);
+    return task;
+  }
+}
+
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.provider/index.html b/build/jacocoHtml/hhn.temp.project.provider/index.html new file mode 100644 index 0000000..21b70db --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.provider/index.html @@ -0,0 +1 @@ +hhn.temp.project.provider

hhn.temp.project.provider

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total89 of 35574 %3 of 862 %3182710001401
MySql8926674 %3562 %3182710001401
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project.provider/index.source.html b/build/jacocoHtml/hhn.temp.project.provider/index.source.html new file mode 100644 index 0000000..2ea8f32 --- /dev/null +++ b/build/jacocoHtml/hhn.temp.project.provider/index.source.html @@ -0,0 +1 @@ +hhn.temp.project.provider

hhn.temp.project.provider

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total89 of 35574 %3 of 862 %3182710001401
MySql.java8926674 %3562 %3182710001401
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project/Task.html b/build/jacocoHtml/hhn.temp.project/Task.html index b360ed0..b75efa2 100644 --- a/build/jacocoHtml/hhn.temp.project/Task.html +++ b/build/jacocoHtml/hhn.temp.project/Task.html @@ -1 +1 @@ -Task

Task

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 115100 %0 of 16100 %019036011
setWorker(String)26100 %6100 %040701
checkOnlyLetter(String)22100 %4100 %030701
Task(String, String)19100 %n/a010601
setDescription(String)11100 %2100 %020401
setStatus(TaskStatus)11100 %2100 %020401
getWorker()11100 %2100 %020301
getTaskID()3100 %n/a010101
getName()3100 %n/a010101
getDescription()3100 %n/a010101
getStatus()3100 %n/a010101
static {...}3100 %n/a010101
\ No newline at end of file +Task

Task

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 138100 %0 of 16100 %018041010
setWorker(String)38100 %6100 %040901
checkOnlyLetter(String)22100 %4100 %030701
Task(int, String, String, String, TaskStatus, MySql)21100 %n/a010801
setDescription(String)17100 %2100 %020501
setStatus(TaskStatus)17100 %2100 %020501
getWorker()11100 %2100 %020301
getTaskID()3100 %n/a010101
getName()3100 %n/a010101
getDescription()3100 %n/a010101
getStatus()3100 %n/a010101
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project/Task.java.html b/build/jacocoHtml/hhn.temp.project/Task.java.html index 9904366..a6eff97 100644 --- a/build/jacocoHtml/hhn.temp.project/Task.java.html +++ b/build/jacocoHtml/hhn.temp.project/Task.java.html @@ -1,6 +1,7 @@ Task.java

Task.java

package hhn.temp.project;
 
 import hhn.temp.project.expections.TaskHasNoWorkerException;
+import hhn.temp.project.provider.MySql;
 
 public class Task {
 
@@ -8,82 +9,87 @@ public class Task {
   private String description;
   private TaskStatus taskStatus;
   private int taskID;
-  private static int idCounter = 0;
   private String workername;
+  private MySql mySql;
 
-  public Task(String name, String description) {
+  public Task(int id, String name, String description, String workername, TaskStatus status, MySql mySql) {
 
-
-    this.name = name;
-    this.description = description;
-    this.taskStatus = TaskStatus.OPEN;
-    //TODO when DB then auto IDs
-    this.taskID = idCounter++;
-  }
+    this.taskID = id;
+    this.name = name;
+    this.description = description;
+    this.taskStatus = status;
+    this.workername = workername;
+    this.mySql = mySql;
+  }
 
   public int getTaskID() {
-    return this.taskID;
+    return this.taskID;
   }
 
   public String getName() {
-    return this.name;
+    return this.name;
   }
 
   public String getDescription() {
-    return description;
+    return description;
   }
 
   public TaskStatus getStatus() {
-    return taskStatus;
+    return taskStatus;
   }
 
   public void setDescription(String description) {
-    if (description == null ) {
+    if (description == null ) {
 
-      throw new IllegalArgumentException("Description is null!");
+      throw new IllegalArgumentException("Description is null!");
     }
 
-    this.description = description;
-  }
+    this.mySql.updateDescription(taskID, description);
+    this.description = description;
+  }
 
   public void setStatus(TaskStatus taskStatus) {
-    if (taskStatus == null ) {
+    if (taskStatus == null ) {
 
-      throw new IllegalArgumentException("TaskStatus is null!");
+      throw new IllegalArgumentException("TaskStatus is null!");
     }
 
-    this.taskStatus = taskStatus;
-  }
+    this.mySql.updateStatus(taskID, taskStatus);
+    this.taskStatus = taskStatus;
+  }
 
   public void setWorker(String workerName) {
-    if(workerName == null || workerName.isEmpty()) {
-      throw new IllegalArgumentException("There is nothing in this variable.");
+    if(workerName == null || workerName.isEmpty()) {
+      throw new IllegalArgumentException("There is nothing in this variable.");
     }
-    if(!checkOnlyLetter(workerName)){
-      throw new IllegalArgumentException("Only Lettery as Worker Name!");
+    if(!checkOnlyLetter(workerName)){
+      throw new IllegalArgumentException("Only Lettery as Worker Name!");
     }
-    this.workername = workerName;
-    this.setStatus(TaskStatus.INPROCESS);
-  }
+
+    this.mySql.updateStatus(taskID, TaskStatus.INPROCESS);
+    this.mySql.updateWorker(taskID, workerName);
+    this.workername = workerName;
+    this.setStatus(TaskStatus.INPROCESS);
+  }
 
   public String getWorker() {
-    if(this.workername == null) {
-      throw new TaskHasNoWorkerException("Please set first a Worker");
+    if(this.workername == null) {
+      throw new TaskHasNoWorkerException("Please set first a Worker");
     }
-    return this.workername;
+    return this.workername;
   }
 
   private boolean checkOnlyLetter(String text) {
-    boolean result = true;
+    boolean result = true;
 
-    for(int i = 0; i < text.length(); i++) {
-      char c = text.charAt(i);
-      if(!Character.isLetter(c)) {
-        result = false;
-        break;
+    for(int i = 0; i < text.length(); i++) {
+      char c = text.charAt(i);
+      if(!Character.isLetter(c)) {
+        result = false;
+        break;
       }
     }
-    return result;
+    return result;
   }
 }
 
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project/TaskManager.html b/build/jacocoHtml/hhn.temp.project/TaskManager.html index 2f049fd..1abd3e2 100644 --- a/build/jacocoHtml/hhn.temp.project/TaskManager.html +++ b/build/jacocoHtml/hhn.temp.project/TaskManager.html @@ -1 +1 @@ -TaskManager

TaskManager

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 191100 %0 of 22100 %023035012
createTask(String, String)59100 %10100 %0601201
deleteTask(String)40100 %6100 %040701
checkOnlyLetterOrDigit(String)22100 %4100 %030701
getTask(int)18100 %2100 %020301
getTask(String)12100 %n/a010201
TaskManager()8100 %n/a010301
getTaskList()7100 %n/a010101
lambda$deleteTask$4(String, Task)5100 %n/a010101
lambda$deleteTask$3(String, Task)5100 %n/a010101
lambda$getTask$2()5100 %n/a010101
lambda$getTask$1(String, Task)5100 %n/a010101
lambda$createTask$0(String, Task)5100 %n/a010101
\ No newline at end of file +TaskManager

TaskManager

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethods
Total0 of 158100 %0 of 24100 %02003908
createTask(String, String)53100 %10100 %0601201
deleteTask(String)25100 %6100 %040601
checkOnlyLetterOrDigit(String)22100 %4100 %030701
TaskManager(String, String, String, String)20100 %n/a010501
getTask(String)15100 %2100 %020301
getTask(int)15100 %2100 %020301
resetTest()4100 %n/a010201
getTaskList()4100 %n/a010101
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project/TaskManager.java.html b/build/jacocoHtml/hhn.temp.project/TaskManager.java.html index 0d6d8d0..456163c 100644 --- a/build/jacocoHtml/hhn.temp.project/TaskManager.java.html +++ b/build/jacocoHtml/hhn.temp.project/TaskManager.java.html @@ -1,6 +1,7 @@ TaskManager.java

TaskManager.java

package hhn.temp.project;
 
 import hhn.temp.project.expections.TaskAlreadyExistsException;
+import hhn.temp.project.provider.MySql;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -10,76 +11,88 @@ import java.util.Map;
 public class TaskManager {
 
   private Map<Integer, Task> taskMap;
+  private MySql mysql;
 
-  public TaskManager() {
-    taskMap = new HashMap<>();
-  }
+  public TaskManager(String user, String password, String port, String host) {
+    taskMap = new HashMap<>();
+    this.mysql = new MySql(user, password, port, host);
+    this.mysql.connect();
+  }
+  /**
+    * only for Testing
+    */
+  public void resetTest() {
+    this.mysql.reset();
+  }
 
   public Task createTask(String name, String description) {
-    if (name == null || description == null ) {
+    if (name == null || description == null ) {
 
-      throw new IllegalArgumentException("Name/Description is null!");
+      throw new IllegalArgumentException("Name/Description is null!");
     }
-    if(name.isEmpty()) {
-      throw new IllegalArgumentException("Name is empty!");
+    if(name.isEmpty()) {
+      throw new IllegalArgumentException("Name is empty!");
     }
 
-    if(!checkOnlyLetterOrDigit(name)) {
-      throw new IllegalArgumentException("Only Letters or Digit are allowed in the name: " + name);
+    if(!checkOnlyLetterOrDigit(name)) {
+      throw new IllegalArgumentException("Only Letters or Digit are allowed in the name: " + name);
     }
 
-
-    boolean taskExited = this.taskMap.values().stream().anyMatch(task -> task.getName().equals(name));
-    if(taskExited) {
-      throw new TaskAlreadyExistsException("Task already exits, with the name: " + name);
+    boolean taskExited = this.mysql.existTask(name);
+    if(taskExited) {
+      throw new TaskAlreadyExistsException("Task already exits, with the name: " + name);
     }
 
+    int taskId = this.mysql.createTask(name, description);
+    Task task = this.mysql.getTask(taskId);
 
-    Task task = new Task(name, description);
-    taskMap.put(task.getTaskID(), task);
-    return task;
+    //taskMap.put(task.getTaskID(), task);
+    return task;
   }
 
   public List<Task> getTaskList() {
-    return new ArrayList<>(this.taskMap.values());
+
+    return this.mysql.getTaskList();
   }
 
   public Task getTask(String name) {
-    return taskMap.values().stream().filter(t -> t.getName().equals(name)).findFirst()
-            .orElseThrow(() -> new IllegalArgumentException("Wrong name"));
+    if(!this.mysql.existTask(name)) {
+      throw new IllegalArgumentException("Wrong name");
+    }
+
+    return this.mysql.getTask(name);
   }
   public Task getTask(int taskID) {
-    if(!this.taskMap.containsKey(taskID)) {
-      throw new IllegalArgumentException("Wrong id");
+    if(!this.mysql.existTask(taskID)) {
+      throw new IllegalArgumentException("Wrong id");
     }
-    return this.taskMap.get(taskID);
+    return this.mysql.getTask(taskID);
   }
 
   public void deleteTask(String name) {
-    if (name == null ) {
+    if (name == null ) {
 
-      throw new IllegalArgumentException("Name is null!");
+      throw new IllegalArgumentException("Name is null!");
     }
-    if(name.isEmpty() || this.taskMap.values().stream().noneMatch(t -> t.getName().equals(name))) {
-      throw new IllegalArgumentException("Wrong name!");
+    if(name.isEmpty() || !this.mysql.existTask(name)) {
+      throw new IllegalArgumentException("Wrong name!");
     }
 
-    this.taskMap.remove(this.taskMap.values().stream().filter(t -> t.getName().equals(name)).findFirst()
-            .orElseThrow().getTaskID());
+    this.mysql.deleteTask(name);
 
-  }
+  }
 
   private boolean checkOnlyLetterOrDigit(String text) {
-    boolean result = true;
+    boolean result = true;
 
-    for(int i = 0; i < text.length(); i++) {
-      char c = text.charAt(i);
-      if(!Character.isLetterOrDigit(c)) {
-        result = false;
-        break;
+    for(int i = 0; i < text.length(); i++) {
+      char c = text.charAt(i);
+      if(!Character.isLetterOrDigit(c)) {
+        result = false;
+        break;
       }
     }
-    return result;
+    return result;
   }
 //  private boolean checkOnlyLetter(String text) {
 //    boolean result = true;
diff --git a/build/jacocoHtml/hhn.temp.project/index.html b/build/jacocoHtml/hhn.temp.project/index.html
index 00dce3a..1d59416 100644
--- a/build/jacocoHtml/hhn.temp.project/index.html
+++ b/build/jacocoHtml/hhn.temp.project/index.html
@@ -1 +1 @@
-hhn.temp.project

hhn.temp.project

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 330100 %0 of 38100 %04407402504
TaskManager191100 %22100 %02303501201
Task115100 %16100 %01903601101
TaskStatus21100 %n/a01020101
Main3100 %n/a01010101
\ No newline at end of file +hhn.temp.project

hhn.temp.project

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 320100 %0 of 40100 %04008302004
TaskManager158100 %24100 %0200390801
Task138100 %16100 %01804101001
TaskStatus21100 %n/a01020101
Main3100 %n/a01010101
\ No newline at end of file diff --git a/build/jacocoHtml/hhn.temp.project/index.source.html b/build/jacocoHtml/hhn.temp.project/index.source.html index 11647e3..a419d74 100644 --- a/build/jacocoHtml/hhn.temp.project/index.source.html +++ b/build/jacocoHtml/hhn.temp.project/index.source.html @@ -1 +1 @@ -hhn.temp.project

hhn.temp.project

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 330100 %0 of 38100 %04407402504
TaskManager.java191100 %22100 %02303501201
Task.java115100 %16100 %01903601101
TaskStatus.java21100 %n/a01020101
Main.java3100 %n/a01010101
\ No newline at end of file +hhn.temp.project

hhn.temp.project

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 320100 %0 of 40100 %04008302004
TaskManager.java158100 %24100 %0200390801
Task.java138100 %16100 %01804101001
TaskStatus.java21100 %n/a01020101
Main.java3100 %n/a01010101
\ No newline at end of file diff --git a/build/jacocoHtml/index.html b/build/jacocoHtml/index.html index ee9f882..df98c50 100644 --- a/build/jacocoHtml/index.html +++ b/build/jacocoHtml/index.html @@ -1 +1 @@ -GSE2TaskTracker

GSE2TaskTracker

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total0 of 338100 %0 of 38100 %04607802706
hhn.temp.project330100 %38100 %04407402504
hhn.temp.project.expections8100 %n/a02040202
\ No newline at end of file +GSE2TaskTracker

GSE2TaskTracker

ElementMissed InstructionsCov.Missed BranchesCov.MissedCxtyMissedLinesMissedMethodsMissedClasses
Total97 of 69586 %3 of 4893 %56331193239210
hhn.temp.project.provider8926674 %3562 %3182710001401
hhn.temp.project.expections81260 %n/a254102525
hhn.temp.project320100 %40100 %04008302004
\ No newline at end of file diff --git a/build/jacocoHtml/jacoco-sessions.html b/build/jacocoHtml/jacoco-sessions.html index 6b9aa4e..f058352 100644 --- a/build/jacocoHtml/jacoco-sessions.html +++ b/build/jacocoHtml/jacoco-sessions.html @@ -1 +1 @@ -Sessions

Sessions

This coverage report is based on execution data from the following sessions:

SessionStart TimeDump Time
Mac.fritz.box-6409f08a03.12.2025, 18:31:0903.12.2025, 18:31:10

Execution data for the following classes is considered in this report:

ClassId
com.esotericsoftware.kryo.io.Input82caa4ac8d2c9ad6
com.esotericsoftware.kryo.io.Output2e152e7951e62ecf
hhn.temp.project.Mainb65324ed71e62d1e
hhn.temp.project.Taskf8a7f7e18c96ebdc
hhn.temp.project.TaskManager350b09b4f4e0708d
hhn.temp.project.TaskStatus75b92028f3bd7a03
hhn.temp.project.expections.TaskAlreadyExistsExceptionb5aa00244646ad8a
hhn.temp.project.expections.TaskHasNoWorkerException91d7ea357c00ef34
org.apache.commons.lang.StringUtils9dd94cc65aafa7e1
org.gradle.api.internal.tasks.testing.AbstractTestDescriptorb7d6764e5c2ed1e2
org.gradle.api.internal.tasks.testing.DefaultTestClassDescriptor29a580f844a707e9
org.gradle.api.internal.tasks.testing.DefaultTestClassRunInfo68a7e79b2914fd4d
org.gradle.api.internal.tasks.testing.DefaultTestDescriptor62e300564099c798
org.gradle.api.internal.tasks.testing.DefaultTestSuiteDescriptor7ca2225e2fb0b4b2
org.gradle.api.internal.tasks.testing.SuiteTestClassProcessoraf72bb8826a6828d
org.gradle.api.internal.tasks.testing.TestCompleteEvent0bc5b41bc5fd92f5
org.gradle.api.internal.tasks.testing.TestStartEvent7c275a9943dba162
org.gradle.api.internal.tasks.testing.failure.DefaultThrowableToTestFailureMapper98b3c6d95620e628
org.gradle.api.internal.tasks.testing.failure.TestFailureMapperfad0361b08728e0d
org.gradle.api.internal.tasks.testing.failure.mappers.AssertErrorMapperf8f52c2b08659a75
org.gradle.api.internal.tasks.testing.failure.mappers.AssertjMultipleAssertionsErrorMapper6d9c88eceee97e47
org.gradle.api.internal.tasks.testing.failure.mappers.JUnitComparisonTestFailureMapper1870ccedd70c62d3
org.gradle.api.internal.tasks.testing.failure.mappers.OpenTestAssertionFailedMapper670c8d72a39d27d6
org.gradle.api.internal.tasks.testing.failure.mappers.OpenTestMultipleFailuresErrorMapperfd9e46b889182617
org.gradle.api.internal.tasks.testing.filter.TestFilterSpeca7526e6ebab295a4
org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessore052047f692cb949
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformSpecf5579f12caeb524a
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor4c75223a5693afa4
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.BackwardsCompatibleLauncherSession7c93d17cac3a9550
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.CollectAllTestClassesExecutor4b0f383cf965c86c
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessorFactoryaf09c0eae5fa5ced
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestExecutionListenerb0f418134c40bf3d
org.gradle.api.internal.tasks.testing.processors.CaptureTestOutputTestResultProcessor6ad5ce3fa22109c1
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector66011962fbed0a65
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector.DiscardActionc8ea3545fa32c9b3
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector.WriteAction77c2ee9a9fa842b1
org.gradle.api.internal.tasks.testing.redirector.JULRedirector14551eb76b8ecae2
org.gradle.api.internal.tasks.testing.redirector.TestOutputRedirector3bd5f34889305e8d
org.gradle.api.internal.tasks.testing.redirector.TestOutputRedirector.Forwarderd61609d95c6d50d3
org.gradle.api.internal.tasks.testing.results.AttachParentTestResultProcessor6d02567fd2a7d62d
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer5f32a7ab6120753f
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultNestedTestSuiteDescriptorSerializera46705f180b3563a
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultParameterizedTestDescriptorSerializere127b3bb672baf7f
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestClassDescriptorSerializere10b56bac3d27de5
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestClassRunInfoSerializerb395c3a3085809af
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestDescriptorSerializer23901d25c1e75a58
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestFailureSerializer20561e1a5f6db7a7
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestMethodDescriptorSerializer3d1b5d8baa0a900e
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestOutputEventSerializerf44f90cc4c1aac70
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestSuiteDescriptorSerializer4860e580b0f8c694
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.IdSerializerc0b64d9e606e6d13
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.NullableSerializer062a5d6c320f0d23
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.TestCompleteEventSerializerd1bf01c1eff18541
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.TestStartEventSerializer680e50b2e35795b4
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.WorkerTestSuiteDescriptorSerializer925d25f3960ae5eb
org.gradle.api.internal.tasks.testing.worker.TestWorkerb93df52c3074c532
org.gradle.api.internal.tasks.testing.worker.TestWorker.1b8314e777e355f7d
org.gradle.api.internal.tasks.testing.worker.TestWorker.2cc4e0ec7222faee6
org.gradle.api.internal.tasks.testing.worker.TestWorker.3030c348be1c106a4
org.gradle.api.internal.tasks.testing.worker.TestWorker.State903c35047a140ff9
org.gradle.api.internal.tasks.testing.worker.TestWorker.TestFrameworkServiceRegistry12a7a3db90dec4e3
org.gradle.api.internal.tasks.testing.worker.WorkerTestClassProcessor0f6525b02f2bb3d2
org.gradle.api.internal.tasks.testing.worker.WorkerTestClassProcessor.WorkerTestSuiteDescriptorb3807e9b92351840
org.gradle.api.logging.LogLevel236e938e30516638
org.gradle.api.tasks.testing.TestOutputEvent.Destination5f28eafb6895d752
org.gradle.internal.Cast6130c81e08d81640
org.gradle.internal.MutableBoolean349de2b8a37d4338
org.gradle.internal.SystemPropertiesf454284e0229cc37
org.gradle.internal.actor.internal.DefaultActorFactory43acc9e5b3a492ea
org.gradle.internal.actor.internal.DefaultActorFactory.BlockingActore2e64c7c8141667f
org.gradle.internal.concurrent.AbstractDelegatingExecutorService49d3dededcea40d0
org.gradle.internal.concurrent.AbstractManagedExecutor3e801af2d608b388
org.gradle.internal.concurrent.AbstractManagedExecutor.1e617b5280c0b131e
org.gradle.internal.concurrent.CompositeStoppable4a36b916ba0a65be
org.gradle.internal.concurrent.CompositeStoppable.17991c35593ad107a
org.gradle.internal.concurrent.CompositeStoppable.3e70f2f4c49f9854e
org.gradle.internal.concurrent.DefaultExecutorFactory63847aa635eddd82
org.gradle.internal.concurrent.DefaultExecutorFactory.TrackedManagedExecutor36f4bc1cd93c039c
org.gradle.internal.concurrent.ExecutorPolicy.CatchAndRecordFailures2aacf6d3d0dd2240
org.gradle.internal.concurrent.ManagedExecutorImplce6f255f6fc1de83
org.gradle.internal.concurrent.ThreadFactoryImpl1d388becbfb01ad8
org.gradle.internal.dispatch.ContextClassLoaderDispatch132d0c3fd93e8141
org.gradle.internal.dispatch.ContextClassLoaderProxyd72ee515504b89e6
org.gradle.internal.dispatch.MethodInvocationbbd5401404e52b1f
org.gradle.internal.dispatch.ProxyDispatchAdapter67194db65692ab5d
org.gradle.internal.dispatch.ProxyDispatchAdapter.DispatchingInvocationHandler82935bb9f2db6b85
org.gradle.internal.dispatch.ReflectionDispatch6976fdf67f3e8979
org.gradle.internal.event.AbstractBroadcastDispatch0f5ffe97fa60f855
org.gradle.internal.event.BroadcastDispatch971f57b98f410335
org.gradle.internal.event.BroadcastDispatch.CompositeDispatch5d8a079ebb58640f
org.gradle.internal.event.BroadcastDispatch.EmptyDispatch136c24cb564bd0f5
org.gradle.internal.event.BroadcastDispatch.SingletonDispatch66b75507cc7e3700
org.gradle.internal.event.ListenerBroadcastf665e273f2a756e4
org.gradle.internal.id.CompositeIdGeneratorf1c607aa5fccdbaa
org.gradle.internal.id.CompositeIdGenerator.CompositeIde710c854f802c58b
org.gradle.internal.id.LongIdGenerator6f8168bf486a560d
org.gradle.internal.id.UUIDGenerator047a43ab94df6ffa
org.gradle.internal.io.BufferCaster88a8af829d9f2dca
org.gradle.internal.io.LinePerThreadBufferingOutputStream6663ead4c1825a46
org.gradle.internal.io.NullOutputStreameefcfe0665bbfe4c
org.gradle.internal.logging.config.LoggingSystemAdapter2bb5150ee66232e9
org.gradle.internal.logging.config.LoggingSystemAdapter.SnapshotImpl221de860d84422df
org.gradle.internal.logging.console.DefaultUserInputReceiver44c8536611e071b4
org.gradle.internal.logging.events.EndOutputEvent0d8edd2a5ce274ee
org.gradle.internal.logging.events.LogLevelChangeEvent33b762c6d5852de7
org.gradle.internal.logging.events.OutputEvent85bce87f1bcda18d
org.gradle.internal.logging.events.OutputEventListenere7d50a9306531b49
org.gradle.internal.logging.events.OutputEventListener.15c6014dff2070607
org.gradle.internal.logging.events.StyledTextOutputEvent11f48fb1a17330c8
org.gradle.internal.logging.events.StyledTextOutputEvent.Spanc55f799d2631f13d
org.gradle.internal.logging.serializer.LogEventSerializerb6d88af223db296a
org.gradle.internal.logging.serializer.LogLevelChangeEventSerializerf77a59533dde75ec
org.gradle.internal.logging.serializer.SpanSerializer5f773b7d1ad07c9f
org.gradle.internal.logging.serializer.StyledTextOutputEventSerializerfaebed27ac3e65ba
org.gradle.internal.logging.services.DefaultLoggingManager61e216a064052ff1
org.gradle.internal.logging.services.DefaultLoggingManager.StartableLoggingRouter78396be937af48de
org.gradle.internal.logging.services.DefaultLoggingManager.StartableLoggingSystemb121a97021902643
org.gradle.internal.logging.services.DefaultLoggingManagerFactory04bcce4325025a96
org.gradle.internal.logging.services.LoggingServiceRegistry90edc2132a7bd2d5
org.gradle.internal.logging.services.LoggingServiceRegistry.1b114ac6ebd4de8f3
org.gradle.internal.logging.services.LoggingServiceRegistry.CommandLineLoggingab0f0dfe4e42595e
org.gradle.internal.logging.services.TextStreamOutputEventListeneref4d0c3267356598
org.gradle.internal.logging.sink.OutputEventListenerManagerd6dee3d6fea49020
org.gradle.internal.logging.sink.OutputEventListenerManager.11e218a705ff0ee7e
org.gradle.internal.logging.sink.OutputEventRendererad1cc4fc552ab292
org.gradle.internal.logging.sink.OutputEventRenderer.1b94418b2e260aede
org.gradle.internal.logging.sink.OutputEventRenderer.2a956801cd98ca633
org.gradle.internal.logging.sink.OutputEventRenderer.LazyListener7ee882569b166e1e
org.gradle.internal.logging.sink.OutputEventRenderer.SnapshotImpl827634628a47c5f5
org.gradle.internal.logging.sink.OutputEventTransformer06c2270eef0e291e
org.gradle.internal.logging.slf4j.BuildOperationAwareLogger6a70f9123229323f
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLogger30ddd0a8ff91b5f5
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext9d35d4b7a722eb08
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext.NoOpLogger3868cc8d50014a37
org.gradle.internal.logging.slf4j.Slf4jLoggingConfigurer75fba29c3739b15f
org.gradle.internal.logging.source.DefaultStdErrLoggingSystemfd3dd0caab2f1d95
org.gradle.internal.logging.source.DefaultStdOutLoggingSystem528bb39bfb67c3ae
org.gradle.internal.logging.source.JavaUtilLoggingSystem5e967b17aabfd442
org.gradle.internal.logging.source.JavaUtilLoggingSystem.SnapshotImpl15dfc30250723749
org.gradle.internal.logging.source.PrintStreamLoggingSystem1ae6e6b715c6b3f9
org.gradle.internal.logging.source.PrintStreamLoggingSystem.165643cb979acba64
org.gradle.internal.logging.source.PrintStreamLoggingSystem.OutputEventDestination8c1ddf1476568828
org.gradle.internal.logging.source.PrintStreamLoggingSystem.PrintStreamDestination9e7273f370028123
org.gradle.internal.logging.source.PrintStreamLoggingSystem.SnapshotImpl8f80a46f9780a57e
org.gradle.internal.logging.text.StyledTextOutput.Styled676557b62e3f601
org.gradle.internal.nativeintegration.filesystem.services.FileSystemServices4556096f1c5a9c8e
org.gradle.internal.nativeintegration.jansi.DefaultJansiRuntimeResolver913dbea9c5665791
org.gradle.internal.nativeintegration.jansi.JansiBootPathConfigurer3a766bce65ac1a48
org.gradle.internal.nativeintegration.jansi.JansiLibraryFactory0cbaac430d6656c4
org.gradle.internal.nativeintegration.jansi.JansiStorageLocatorc8bff1ccb071f9b6
org.gradle.internal.nativeintegration.services.NativeServices60e06107da63f5bf
org.gradle.internal.nativeintegration.services.NativeServices.18cc4a38f8f9f2c24
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures6c2167dd01d3a7df
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.13b01a06496dac527
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.1.23ac5c626690263b8
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.23e453e557ec15489
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode239d6c658f109a99
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.1709d06b6d4cada75
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.27701fd550a9f507e
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.3e9495efc537003de
org.gradle.internal.reflect.JavaMethod5541c31d24227b86
org.gradle.internal.remote.internal.KryoBackedMessageSerializer0028157720ec1f27
org.gradle.internal.remote.internal.hub.ConnectionSet323708d9214e34e4
org.gradle.internal.remote.internal.hub.ConnectionState250fb1b274991d9a
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializerb5f4b38125033ffd
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializer.ArraySerializer16505d5ccbb1b78b
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializer.EmptyArraySerializercdc53c79a631aa33
org.gradle.internal.remote.internal.hub.IncomingQueue0e8ecdb8f31efe51
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer7d84d4aa85858c73
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer.MessageReaderab1cd6753eb75a29
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer.MessageWriter3e4611f758508afb
org.gradle.internal.remote.internal.hub.JavaSerializationBackedMethodArgsSerializer4c7a738ee4525ff6
org.gradle.internal.remote.internal.hub.MessageHub1326887a1f1da0ac
org.gradle.internal.remote.internal.hub.MessageHub.ChannelDispatch8a9dfd1b6306d8e6
org.gradle.internal.remote.internal.hub.MessageHub.ConnectionDispatchdf1d0a86180d66e4
org.gradle.internal.remote.internal.hub.MessageHub.ConnectionReceivee1dc78071e8e957d
org.gradle.internal.remote.internal.hub.MessageHub.Discard63a8d677cc1f9101
org.gradle.internal.remote.internal.hub.MessageHub.Handler3d232f51f2c02828
org.gradle.internal.remote.internal.hub.MessageHub.State1b76747d7bce6b89
org.gradle.internal.remote.internal.hub.MessageHubBackedClient77c2124c3c43d832
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnectionc23964928f1aff22
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.1ac806a6bc6b1b21d
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.28ac38215966e3a20
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.DispatchWrapper9aa5d8679dbc6601
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer47063ab293644e83
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodDetailsb6b7fb55e88cc4b9
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodInvocationReadere6b939136f207ff5
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodInvocationWriterc3b77db1b2556afe
org.gradle.internal.remote.internal.hub.OutgoingQueuefbcc05506ad40c68
org.gradle.internal.remote.internal.hub.protocol.ChannelIdentifier7697ff6a7c712869
org.gradle.internal.remote.internal.hub.protocol.ChannelMessage9bff479666e58802
org.gradle.internal.remote.internal.hub.protocol.EndOfStreamf29ffed85365f7db
org.gradle.internal.remote.internal.hub.protocol.InterHubMessage0c6e49b6ec077e16
org.gradle.internal.remote.internal.hub.protocol.InterHubMessage.Delivery0652d09c2a7fd1ac
org.gradle.internal.remote.internal.hub.queue.EndPointQueue8038a5636529123d
org.gradle.internal.remote.internal.hub.queue.MultiChannelQueuebcaac9c224068764
org.gradle.internal.remote.internal.hub.queue.MultiEndPointQueue27222a892157733f
org.gradle.internal.remote.internal.hub.queue.MultiEndPointQueue.144049b3edc682954
org.gradle.internal.remote.internal.hub.queue.QueueInitializerad18361c23e679b1
org.gradle.internal.remote.internal.inet.MultiChoiceAddress91381aa03cdd48e7
org.gradle.internal.remote.internal.inet.MultiChoiceAddressSerializer7ffc395650705aaa
org.gradle.internal.remote.internal.inet.SocketBlockingUtilc4937b9849ff6540
org.gradle.internal.remote.internal.inet.SocketConnectCompletion0da46ac4ccd1c9ce
org.gradle.internal.remote.internal.inet.SocketConnection4a6255ae3fb5a6e9
org.gradle.internal.remote.internal.inet.SocketConnection.16bd72dd3a4f955f4
org.gradle.internal.remote.internal.inet.SocketConnection.SocketInputStream41ab28127ec07333
org.gradle.internal.remote.internal.inet.SocketConnection.SocketOutputStream56a19b1a3dd17be0
org.gradle.internal.remote.internal.inet.SocketInetAddress20cc3fd7992230e8
org.gradle.internal.remote.internal.inet.SocketInetAddress.Serializerd42dd7f644e6367c
org.gradle.internal.remote.internal.inet.TcpOutgoingConnectorda9b573729b690fd
org.gradle.internal.remote.services.MessagingServices371e97275eb35dc5
org.gradle.internal.serialize.AbstractCollectionSerializer7897b7a9a0c39b1b
org.gradle.internal.serialize.AbstractDecoder6f331f65d3691839
org.gradle.internal.serialize.AbstractEncoder44ea8279ea7b3a07
org.gradle.internal.serialize.AbstractSerializerd5cd8744f99ef12d
org.gradle.internal.serialize.BaseSerializerFactory83d030ef5f6c0526
org.gradle.internal.serialize.BaseSerializerFactory.BigDecimalSerializer4dcd516a5e9202d8
org.gradle.internal.serialize.BaseSerializerFactory.BigIntegerSerializer50f6ab963a855e2a
org.gradle.internal.serialize.BaseSerializerFactory.BooleanSerializer9a343eeb20f2b7f4
org.gradle.internal.serialize.BaseSerializerFactory.ByteArraySerializer9566e41ef84566ae
org.gradle.internal.serialize.BaseSerializerFactory.ByteSerializer85286889be7534cf
org.gradle.internal.serialize.BaseSerializerFactory.CharSerializer6fba21fa805857ff
org.gradle.internal.serialize.BaseSerializerFactory.DoubleSerializer085b687ded9be124
org.gradle.internal.serialize.BaseSerializerFactory.EnumSerializera314f7118f1d0412
org.gradle.internal.serialize.BaseSerializerFactory.FileSerializerc43bc85ad47073ee
org.gradle.internal.serialize.BaseSerializerFactory.FloatSerializerdad7a35798e49d9d
org.gradle.internal.serialize.BaseSerializerFactory.IntegerSerializere8a55740afa66954
org.gradle.internal.serialize.BaseSerializerFactory.LongSerializer3a08a2ef15abca0d
org.gradle.internal.serialize.BaseSerializerFactory.PathSerializer22894f3c1859ada1
org.gradle.internal.serialize.BaseSerializerFactory.ShortSerializer5791e5a0a4ad1ece
org.gradle.internal.serialize.BaseSerializerFactory.StringMapSerializereb348217154fd0ed
org.gradle.internal.serialize.BaseSerializerFactory.StringSerializer01576ecfb2720760
org.gradle.internal.serialize.BaseSerializerFactory.ThrowableSerializerae463fe767977ceb
org.gradle.internal.serialize.ClassLoaderObjectInputStream81d9f3a2338180d3
org.gradle.internal.serialize.DefaultSerializer9b7593104d5f803c
org.gradle.internal.serialize.DefaultSerializerRegistry84449bcf590c1af7
org.gradle.internal.serialize.DefaultSerializerRegistry.1aeba2bb0cd2eab52
org.gradle.internal.serialize.DefaultSerializerRegistry.HierarchySerializerMatcherc4fa93579434fd2b
org.gradle.internal.serialize.DefaultSerializerRegistry.InstanceBasedSerializerFactory4d56c9c7fbddbcc0
org.gradle.internal.serialize.DefaultSerializerRegistry.SerializerClassMatcherStrategyea36ea8beff22743
org.gradle.internal.serialize.DefaultSerializerRegistry.StrictSerializerMatcher6df6080c06573b93
org.gradle.internal.serialize.DefaultSerializerRegistry.TaggedTypeSerializer264fbb605d976b35
org.gradle.internal.serialize.DefaultSerializerRegistry.TypeInfobd6904d4ac5974ce
org.gradle.internal.serialize.HashCodeSerializer874be2a480b96af8
org.gradle.internal.serialize.InputStreamBackedDecoder1a43def6f05c6405
org.gradle.internal.serialize.ListSerializerbad970c0192233e9
org.gradle.internal.serialize.kryo.KryoBackedDecoderf9287092db21f40c
org.gradle.internal.serialize.kryo.KryoBackedEncodere6a2be1dd138a272
org.gradle.internal.serialize.kryo.TypeSafeSerializer1dbc9e4c69fd1973
org.gradle.internal.serialize.kryo.TypeSafeSerializer.1bb88df969641a032
org.gradle.internal.serialize.kryo.TypeSafeSerializer.2599bac595545b9c0
org.gradle.internal.service.AbstractServiceMethodd8f9bf72435aa0d5
org.gradle.internal.service.DefaultServiceAccessToken552643647739457e
org.gradle.internal.service.DefaultServiceMethodFactory7cd5dc9e6187cc39
org.gradle.internal.service.DefaultServiceRegistry5b91c2e6d1541db9
org.gradle.internal.service.DefaultServiceRegistry.1a5957bd6a7e35017
org.gradle.internal.service.DefaultServiceRegistry.ClassInspectora67f4de9fecf4e9f
org.gradle.internal.service.DefaultServiceRegistry.ClassInspector.ClassDetailse14a78fdabafa6a6
org.gradle.internal.service.DefaultServiceRegistry.CompositeServiceProviderad51f0e7303e801d
org.gradle.internal.service.DefaultServiceRegistry.ConstructorServicec53583a3bbee2329
org.gradle.internal.service.DefaultServiceRegistry.FactoryMethodServicec94f704959a77ddb
org.gradle.internal.service.DefaultServiceRegistry.FactoryService5efa06cdad2305e5
org.gradle.internal.service.DefaultServiceRegistry.FixedInstanceServiceadf12b7e82dfb3fd
org.gradle.internal.service.DefaultServiceRegistry.ManagedObjectServiceProvider00ae876b89fa7714
org.gradle.internal.service.DefaultServiceRegistry.OwnServicesd7eed1a352f0d8e6
org.gradle.internal.service.DefaultServiceRegistry.ParentServices8369f7999f6e2ac7
org.gradle.internal.service.DefaultServiceRegistry.SingletonServiced319469c908bc1cf
org.gradle.internal.service.DefaultServiceRegistry.SingletonService.1cdfec069e7d8ab42
org.gradle.internal.service.DefaultServiceRegistry.SingletonService.BindStateb653da4aa2ccd9df
org.gradle.internal.service.DefaultServiceRegistry.State76b519b0b74b53cb
org.gradle.internal.service.DefaultServiceRegistry.ThisAsService2eef9987bf419fb4
org.gradle.internal.service.InjectUtil4e32c5f95305147b
org.gradle.internal.service.MethodHandleBasedServiceMethod674037aa99129b52
org.gradle.internal.service.MethodHandleBasedServiceMethodFactory47e87df4713e4ce5
org.gradle.internal.service.ReflectionBasedServiceMethod56fdba7d8393253f
org.gradle.internal.service.RelevantMethodsebb3efee7040ae62
org.gradle.internal.service.RelevantMethods.RelevantMethodsBuilder653e2ed3e283822f
org.gradle.internal.service.ServiceAccesseae993853cb06bb6
org.gradle.internal.service.ServiceAccess.1c3b7931689739967
org.gradle.internal.service.ServiceRegistryBuilder73d1a49b155b6056
org.gradle.internal.service.TypeStringFormatter8ef195776e72517f
org.gradle.internal.time.MonotonicClock723fd7c85fffe54b
org.gradle.internal.time.Time118854647ab7eed4
org.gradle.internal.time.TimeSource79d456cc39bbde3d
org.gradle.internal.time.TimeSource.14be788ff9e4278cd
org.gradle.process.internal.worker.WorkerLoggingSerializeradae78bad8b0e727
org.gradle.process.internal.worker.child.ActionExecutionWorkera7d30aba9c762788
org.gradle.process.internal.worker.child.ActionExecutionWorker.1d0eba6bfe3f78d57
org.gradle.process.internal.worker.child.DefaultWorkerDirectoryProvider10469cccf2e081cb
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker4397743716cfa5f5
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.2701810a4c2fdd0f8
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.ContextImplc1b75620f1c49583
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.PrintUnrecoverableErrorToFileHandler4c53666c8024a79b
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.WorkerServicesb7825f369a8ee808
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.WorkerServices.169e3f98f4d4b96c1
org.gradle.process.internal.worker.child.WorkerLogEventListener4a0b5fb708591833
org.gradle.process.internal.worker.messaging.WorkerConfig8633f06980fb19fd
org.gradle.process.internal.worker.messaging.WorkerConfigSerializerb913cc847f396960
org.gradle.util.internal.ArrayUtils05a97ebb2e812055
org.gradle.util.internal.CollectionUtils609c55009e4302e6
org.junit.jupiter.api.AssertDoesNotThrow36b9cb12d1985e50
org.junit.jupiter.api.AssertEquals02e79388fd0ddf18
org.junit.jupiter.api.AssertNotNull34eb9c4ee51b2816
org.junit.jupiter.api.AssertThrows2e413933639a681e
org.junit.jupiter.api.AssertTrue6ef3923800860200
org.junit.jupiter.api.AssertionUtilsa580a647f9b0d1af
org.junit.jupiter.api.Assertions30bb83f461535d85
org.junit.jupiter.api.DisplayNameGenerator1c70d4d828122f05
org.junit.jupiter.api.DisplayNameGenerator.IndicativeSentencesb23b44fe1a1ae4b6
org.junit.jupiter.api.DisplayNameGenerator.ReplaceUnderscores45af1f815eb3bfc6
org.junit.jupiter.api.DisplayNameGenerator.Simple3587fc3bd5ac68a7
org.junit.jupiter.api.DisplayNameGenerator.Standard232bffaaa51a0c4e
org.junit.jupiter.api.TestInstance.Lifecycle235138c6fffd45f1
org.junit.jupiter.api.extension.ConditionEvaluationResultfc311dfabd3a0e23
org.junit.jupiter.api.extension.ExtensionContextdacb7330135ba8f9
org.junit.jupiter.api.extension.ExtensionContext.Namespaceeb8d03782ab35d64
org.junit.jupiter.api.extension.InvocationInterceptor695ac2a6b4b9c7e4
org.junit.jupiter.engine.JupiterTestEngine011031d0b1fe58db
org.junit.jupiter.engine.config.CachingJupiterConfiguration9da5fe6b78ad9a14
org.junit.jupiter.engine.config.DefaultJupiterConfigurationbbee9c72790c271d
org.junit.jupiter.engine.config.EnumConfigurationParameterConverter433eec982a6fabbc
org.junit.jupiter.engine.config.InstantiatingConfigurationParameterConverterd2270f0957971443
org.junit.jupiter.engine.descriptor.AbstractExtensionContext6b3fc41ad8b41d4f
org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor414ee653c9e673cf
org.junit.jupiter.engine.descriptor.ClassExtensionContexte804dacaeaef4a6a
org.junit.jupiter.engine.descriptor.ClassTestDescriptor2f87db51b4485e07
org.junit.jupiter.engine.descriptor.DefaultTestInstanceFactoryContextb1b7d61e94c58605
org.junit.jupiter.engine.descriptor.DisplayNameUtils8a6f8eeb3e12ddf6
org.junit.jupiter.engine.descriptor.ExtensionUtils43a683ad1b768e92
org.junit.jupiter.engine.descriptor.JupiterEngineDescriptor3d2dbddce296b041
org.junit.jupiter.engine.descriptor.JupiterEngineExtensionContext7146ce9988edfce2
org.junit.jupiter.engine.descriptor.JupiterTestDescriptor67ad750cdb2cb53b
org.junit.jupiter.engine.descriptor.LifecycleMethodUtils286eb923d0b68032
org.junit.jupiter.engine.descriptor.MethodBasedTestDescriptorf531f49451e39050
org.junit.jupiter.engine.descriptor.MethodExtensionContextb5abe6523f4a32d7
org.junit.jupiter.engine.descriptor.TestInstanceLifecycleUtilsa247fc379f47df66
org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor35334f82ecefa63c
org.junit.jupiter.engine.discovery.AbstractAnnotatedDescriptorWrapper90b10f2d90d7b01b
org.junit.jupiter.engine.discovery.AbstractOrderingVisitorf8eb297929c247eb
org.junit.jupiter.engine.discovery.AbstractOrderingVisitor.DescriptorWrapperOrdererc8e1585f8474ed61
org.junit.jupiter.engine.discovery.ClassOrderingVisitor1f09fc1c6b9779bb
org.junit.jupiter.engine.discovery.ClassSelectorResolvere25bb2b197bc8493
org.junit.jupiter.engine.discovery.DefaultClassDescriptor9064f3528773a161
org.junit.jupiter.engine.discovery.DiscoverySelectorResolver5dc6be896f50996f
org.junit.jupiter.engine.discovery.MethodFinder621c8591e557439a
org.junit.jupiter.engine.discovery.MethodOrderingVisitor7d9864cebac818e1
org.junit.jupiter.engine.discovery.MethodSelectorResolver679c52dec5ee3cd2
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType2ca704c5264882ae
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.1b3bc3007a7dfdaa0
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.2598aec8eeefe85e3
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.3e8fd5325e2431a2b
org.junit.jupiter.engine.discovery.predicates.IsInnerClassd746bcff9a71ec26
org.junit.jupiter.engine.discovery.predicates.IsNestedTestClassf75dfd9ee2347890
org.junit.jupiter.engine.discovery.predicates.IsPotentialTestContainer909f14a1b9fe84dc
org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests34690a186bfcf3ac
org.junit.jupiter.engine.discovery.predicates.IsTestFactoryMethod941a8af0d47a68fd
org.junit.jupiter.engine.discovery.predicates.IsTestMethodf2039dbd13fce110
org.junit.jupiter.engine.discovery.predicates.IsTestTemplateMethodc13a4260435c18a8
org.junit.jupiter.engine.discovery.predicates.IsTestableMethod4be487dee199f633
org.junit.jupiter.engine.execution.ConditionEvaluatordf91d94b180fe511
org.junit.jupiter.engine.execution.ConstructorInvocation60b80968f2bdedc3
org.junit.jupiter.engine.execution.DefaultExecutableInvoker97f15d1e3151968f
org.junit.jupiter.engine.execution.DefaultTestInstances0fc6d90567826bc4
org.junit.jupiter.engine.execution.InterceptingExecutableInvoker42cb185ff5e76387
org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.ReflectiveInterceptorCall7e154d03f7a732e5
org.junit.jupiter.engine.execution.InvocationInterceptorChain9798b2a812d2015d
org.junit.jupiter.engine.execution.InvocationInterceptorChain.InterceptedInvocation199eef1acbe0b316
org.junit.jupiter.engine.execution.InvocationInterceptorChain.ValidatingInvocationf064b1c2c4a4bf86
org.junit.jupiter.engine.execution.JupiterEngineExecutionContextb48cc2a96dab0116
org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.Builderd1557432e23d2776
org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.State3926323ef1c7fb03
org.junit.jupiter.engine.execution.MethodInvocation8b8fd00463d994df
org.junit.jupiter.engine.execution.NamespaceAwareStore00e5ea1337f34969
org.junit.jupiter.engine.execution.ParameterResolutionUtils5aba48e342016f8f
org.junit.jupiter.engine.execution.TestInstancesProvider357bca6226069e7b
org.junit.jupiter.engine.extension.DisabledCondition1604b4e34c1363e4
org.junit.jupiter.engine.extension.ExtensionRegistry687649643dbb04fc
org.junit.jupiter.engine.extension.MutableExtensionRegistry4daca7ba95c88845
org.junit.jupiter.engine.extension.RepeatedTestExtension7a30afad0f944ea5
org.junit.jupiter.engine.extension.TempDirectory7a8413f5c14657c8
org.junit.jupiter.engine.extension.TempDirectory.Scopead6de5090886dd64
org.junit.jupiter.engine.extension.TestInfoParameterResolver3c520f8376f91ff7
org.junit.jupiter.engine.extension.TestReporterParameterResolver7187071bfc76c6ac
org.junit.jupiter.engine.extension.TimeoutConfiguration44b8593a8e980687
org.junit.jupiter.engine.extension.TimeoutDurationParserbb6a412c3829dae9
org.junit.jupiter.engine.extension.TimeoutExtension13bcdadb20fcc7bb
org.junit.jupiter.engine.support.JupiterThrowableCollectorFactory46546a446de4c9c0
org.junit.jupiter.engine.support.OpenTest4JAndJUnit4AwareThrowableCollectore9ee7d4e1adecdd1
org.junit.platform.commons.function.Try5200e6adc191344c
org.junit.platform.commons.function.Try.Failure5d1cf7b52cd7a7ea
org.junit.platform.commons.logging.LoggerFactory39fdfe1f67bc0eda
org.junit.platform.commons.logging.LoggerFactory.DelegatingLoggerc71dcf008235901c
org.junit.platform.commons.support.AnnotationSupport4b0c63263b83acb5
org.junit.platform.commons.support.ReflectionSupportdb9de9450da5225a
org.junit.platform.commons.util.AnnotationUtilsefebc064783617e1
org.junit.platform.commons.util.ClassLoaderUtils0d0959e2f6aa173e
org.junit.platform.commons.util.ClassNamePatternFilterUtilse725a6f058746f53
org.junit.platform.commons.util.ClassUtils60a2276f3701443f
org.junit.platform.commons.util.ClasspathScanner54e3df9bb2092b52
org.junit.platform.commons.util.CollectionUtilsd47999c87f911057
org.junit.platform.commons.util.Preconditions2c2a6e13cda880d4
org.junit.platform.commons.util.ReflectionUtils3d0b05a220d10774
org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversalMode349d54e51f2ffb44
org.junit.platform.commons.util.StringUtils237c0cb03ac19254
org.junit.platform.commons.util.UnrecoverableExceptionse906a774e770e7d4
org.junit.platform.engine.CompositeFilter6a52e5b4f7292f48
org.junit.platform.engine.CompositeFilter.1cc0aadc5880fb4e4
org.junit.platform.engine.EngineDiscoveryListenerc3024068e43bb7f4
org.junit.platform.engine.EngineDiscoveryListener.1a4cdbe8dd38d8f57
org.junit.platform.engine.EngineExecutionListener693fee5cbd4c2df0
org.junit.platform.engine.EngineExecutionListener.1999902b68f81dd9a
org.junit.platform.engine.ExecutionRequestb74e001541d12dd1
org.junit.platform.engine.Filter5ffaaa90df97ca04
org.junit.platform.engine.FilterResulta787a89e1f12d534
org.junit.platform.engine.SelectorResolutionResultca52e15a278dcf5c
org.junit.platform.engine.SelectorResolutionResult.Statusc505c2274f89f01d
org.junit.platform.engine.TestDescriptora828437d5cd2ea4f
org.junit.platform.engine.TestDescriptor.Type7628a7c639ef3a60
org.junit.platform.engine.TestExecutionResult6b1b512d17bb680e
org.junit.platform.engine.TestExecutionResult.Statusad256e9fb4407e04
org.junit.platform.engine.UniqueId4308af7bfbde4ba1
org.junit.platform.engine.UniqueId.Segmentf2d36a9ca9d14367
org.junit.platform.engine.UniqueIdFormat6c86362ad62a1954
org.junit.platform.engine.discovery.ClassSelector3174b37b3ba53b7e
org.junit.platform.engine.discovery.DiscoverySelectors7863536f4276f4dd
org.junit.platform.engine.discovery.MethodSelector3fe9eccb2ba205d2
org.junit.platform.engine.support.descriptor.AbstractTestDescriptorb9c965daf4d9a476
org.junit.platform.engine.support.descriptor.ClassSource37bd92069360f773
org.junit.platform.engine.support.descriptor.EngineDescriptor8f2f77769ee0e9c9
org.junit.platform.engine.support.descriptor.MethodSource1d55ac49f5cabc20
org.junit.platform.engine.support.discovery.ClassContainerSelectorResolverdc6114dc7e983729
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution506a6b871d2fd8fe
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.DefaultContextdb18f59764ea1f2a
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolvere7fb3042ea8112f0
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.Builderd86618af76b95613
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.DefaultInitializationContext1904819635770d62
org.junit.platform.engine.support.discovery.SelectorResolvere64e4fd796d9641d
org.junit.platform.engine.support.discovery.SelectorResolver.Match789c682356298d75
org.junit.platform.engine.support.discovery.SelectorResolver.Match.Type1761e56439c8d93c
org.junit.platform.engine.support.discovery.SelectorResolver.Resolutionab713bbdee405d17
org.junit.platform.engine.support.hierarchical.ExclusiveResourcec29acbe41918b09a
org.junit.platform.engine.support.hierarchical.ExclusiveResource.LockMode96e95d210b150f97
org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine3ac292151741b7fc
org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor963cba9b029b4b19
org.junit.platform.engine.support.hierarchical.LockManager5aedd3bd3957b5a6
org.junit.platform.engine.support.hierarchical.Node5c68850150771b6e
org.junit.platform.engine.support.hierarchical.Node.SkipResult5aca1404ff0f9294
org.junit.platform.engine.support.hierarchical.NodeExecutionAdvisor7c2670c7a35cfba6
org.junit.platform.engine.support.hierarchical.NodeTestTaskf652d8cc5e11bdc5
org.junit.platform.engine.support.hierarchical.NodeTestTask.DefaultDynamicTestExecutorabd00dd511d28b2f
org.junit.platform.engine.support.hierarchical.NodeTestTaskContextbdf88cd3834282a5
org.junit.platform.engine.support.hierarchical.NodeTreeWalkerc689092b060d0b12
org.junit.platform.engine.support.hierarchical.NodeUtilsa7ec8f66d373c169
org.junit.platform.engine.support.hierarchical.NodeUtils.15a44a7e2cbf864b4
org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService2f3b283eba81629f
org.junit.platform.engine.support.hierarchical.SingleLock2036ec8b92a38105
org.junit.platform.engine.support.hierarchical.ThrowableCollector6fd7a27676be3c50
org.junit.platform.engine.support.store.NamespacedHierarchicalStoref773d297d7dc3275
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.CompositeKey3f8758b273ff41a9
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.EvaluatedValue3362298f87d9b160
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.MemoizingSupplierbe04f7b805ba11e1
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.StoredValue8e79d12821d1a835
org.junit.platform.launcher.EngineDiscoveryResult44ae55d9c94cdd13
org.junit.platform.launcher.EngineDiscoveryResult.Statusc6f73a818e869b3a
org.junit.platform.launcher.LauncherDiscoveryListenerc8e17526e895636b
org.junit.platform.launcher.LauncherDiscoveryListener.18959ed22ae756aca
org.junit.platform.launcher.LauncherSessionListenerfd09754de5a01f16
org.junit.platform.launcher.LauncherSessionListener.144b3640faa83f474
org.junit.platform.launcher.TestExecutionListenerf482f6546d6593dc
org.junit.platform.launcher.TestIdentifier2b393a1d76332bc4
org.junit.platform.launcher.TestPlan125780e74ba9c50c
org.junit.platform.launcher.core.CompositeEngineExecutionListenercea0030887322419
org.junit.platform.launcher.core.CompositeTestExecutionListener283b3c281a0728e5
org.junit.platform.launcher.core.DefaultDiscoveryRequest5706e3938a47edbc
org.junit.platform.launcher.core.DefaultLauncher0bd6690ec3f385ab
org.junit.platform.launcher.core.DefaultLauncherConfig6fbfe73d83f861ce
org.junit.platform.launcher.core.DefaultLauncherSession593c9fadcd439bc2
org.junit.platform.launcher.core.DefaultLauncherSession.14e7ad5e44df7008e
org.junit.platform.launcher.core.DefaultLauncherSession.ClosedLauncher1fe238faa78c4ee2
org.junit.platform.launcher.core.DelegatingEngineExecutionListener98129d4f91790da1
org.junit.platform.launcher.core.DelegatingLauncher443e4e7cef8118ba
org.junit.platform.launcher.core.EngineDiscoveryOrchestrator9260ad30b5b1dcb4
org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.Phasec5da52319ffdb6cc
org.junit.platform.launcher.core.EngineDiscoveryResultValidator241befbef6ea2edf
org.junit.platform.launcher.core.EngineExecutionOrchestrator61a7d44fcaf1fd6d
org.junit.platform.launcher.core.EngineFilterer5886e10a3932fe3b
org.junit.platform.launcher.core.EngineIdValidatora3cbf4111f4706bd
org.junit.platform.launcher.core.ExecutionListenerAdapter027b702b863a1b7b
org.junit.platform.launcher.core.InternalTestPlan6c1da5c749fc1754
org.junit.platform.launcher.core.IterationOrder67fbbac106398c55
org.junit.platform.launcher.core.IterationOrder.1c32d4c631876b3d3
org.junit.platform.launcher.core.IterationOrder.2b3c544910702c338
org.junit.platform.launcher.core.LauncherConfig58100dc14c875cb9
org.junit.platform.launcher.core.LauncherConfig.Builderb0426f929eec8a53
org.junit.platform.launcher.core.LauncherConfigurationParameters443c9d189d7662aa
org.junit.platform.launcher.core.LauncherConfigurationParameters.Builder89b3d95a424a68ea
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProviderda0ae1240b20de42
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProvider.2481aeb52e3ac15c4
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProvider.32d8e65fa362495e2
org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder8aa84e8c1156fc9d
org.junit.platform.launcher.core.LauncherDiscoveryResult6ba764b26de92159
org.junit.platform.launcher.core.LauncherFactory7c870cd17431cb9d
org.junit.platform.launcher.core.LauncherListenerRegistry64d5f2a8ac991f94
org.junit.platform.launcher.core.ListenerRegistry387fd40f10f1e6b5
org.junit.platform.launcher.core.OutcomeDelayingEngineExecutionListener4c68ad66a29b4dd7
org.junit.platform.launcher.core.OutcomeDelayingEngineExecutionListener.Outcomeb6ca0889820c3cca
org.junit.platform.launcher.core.ServiceLoaderRegistry2a95faa488a889e7
org.junit.platform.launcher.core.ServiceLoaderTestEngineRegistry69f4349cc7042ed7
org.junit.platform.launcher.core.StackTracePruningEngineExecutionListenerdbf05583a874b58d
org.junit.platform.launcher.core.StreamInterceptingTestExecutionListener36972afd5e542435
org.junit.platform.launcher.listeners.UniqueIdTrackingListenerf828b9fe46e426f0
org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListeneree6720edc40a9ccf
org.junit.platform.launcher.listeners.discovery.LauncherDiscoveryListeners03063623efb5e8b2
org.junit.platform.launcher.listeners.discovery.LauncherDiscoveryListeners.LauncherDiscoveryListenerTypee18e1a0e62e22287
org.junit.platform.launcher.listeners.session.LauncherSessionListeners792ecbf10e49d607
org.slf4j.LoggerFactorya381b7ddf19bf47d
org.slf4j.bridge.SLF4JBridgeHandlera24ab9068b3f1049
org.slf4j.helpers.NOPLoggerFactory54f5632bfcb8d8d5
org.slf4j.helpers.SubstituteLoggerFactorydc7efc0107a4a62d
org.slf4j.helpers.Util857ff3acc0576435
org.slf4j.impl.StaticLoggerBinder6822bf7129d487fa
project.BadCaseTaskTest34299b2433ce283d
project.GoodCaseTaskTest799f827e7ddd38e0
sun.text.resources.cldr.ext.FormatData_debb786f9842a8e946
sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo9ed83010eeaa402e
sun.util.resources.provider.LocaleDataProvider090384bcacb31f21
worker.org.gradle.api.JavaVersion6444045275aae40b
worker.org.gradle.api.internal.jvm.JavaVersionParser1206b4dd1a2e9827
worker.org.gradle.internal.classloader.ClassLoaderSpeccb374b01ccbebc0b
worker.org.gradle.internal.classloader.ClassLoaderUtils8203100709821636
worker.org.gradle.internal.classloader.ClassLoaderUtils.AbstractClassLoaderLookuperc285dc94ede87ba6
worker.org.gradle.internal.classloader.ClassLoaderUtils.Java9PackagesFetcher66503273ab6df058
worker.org.gradle.internal.classloader.ClassLoaderUtils.LookupClassDefiner101fed03f270a39f
worker.org.gradle.internal.classloader.FilteringClassLoader60efc1577bff24c0
worker.org.gradle.internal.classloader.FilteringClassLoader.RetrieveSystemPackagesClassLoaderf37f538880fb8032
worker.org.gradle.internal.classloader.FilteringClassLoader.Spec66254ecaab39094b
worker.org.gradle.internal.classloader.FilteringClassLoader.Tried8a5448b9f881d5b
worker.org.gradle.internal.classloader.FilteringClassLoader.Trie.Builderc8dff2dff6ca0a46
worker.org.gradle.internal.classloader.FilteringClassLoader.TrieSet9a9aec377ecda35c
worker.org.gradle.internal.stream.EncodedStream.EncodedInput9af7c11b2107c234
worker.org.gradle.process.internal.worker.GradleWorkerMain232767ef46e8d7ca
\ No newline at end of file +Sessions

Sessions

This coverage report is based on execution data from the following sessions:

SessionStart TimeDump Time
MacBook-Pro-von-Jan.local-1804db3706.12.2025, 20:04:4506.12.2025, 20:04:50

Execution data for the following classes is considered in this report:

ClassId
com.esotericsoftware.kryo.io.Input82caa4ac8d2c9ad6
com.esotericsoftware.kryo.io.Output2e152e7951e62ecf
com.mysql.cj.AbstractQueryd76065adeb67db06
com.mysql.cj.CharsetMapping9ba77b415a071db6
com.mysql.cj.ClientPreparedQuery18ba01972bf1f662
com.mysql.cj.Collation4248b67e42bb10c6
com.mysql.cj.Constantscfcde6b7ed765566
com.mysql.cj.CoreSession143f52e9f3e25698
com.mysql.cj.LicenseConfigurationbcdfe8c2527b34f1
com.mysql.cj.Messagesf832c6417dd63a3a
com.mysql.cj.MysqlCharsetc237ed3720192220
com.mysql.cj.MysqlTypebd6b20e6ed9e5028
com.mysql.cj.NativeCharsetSettings14c08c4c56237ea5
com.mysql.cj.NativeQueryAttributesBindings94229c6eb4fbf378
com.mysql.cj.NativeQueryBindValue4843ed7922c07279
com.mysql.cj.NativeQueryBindings5bcf2213feddc182
com.mysql.cj.NativeSession8ce8b919b2786b8e
com.mysql.cj.Query.CancelStatusf127da2b65ae8408
com.mysql.cj.QueryInfo067a7488e2e0b4d8
com.mysql.cj.QueryReturnType6a4aafa8a53bea42
com.mysql.cj.ServerVersion2e84a3bb71103e62
com.mysql.cj.conf.AbstractPropertyDefinition847ee1eba7bcd50f
com.mysql.cj.conf.AbstractRuntimeProperty5b5cebee2a713440
com.mysql.cj.conf.BooleanProperty9a15c6e6d260d957
com.mysql.cj.conf.BooleanPropertyDefinitionbc77d0b8b60271dd
com.mysql.cj.conf.BooleanPropertyDefinition.AllowableValuesa72095a11cf9ed2d
com.mysql.cj.conf.ConnectionUrl56097484cc895f2e
com.mysql.cj.conf.ConnectionUrl.HostsCardinality5f34f13c1a7016bf
com.mysql.cj.conf.ConnectionUrl.HostsCardinality.18be94cc068697f2e
com.mysql.cj.conf.ConnectionUrl.HostsCardinality.220b81888cd1c4786
com.mysql.cj.conf.ConnectionUrl.HostsCardinality.30930e6b26da8b453
com.mysql.cj.conf.ConnectionUrl.Type7fa010cd1d9fa8b4
com.mysql.cj.conf.ConnectionUrlParser18ce5b7aeb934d3d
com.mysql.cj.conf.ConnectionUrlParser.Pairde27ae564f427ca1
com.mysql.cj.conf.DefaultPropertySet3bac39f8e9da658a
com.mysql.cj.conf.EnumProperty6ee1f7569b810e1e
com.mysql.cj.conf.EnumPropertyDefinition6557f207684b258a
com.mysql.cj.conf.HostInfof89b5b8d45ec7c23
com.mysql.cj.conf.IntegerPropertybc66a24ba421f90b
com.mysql.cj.conf.IntegerPropertyDefinition918112488ed57c5f
com.mysql.cj.conf.LongPropertya2fcf2a3a1b80d63
com.mysql.cj.conf.LongPropertyDefinition9c7eb09c7463e62f
com.mysql.cj.conf.MemorySizeProperty2f4f9574d85e774e
com.mysql.cj.conf.MemorySizePropertyDefinitionc1972a7a11db005e
com.mysql.cj.conf.PropertyDefinitions73dde514222e735d
com.mysql.cj.conf.PropertyDefinitions.AuthMech54966388cdbd39a2
com.mysql.cj.conf.PropertyDefinitions.Compression54b57e547f0a4977
com.mysql.cj.conf.PropertyDefinitions.DatabaseTerm9002acec90af0645
com.mysql.cj.conf.PropertyDefinitions.OpenTelemetry5cbb5fb7ae49e4ea
com.mysql.cj.conf.PropertyDefinitions.SslMode448e2386c0e7ca44
com.mysql.cj.conf.PropertyDefinitions.XdevapiSslModeeeecf8218357ad3b
com.mysql.cj.conf.PropertyDefinitions.ZeroDatetimeBehavior4be55bf2f0fb015c
com.mysql.cj.conf.PropertyKeydc0647ff514820b7
com.mysql.cj.conf.StringPropertyccfab1b6e424bc24
com.mysql.cj.conf.StringPropertyDefinition11556f0ec32d7343
com.mysql.cj.conf.url.SingleConnectionUrl3ccbd86f0b1cb199
com.mysql.cj.exceptions.CJException1bafaf5804efbaef
com.mysql.cj.exceptions.ExceptionFactoryc2d18a7ea5c67828
com.mysql.cj.exceptions.MysqlErrorNumbers5aaa6216d62f5f49
com.mysql.cj.exceptions.UnableToConnectException87e0e2ccb5c79910
com.mysql.cj.jdbc.AbandonedConnectionCleanupThreadf7d35276952b8f58
com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.ConnectionFinalizerPhantomReferenceb57d2b81b9e7ebdd
com.mysql.cj.jdbc.ClientPreparedStatementb22d2f28a3c3975f
com.mysql.cj.jdbc.ConnectionImplbbc865486afd4fc7
com.mysql.cj.jdbc.DatabaseMetaData654ef415551ff726
com.mysql.cj.jdbc.Driver182015f9dd2b886f
com.mysql.cj.jdbc.EscapeProcessor22be0bc5065962ea
com.mysql.cj.jdbc.JdbcPropertySetImpl3a04a66838ea8a3f
com.mysql.cj.jdbc.NonRegisteringDriveraa074872d6871799
com.mysql.cj.jdbc.NonRegisteringDriver.1d0d1761f77cfb784
com.mysql.cj.jdbc.StatementImplbe89a8c324ec3aef
com.mysql.cj.jdbc.exceptions.SQLErrorb329b4dbae3f50d3
com.mysql.cj.jdbc.exceptions.SQLExceptionsMappinga132b01b2c3c2ba5
com.mysql.cj.jdbc.result.ResultSetFactory4b025c10903f142a
com.mysql.cj.jdbc.result.ResultSetImpl2772155685743472
com.mysql.cj.log.BaseMetricsHolder1f5b3046cb52a4ed
com.mysql.cj.log.LogFactory41eb488f3939c1b6
com.mysql.cj.log.NullLogger90128a7e34d9a5df
com.mysql.cj.log.StandardLogger11089b87cc04bc01
com.mysql.cj.otel.OpenTelemetryHandlerbc78e18cc5cc7c39
com.mysql.cj.protocol.AbstractProtocolb5cd362af680bd94
com.mysql.cj.protocol.AbstractProtocol.1c73ccda4170df604
com.mysql.cj.protocol.AbstractProtocol.26ebfc2405e3b25cf
com.mysql.cj.protocol.AbstractSocketConnectioneb3bd96964ee1e01
com.mysql.cj.protocol.AuthenticationPlugin259359902e7022b4
com.mysql.cj.protocol.ExportControlledd1ddab611ff4ee11
com.mysql.cj.protocol.FullReadInputStreame8a3c39ef17c6107
com.mysql.cj.protocol.NetworkResources70734758e43b6863
com.mysql.cj.protocol.ReadAheadInputStream45a0de45dea637ea
com.mysql.cj.protocol.Resultset.Concurrencybbe3300065d44762
com.mysql.cj.protocol.Resultset.Typee141867738f79958
com.mysql.cj.protocol.ResultsetRows9a4557a51feddd4f
com.mysql.cj.protocol.Securityb9f6de9e5b66bcf3
com.mysql.cj.protocol.StandardSocketFactorydd9d47791a2221f7
com.mysql.cj.protocol.a.AbstractRowFactory483a557cdd7eb106
com.mysql.cj.protocol.a.AbstractValueEncoder62d16ddd7b784b5f
com.mysql.cj.protocol.a.BinaryResultsetReadere266a5a6ee2972ff
com.mysql.cj.protocol.a.ColumnDefinitionFactory8171a6f8d0608bd3
com.mysql.cj.protocol.a.ColumnDefinitionReader6d2038cf1709f75b
com.mysql.cj.protocol.a.ColumnDefinitionReader.173ad72173f838042
com.mysql.cj.protocol.a.MultiPacketReader4196d728a9dde790
com.mysql.cj.protocol.a.MysqlTextValueDecodered600f932cb19fa5
com.mysql.cj.protocol.a.NativeAuthenticationProviderb03c944b236196fb
com.mysql.cj.protocol.a.NativeCapabilitiesfadc0afb816f068a
com.mysql.cj.protocol.a.NativeConstants.IntegerDataType586137aab11fa401
com.mysql.cj.protocol.a.NativeConstants.StringLengthDataType88b0bbe4059bcbf6
com.mysql.cj.protocol.a.NativeConstants.StringSelfDataTypef961ab2b6e01ee7c
com.mysql.cj.protocol.a.NativeMessageBuilder1fccecd9ebeddc2c
com.mysql.cj.protocol.a.NativePacketHeader6d4f2c2cccd22ea6
com.mysql.cj.protocol.a.NativePacketPayload7e8f7a2339c920b0
com.mysql.cj.protocol.a.NativePacketPayload.1e31fdc9c37165c29
com.mysql.cj.protocol.a.NativeProtocol99c37c4b9dad311c
com.mysql.cj.protocol.a.NativeServerSession08433fe6559308c5
com.mysql.cj.protocol.a.NativeServerSessionStateControlleraee70a11c7ffaa14
com.mysql.cj.protocol.a.NativeServerSessionStateController.NativeServerSessionStateChangesbe3eb3566ece12bc
com.mysql.cj.protocol.a.NativeSocketConnectionc9ffeb96e028852f
com.mysql.cj.protocol.a.NativeUtils1a8f488d9e7192d3
com.mysql.cj.protocol.a.PacketSplitter9ab0aa1517fa9efb
com.mysql.cj.protocol.a.ResultsetFactoryb1a486038d650029
com.mysql.cj.protocol.a.ResultsetRowReader0e70012c1970f352
com.mysql.cj.protocol.a.SimplePacketReaderba8d81a784532dd1
com.mysql.cj.protocol.a.SimplePacketSendera77126ca70efa599
com.mysql.cj.protocol.a.StringValueEncoder4d7a25d9721895e9
com.mysql.cj.protocol.a.StringValueEncoder.15856879fb3c5e970
com.mysql.cj.protocol.a.TextResultsetReader767a71a7b543d7be
com.mysql.cj.protocol.a.TextRowFactory9a69393ad365b03d
com.mysql.cj.protocol.a.TimeTrackingPacketReader6c71f4e8623c7433
com.mysql.cj.protocol.a.TimeTrackingPacketSender1a18bffac0030a67
com.mysql.cj.protocol.a.authentication.AuthenticationKerberosClient89c649ebe8723232
com.mysql.cj.protocol.a.authentication.AuthenticationLdapSaslClientPlugin5a5be6e94eaa049d
com.mysql.cj.protocol.a.authentication.AuthenticationOciCliente40dfb4923736e40
com.mysql.cj.protocol.a.authentication.AuthenticationWebAuthnClient373bc84f178f6688
com.mysql.cj.protocol.a.authentication.AuthenticationWebAuthnClient.AuthStageaa578ce746c5a0c7
com.mysql.cj.protocol.a.authentication.CachingSha2PasswordPlugin3322483a02fefbdd
com.mysql.cj.protocol.a.authentication.CachingSha2PasswordPlugin.AuthStage542c86311d9ab9e4
com.mysql.cj.protocol.a.authentication.MysqlClearPasswordPlugin14a092134ac82526
com.mysql.cj.protocol.a.authentication.MysqlNativePasswordPlugin51f44efa85d4d0f7
com.mysql.cj.protocol.a.authentication.MysqlOldPasswordPlugin68802caa15c7d960
com.mysql.cj.protocol.a.authentication.Sha256PasswordPlugin77dc192d4ff1e60e
com.mysql.cj.protocol.a.result.AbstractResultsetRowsd1162083160994b0
com.mysql.cj.protocol.a.result.ByteArrayRowae1b14e93ff98119
com.mysql.cj.protocol.a.result.NativeResultsete2faa7e7b87032dd
com.mysql.cj.protocol.a.result.OkPacketb44c84045f9be1b5
com.mysql.cj.protocol.a.result.ResultsetRowsStaticd154b044a7254166
com.mysql.cj.protocol.result.AbstractResultsetRowb6cd6909a641c8e7
com.mysql.cj.protocol.result.AbstractResultsetRow.119a6419d0620e81a
com.mysql.cj.result.AbstractDateTimeValueFactoryca69363250dc1cdd
com.mysql.cj.result.AbstractNumericValueFactoryee4a8144c6e720f5
com.mysql.cj.result.BigDecimalValueFactoryb2c9d0371cbfb23d
com.mysql.cj.result.BinaryStreamValueFactoryb51d181af4f4e4c6
com.mysql.cj.result.BooleanValueFactory44c54c96d6420e7b
com.mysql.cj.result.ByteValueFactory5bf063116f7ccd6a
com.mysql.cj.result.DefaultColumnDefinition2e7ebfa4cab52e92
com.mysql.cj.result.DefaultColumnDefinition.12bd65d6d06c1932a
com.mysql.cj.result.DefaultValueFactory0d597316e50af6e6
com.mysql.cj.result.DoubleValueFactory47cf53389974f31e
com.mysql.cj.result.Field3a3e388075d3559c
com.mysql.cj.result.Field.1211bb8db959c7be1
com.mysql.cj.result.FloatValueFactorydf07013ce652294d
com.mysql.cj.result.IntegerValueFactorycb16fe3f50497295
com.mysql.cj.result.LocalDateTimeValueFactory6d91cfd7cfaedc81
com.mysql.cj.result.LocalDateValueFactory8aee7c4d3022041e
com.mysql.cj.result.LocalTimeValueFactory5ff78248f4dc0ffe
com.mysql.cj.result.LongValueFactory23a3da496e2bd80f
com.mysql.cj.result.OffsetDateTimeValueFactoryd3d4bae59d3b2e90
com.mysql.cj.result.OffsetTimeValueFactoryf1b54c886f83163c
com.mysql.cj.result.ShortValueFactoryf7b6dda217df596c
com.mysql.cj.result.SqlTimeValueFactory065a288e79e60120
com.mysql.cj.result.SqlTimestampValueFactory1c92f149f82a05d4
com.mysql.cj.result.StringValueFactory8fa6c5947f31e096
com.mysql.cj.result.UtilCalendarValueFactory4f5ba431861ee492
com.mysql.cj.result.ZonedDateTimeValueFactoryc7c531a450a8dc10
com.mysql.cj.telemetry.NoopTelemetryHandler8a6e783ec945516b
com.mysql.cj.telemetry.NoopTelemetryScope93bf3ef569d88d1b
com.mysql.cj.telemetry.NoopTelemetrySpan571c3e2080b52313
com.mysql.cj.telemetry.TelemetryAttributeedba06cb94a23eca
com.mysql.cj.telemetry.TelemetryHandler43919d1e557eb2e7
com.mysql.cj.telemetry.TelemetryScopec8a528f01136dc75
com.mysql.cj.telemetry.TelemetrySpana81918a9309e61c0
com.mysql.cj.telemetry.TelemetrySpanNamebb8889ada6433a98
com.mysql.cj.util.LRUCache1d68652fd8223c13
com.mysql.cj.util.LazyString387174d5c8323097
com.mysql.cj.util.SearchMode63fabcd1a22d9d83
com.mysql.cj.util.StringInspector5c98a5b34e95e91d
com.mysql.cj.util.StringUtilsde7093ce009f52ed
com.mysql.cj.util.Util7c583e739dfec4b8
hhn.temp.project.Mainb65324ed71e62d1e
hhn.temp.project.Taskd5b8ba90d8771b35
hhn.temp.project.TaskManagerccd36da169d32621
hhn.temp.project.TaskStatus75b92028f3bd7a03
hhn.temp.project.expections.SQLNoConectionException1513adc63ac7fa7d
hhn.temp.project.expections.TaskAlreadyExistsExceptionb5aa00244646ad8a
hhn.temp.project.expections.TaskHasNoWorkerException91d7ea357c00ef34
hhn.temp.project.provider.MySqlcadefd6b8c71abc3
java.sql.DriverInfob1ecd90dd722ed3c
java.sql.DriverManagerf300698996243c21
java.sql.DriverManager.14d9905a690b31323
java.sql.DriverManager.282075f840596abb3
java.sql.SQLException70f019c57e2fb6e1
java.sql.SQLNonTransientConnectionException4b4eddae046e597d
java.sql.SQLNonTransientException844f88a09526c4dc
java.sql.SQLPermission54412b8d052da6b6
org.apache.commons.lang.StringUtils9dd94cc65aafa7e1
org.gradle.api.internal.tasks.testing.AbstractTestDescriptorb7d6764e5c2ed1e2
org.gradle.api.internal.tasks.testing.DefaultTestClassDescriptor29a580f844a707e9
org.gradle.api.internal.tasks.testing.DefaultTestClassRunInfo68a7e79b2914fd4d
org.gradle.api.internal.tasks.testing.DefaultTestDescriptor62e300564099c798
org.gradle.api.internal.tasks.testing.DefaultTestSuiteDescriptor7ca2225e2fb0b4b2
org.gradle.api.internal.tasks.testing.SuiteTestClassProcessoraf72bb8826a6828d
org.gradle.api.internal.tasks.testing.TestCompleteEvent0bc5b41bc5fd92f5
org.gradle.api.internal.tasks.testing.TestStartEvent7c275a9943dba162
org.gradle.api.internal.tasks.testing.failure.DefaultThrowableToTestFailureMapper98b3c6d95620e628
org.gradle.api.internal.tasks.testing.failure.TestFailureMapperfad0361b08728e0d
org.gradle.api.internal.tasks.testing.failure.mappers.AssertErrorMapperf8f52c2b08659a75
org.gradle.api.internal.tasks.testing.failure.mappers.AssertjMultipleAssertionsErrorMapper6d9c88eceee97e47
org.gradle.api.internal.tasks.testing.failure.mappers.JUnitComparisonTestFailureMapper1870ccedd70c62d3
org.gradle.api.internal.tasks.testing.failure.mappers.OpenTestAssertionFailedMapper670c8d72a39d27d6
org.gradle.api.internal.tasks.testing.failure.mappers.OpenTestMultipleFailuresErrorMapperfd9e46b889182617
org.gradle.api.internal.tasks.testing.filter.TestFilterSpeca7526e6ebab295a4
org.gradle.api.internal.tasks.testing.filter.TestSelectionMatcher06128e54c9dca021
org.gradle.api.internal.tasks.testing.filter.TestSelectionMatcher.NoWildcardMatcherc2434758b84103cc
org.gradle.api.internal.tasks.testing.filter.TestSelectionMatcher.SimpleClassNameSelector7754c64da3e7f178
org.gradle.api.internal.tasks.testing.filter.TestSelectionMatcher.TestPatternbf83a0bf4a96f644
org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessore052047f692cb949
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformSpecf5579f12caeb524a
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor4c75223a5693afa4
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.BackwardsCompatibleLauncherSession7c93d17cac3a9550
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.ClassMethodNameFilterb3dd6f84f96d9804
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.CollectAllTestClassesExecutor4b0f383cf965c86c
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessorFactoryaf09c0eae5fa5ced
org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestExecutionListenerb0f418134c40bf3d
org.gradle.api.internal.tasks.testing.processors.CaptureTestOutputTestResultProcessor6ad5ce3fa22109c1
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector66011962fbed0a65
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector.DiscardActionc8ea3545fa32c9b3
org.gradle.api.internal.tasks.testing.redirector.DefaultStandardOutputRedirector.WriteAction77c2ee9a9fa842b1
org.gradle.api.internal.tasks.testing.redirector.JULRedirector14551eb76b8ecae2
org.gradle.api.internal.tasks.testing.redirector.TestOutputRedirector3bd5f34889305e8d
org.gradle.api.internal.tasks.testing.redirector.TestOutputRedirector.Forwarderd61609d95c6d50d3
org.gradle.api.internal.tasks.testing.results.AttachParentTestResultProcessor6d02567fd2a7d62d
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer5f32a7ab6120753f
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultNestedTestSuiteDescriptorSerializera46705f180b3563a
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultParameterizedTestDescriptorSerializere127b3bb672baf7f
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestClassDescriptorSerializere10b56bac3d27de5
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestClassRunInfoSerializerb395c3a3085809af
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestDescriptorSerializer23901d25c1e75a58
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestFailureSerializer20561e1a5f6db7a7
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestMethodDescriptorSerializer3d1b5d8baa0a900e
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestOutputEventSerializerf44f90cc4c1aac70
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.DefaultTestSuiteDescriptorSerializer4860e580b0f8c694
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.IdSerializerc0b64d9e606e6d13
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.NullableSerializer062a5d6c320f0d23
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.TestCompleteEventSerializerd1bf01c1eff18541
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.TestStartEventSerializer680e50b2e35795b4
org.gradle.api.internal.tasks.testing.worker.TestEventSerializer.WorkerTestSuiteDescriptorSerializer925d25f3960ae5eb
org.gradle.api.internal.tasks.testing.worker.TestWorkerb93df52c3074c532
org.gradle.api.internal.tasks.testing.worker.TestWorker.1b8314e777e355f7d
org.gradle.api.internal.tasks.testing.worker.TestWorker.2cc4e0ec7222faee6
org.gradle.api.internal.tasks.testing.worker.TestWorker.3030c348be1c106a4
org.gradle.api.internal.tasks.testing.worker.TestWorker.State903c35047a140ff9
org.gradle.api.internal.tasks.testing.worker.TestWorker.TestFrameworkServiceRegistry12a7a3db90dec4e3
org.gradle.api.internal.tasks.testing.worker.WorkerTestClassProcessor0f6525b02f2bb3d2
org.gradle.api.internal.tasks.testing.worker.WorkerTestClassProcessor.WorkerTestSuiteDescriptorb3807e9b92351840
org.gradle.api.logging.LogLevel236e938e30516638
org.gradle.api.tasks.testing.TestOutputEvent.Destination5f28eafb6895d752
org.gradle.internal.Cast6130c81e08d81640
org.gradle.internal.MutableBoolean349de2b8a37d4338
org.gradle.internal.SystemPropertiesf454284e0229cc37
org.gradle.internal.actor.internal.DefaultActorFactory43acc9e5b3a492ea
org.gradle.internal.actor.internal.DefaultActorFactory.BlockingActore2e64c7c8141667f
org.gradle.internal.concurrent.AbstractDelegatingExecutorService49d3dededcea40d0
org.gradle.internal.concurrent.AbstractManagedExecutor3e801af2d608b388
org.gradle.internal.concurrent.AbstractManagedExecutor.1e617b5280c0b131e
org.gradle.internal.concurrent.CompositeStoppable4a36b916ba0a65be
org.gradle.internal.concurrent.CompositeStoppable.17991c35593ad107a
org.gradle.internal.concurrent.CompositeStoppable.3e70f2f4c49f9854e
org.gradle.internal.concurrent.DefaultExecutorFactory63847aa635eddd82
org.gradle.internal.concurrent.DefaultExecutorFactory.TrackedManagedExecutor36f4bc1cd93c039c
org.gradle.internal.concurrent.ExecutorPolicy.CatchAndRecordFailures2aacf6d3d0dd2240
org.gradle.internal.concurrent.ManagedExecutorImplce6f255f6fc1de83
org.gradle.internal.concurrent.ThreadFactoryImpl1d388becbfb01ad8
org.gradle.internal.dispatch.ContextClassLoaderDispatch132d0c3fd93e8141
org.gradle.internal.dispatch.ContextClassLoaderProxyd72ee515504b89e6
org.gradle.internal.dispatch.MethodInvocationbbd5401404e52b1f
org.gradle.internal.dispatch.ProxyDispatchAdapter67194db65692ab5d
org.gradle.internal.dispatch.ProxyDispatchAdapter.DispatchingInvocationHandler82935bb9f2db6b85
org.gradle.internal.dispatch.ReflectionDispatch6976fdf67f3e8979
org.gradle.internal.event.AbstractBroadcastDispatch0f5ffe97fa60f855
org.gradle.internal.event.BroadcastDispatch971f57b98f410335
org.gradle.internal.event.BroadcastDispatch.CompositeDispatch5d8a079ebb58640f
org.gradle.internal.event.BroadcastDispatch.EmptyDispatch136c24cb564bd0f5
org.gradle.internal.event.BroadcastDispatch.SingletonDispatch66b75507cc7e3700
org.gradle.internal.event.ListenerBroadcastf665e273f2a756e4
org.gradle.internal.id.CompositeIdGeneratorf1c607aa5fccdbaa
org.gradle.internal.id.CompositeIdGenerator.CompositeIde710c854f802c58b
org.gradle.internal.id.LongIdGenerator6f8168bf486a560d
org.gradle.internal.id.UUIDGenerator047a43ab94df6ffa
org.gradle.internal.io.BufferCaster88a8af829d9f2dca
org.gradle.internal.io.LinePerThreadBufferingOutputStream6663ead4c1825a46
org.gradle.internal.io.NullOutputStreameefcfe0665bbfe4c
org.gradle.internal.logging.config.LoggingSystemAdapter2bb5150ee66232e9
org.gradle.internal.logging.config.LoggingSystemAdapter.SnapshotImpl221de860d84422df
org.gradle.internal.logging.console.DefaultUserInputReceiver44c8536611e071b4
org.gradle.internal.logging.events.EndOutputEvent0d8edd2a5ce274ee
org.gradle.internal.logging.events.LogLevelChangeEvent33b762c6d5852de7
org.gradle.internal.logging.events.OutputEvent85bce87f1bcda18d
org.gradle.internal.logging.events.OutputEventListenere7d50a9306531b49
org.gradle.internal.logging.events.OutputEventListener.15c6014dff2070607
org.gradle.internal.logging.events.StyledTextOutputEvent11f48fb1a17330c8
org.gradle.internal.logging.events.StyledTextOutputEvent.Spanc55f799d2631f13d
org.gradle.internal.logging.serializer.LogEventSerializerb6d88af223db296a
org.gradle.internal.logging.serializer.LogLevelChangeEventSerializerf77a59533dde75ec
org.gradle.internal.logging.serializer.SpanSerializer5f773b7d1ad07c9f
org.gradle.internal.logging.serializer.StyledTextOutputEventSerializerfaebed27ac3e65ba
org.gradle.internal.logging.services.DefaultLoggingManager61e216a064052ff1
org.gradle.internal.logging.services.DefaultLoggingManager.StartableLoggingRouter78396be937af48de
org.gradle.internal.logging.services.DefaultLoggingManager.StartableLoggingSystemb121a97021902643
org.gradle.internal.logging.services.DefaultLoggingManagerFactory04bcce4325025a96
org.gradle.internal.logging.services.LoggingServiceRegistry90edc2132a7bd2d5
org.gradle.internal.logging.services.LoggingServiceRegistry.1b114ac6ebd4de8f3
org.gradle.internal.logging.services.LoggingServiceRegistry.CommandLineLoggingab0f0dfe4e42595e
org.gradle.internal.logging.services.TextStreamOutputEventListeneref4d0c3267356598
org.gradle.internal.logging.sink.OutputEventListenerManagerd6dee3d6fea49020
org.gradle.internal.logging.sink.OutputEventListenerManager.11e218a705ff0ee7e
org.gradle.internal.logging.sink.OutputEventRendererad1cc4fc552ab292
org.gradle.internal.logging.sink.OutputEventRenderer.1b94418b2e260aede
org.gradle.internal.logging.sink.OutputEventRenderer.2a956801cd98ca633
org.gradle.internal.logging.sink.OutputEventRenderer.LazyListener7ee882569b166e1e
org.gradle.internal.logging.sink.OutputEventRenderer.SnapshotImpl827634628a47c5f5
org.gradle.internal.logging.sink.OutputEventTransformer06c2270eef0e291e
org.gradle.internal.logging.slf4j.BuildOperationAwareLogger6a70f9123229323f
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLogger30ddd0a8ff91b5f5
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext9d35d4b7a722eb08
org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext.NoOpLogger3868cc8d50014a37
org.gradle.internal.logging.slf4j.Slf4jLoggingConfigurer75fba29c3739b15f
org.gradle.internal.logging.source.DefaultStdErrLoggingSystemfd3dd0caab2f1d95
org.gradle.internal.logging.source.DefaultStdOutLoggingSystem528bb39bfb67c3ae
org.gradle.internal.logging.source.JavaUtilLoggingSystem5e967b17aabfd442
org.gradle.internal.logging.source.JavaUtilLoggingSystem.SnapshotImpl15dfc30250723749
org.gradle.internal.logging.source.PrintStreamLoggingSystem1ae6e6b715c6b3f9
org.gradle.internal.logging.source.PrintStreamLoggingSystem.165643cb979acba64
org.gradle.internal.logging.source.PrintStreamLoggingSystem.OutputEventDestination8c1ddf1476568828
org.gradle.internal.logging.source.PrintStreamLoggingSystem.PrintStreamDestination9e7273f370028123
org.gradle.internal.logging.source.PrintStreamLoggingSystem.SnapshotImpl8f80a46f9780a57e
org.gradle.internal.logging.text.StyledTextOutput.Styled676557b62e3f601
org.gradle.internal.nativeintegration.filesystem.services.FileSystemServices4556096f1c5a9c8e
org.gradle.internal.nativeintegration.jansi.DefaultJansiRuntimeResolver913dbea9c5665791
org.gradle.internal.nativeintegration.jansi.JansiBootPathConfigurer3a766bce65ac1a48
org.gradle.internal.nativeintegration.jansi.JansiLibraryFactory0cbaac430d6656c4
org.gradle.internal.nativeintegration.jansi.JansiStorageLocatorc8bff1ccb071f9b6
org.gradle.internal.nativeintegration.services.NativeServices60e06107da63f5bf
org.gradle.internal.nativeintegration.services.NativeServices.18cc4a38f8f9f2c24
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures6c2167dd01d3a7df
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.13b01a06496dac527
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.1.23ac5c626690263b8
org.gradle.internal.nativeintegration.services.NativeServices.NativeFeatures.23e453e557ec15489
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode239d6c658f109a99
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.1709d06b6d4cada75
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.27701fd550a9f507e
org.gradle.internal.nativeintegration.services.NativeServices.NativeServicesMode.3e9495efc537003de
org.gradle.internal.reflect.JavaMethod5541c31d24227b86
org.gradle.internal.remote.internal.KryoBackedMessageSerializer0028157720ec1f27
org.gradle.internal.remote.internal.hub.ConnectionSet323708d9214e34e4
org.gradle.internal.remote.internal.hub.ConnectionState250fb1b274991d9a
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializerb5f4b38125033ffd
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializer.ArraySerializer16505d5ccbb1b78b
org.gradle.internal.remote.internal.hub.DefaultMethodArgsSerializer.EmptyArraySerializercdc53c79a631aa33
org.gradle.internal.remote.internal.hub.IncomingQueue0e8ecdb8f31efe51
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer7d84d4aa85858c73
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer.MessageReaderab1cd6753eb75a29
org.gradle.internal.remote.internal.hub.InterHubMessageSerializer.MessageWriter3e4611f758508afb
org.gradle.internal.remote.internal.hub.JavaSerializationBackedMethodArgsSerializer4c7a738ee4525ff6
org.gradle.internal.remote.internal.hub.MessageHub1326887a1f1da0ac
org.gradle.internal.remote.internal.hub.MessageHub.ChannelDispatch8a9dfd1b6306d8e6
org.gradle.internal.remote.internal.hub.MessageHub.ConnectionDispatchdf1d0a86180d66e4
org.gradle.internal.remote.internal.hub.MessageHub.ConnectionReceivee1dc78071e8e957d
org.gradle.internal.remote.internal.hub.MessageHub.Discard63a8d677cc1f9101
org.gradle.internal.remote.internal.hub.MessageHub.Handler3d232f51f2c02828
org.gradle.internal.remote.internal.hub.MessageHub.State1b76747d7bce6b89
org.gradle.internal.remote.internal.hub.MessageHubBackedClient77c2124c3c43d832
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnectionc23964928f1aff22
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.1ac806a6bc6b1b21d
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.28ac38215966e3a20
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection.DispatchWrapper9aa5d8679dbc6601
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer47063ab293644e83
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodDetailsb6b7fb55e88cc4b9
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodInvocationReadere6b939136f207ff5
org.gradle.internal.remote.internal.hub.MethodInvocationSerializer.MethodInvocationWriterc3b77db1b2556afe
org.gradle.internal.remote.internal.hub.OutgoingQueuefbcc05506ad40c68
org.gradle.internal.remote.internal.hub.protocol.ChannelIdentifier7697ff6a7c712869
org.gradle.internal.remote.internal.hub.protocol.ChannelMessage9bff479666e58802
org.gradle.internal.remote.internal.hub.protocol.EndOfStreamf29ffed85365f7db
org.gradle.internal.remote.internal.hub.protocol.InterHubMessage0c6e49b6ec077e16
org.gradle.internal.remote.internal.hub.protocol.InterHubMessage.Delivery0652d09c2a7fd1ac
org.gradle.internal.remote.internal.hub.queue.EndPointQueue8038a5636529123d
org.gradle.internal.remote.internal.hub.queue.MultiChannelQueuebcaac9c224068764
org.gradle.internal.remote.internal.hub.queue.MultiEndPointQueue27222a892157733f
org.gradle.internal.remote.internal.hub.queue.MultiEndPointQueue.144049b3edc682954
org.gradle.internal.remote.internal.hub.queue.QueueInitializerad18361c23e679b1
org.gradle.internal.remote.internal.inet.MultiChoiceAddress91381aa03cdd48e7
org.gradle.internal.remote.internal.inet.MultiChoiceAddressSerializer7ffc395650705aaa
org.gradle.internal.remote.internal.inet.SocketBlockingUtilc4937b9849ff6540
org.gradle.internal.remote.internal.inet.SocketConnectCompletion0da46ac4ccd1c9ce
org.gradle.internal.remote.internal.inet.SocketConnection4a6255ae3fb5a6e9
org.gradle.internal.remote.internal.inet.SocketConnection.16bd72dd3a4f955f4
org.gradle.internal.remote.internal.inet.SocketConnection.SocketInputStream41ab28127ec07333
org.gradle.internal.remote.internal.inet.SocketConnection.SocketOutputStream56a19b1a3dd17be0
org.gradle.internal.remote.internal.inet.SocketInetAddress20cc3fd7992230e8
org.gradle.internal.remote.internal.inet.SocketInetAddress.Serializerd42dd7f644e6367c
org.gradle.internal.remote.internal.inet.TcpOutgoingConnectorda9b573729b690fd
org.gradle.internal.remote.services.MessagingServices371e97275eb35dc5
org.gradle.internal.serialize.AbstractCollectionSerializer7897b7a9a0c39b1b
org.gradle.internal.serialize.AbstractDecoder6f331f65d3691839
org.gradle.internal.serialize.AbstractEncoder44ea8279ea7b3a07
org.gradle.internal.serialize.AbstractSerializerd5cd8744f99ef12d
org.gradle.internal.serialize.BaseSerializerFactory83d030ef5f6c0526
org.gradle.internal.serialize.BaseSerializerFactory.BigDecimalSerializer4dcd516a5e9202d8
org.gradle.internal.serialize.BaseSerializerFactory.BigIntegerSerializer50f6ab963a855e2a
org.gradle.internal.serialize.BaseSerializerFactory.BooleanSerializer9a343eeb20f2b7f4
org.gradle.internal.serialize.BaseSerializerFactory.ByteArraySerializer9566e41ef84566ae
org.gradle.internal.serialize.BaseSerializerFactory.ByteSerializer85286889be7534cf
org.gradle.internal.serialize.BaseSerializerFactory.CharSerializer6fba21fa805857ff
org.gradle.internal.serialize.BaseSerializerFactory.DoubleSerializer085b687ded9be124
org.gradle.internal.serialize.BaseSerializerFactory.EnumSerializera314f7118f1d0412
org.gradle.internal.serialize.BaseSerializerFactory.FileSerializerc43bc85ad47073ee
org.gradle.internal.serialize.BaseSerializerFactory.FloatSerializerdad7a35798e49d9d
org.gradle.internal.serialize.BaseSerializerFactory.IntegerSerializere8a55740afa66954
org.gradle.internal.serialize.BaseSerializerFactory.LongSerializer3a08a2ef15abca0d
org.gradle.internal.serialize.BaseSerializerFactory.PathSerializer22894f3c1859ada1
org.gradle.internal.serialize.BaseSerializerFactory.ShortSerializer5791e5a0a4ad1ece
org.gradle.internal.serialize.BaseSerializerFactory.StringMapSerializereb348217154fd0ed
org.gradle.internal.serialize.BaseSerializerFactory.StringSerializer01576ecfb2720760
org.gradle.internal.serialize.BaseSerializerFactory.ThrowableSerializerae463fe767977ceb
org.gradle.internal.serialize.ClassLoaderObjectInputStream81d9f3a2338180d3
org.gradle.internal.serialize.DefaultSerializer9b7593104d5f803c
org.gradle.internal.serialize.DefaultSerializerRegistry84449bcf590c1af7
org.gradle.internal.serialize.DefaultSerializerRegistry.1aeba2bb0cd2eab52
org.gradle.internal.serialize.DefaultSerializerRegistry.HierarchySerializerMatcherc4fa93579434fd2b
org.gradle.internal.serialize.DefaultSerializerRegistry.InstanceBasedSerializerFactory4d56c9c7fbddbcc0
org.gradle.internal.serialize.DefaultSerializerRegistry.SerializerClassMatcherStrategyea36ea8beff22743
org.gradle.internal.serialize.DefaultSerializerRegistry.StrictSerializerMatcher6df6080c06573b93
org.gradle.internal.serialize.DefaultSerializerRegistry.TaggedTypeSerializer264fbb605d976b35
org.gradle.internal.serialize.DefaultSerializerRegistry.TypeInfobd6904d4ac5974ce
org.gradle.internal.serialize.HashCodeSerializer874be2a480b96af8
org.gradle.internal.serialize.InputStreamBackedDecoder1a43def6f05c6405
org.gradle.internal.serialize.ListSerializerbad970c0192233e9
org.gradle.internal.serialize.kryo.KryoBackedDecoderf9287092db21f40c
org.gradle.internal.serialize.kryo.KryoBackedEncodere6a2be1dd138a272
org.gradle.internal.serialize.kryo.TypeSafeSerializer1dbc9e4c69fd1973
org.gradle.internal.serialize.kryo.TypeSafeSerializer.1bb88df969641a032
org.gradle.internal.serialize.kryo.TypeSafeSerializer.2599bac595545b9c0
org.gradle.internal.service.AbstractServiceMethodd8f9bf72435aa0d5
org.gradle.internal.service.DefaultServiceAccessToken552643647739457e
org.gradle.internal.service.DefaultServiceMethodFactory7cd5dc9e6187cc39
org.gradle.internal.service.DefaultServiceRegistry5b91c2e6d1541db9
org.gradle.internal.service.DefaultServiceRegistry.1a5957bd6a7e35017
org.gradle.internal.service.DefaultServiceRegistry.ClassInspectora67f4de9fecf4e9f
org.gradle.internal.service.DefaultServiceRegistry.ClassInspector.ClassDetailse14a78fdabafa6a6
org.gradle.internal.service.DefaultServiceRegistry.CompositeServiceProviderad51f0e7303e801d
org.gradle.internal.service.DefaultServiceRegistry.ConstructorServicec53583a3bbee2329
org.gradle.internal.service.DefaultServiceRegistry.FactoryMethodServicec94f704959a77ddb
org.gradle.internal.service.DefaultServiceRegistry.FactoryService5efa06cdad2305e5
org.gradle.internal.service.DefaultServiceRegistry.FixedInstanceServiceadf12b7e82dfb3fd
org.gradle.internal.service.DefaultServiceRegistry.ManagedObjectServiceProvider00ae876b89fa7714
org.gradle.internal.service.DefaultServiceRegistry.OwnServicesd7eed1a352f0d8e6
org.gradle.internal.service.DefaultServiceRegistry.ParentServices8369f7999f6e2ac7
org.gradle.internal.service.DefaultServiceRegistry.SingletonServiced319469c908bc1cf
org.gradle.internal.service.DefaultServiceRegistry.SingletonService.1cdfec069e7d8ab42
org.gradle.internal.service.DefaultServiceRegistry.SingletonService.BindStateb653da4aa2ccd9df
org.gradle.internal.service.DefaultServiceRegistry.State76b519b0b74b53cb
org.gradle.internal.service.DefaultServiceRegistry.ThisAsService2eef9987bf419fb4
org.gradle.internal.service.InjectUtil4e32c5f95305147b
org.gradle.internal.service.MethodHandleBasedServiceMethod674037aa99129b52
org.gradle.internal.service.MethodHandleBasedServiceMethodFactory47e87df4713e4ce5
org.gradle.internal.service.ReflectionBasedServiceMethod56fdba7d8393253f
org.gradle.internal.service.RelevantMethodsebb3efee7040ae62
org.gradle.internal.service.RelevantMethods.RelevantMethodsBuilder653e2ed3e283822f
org.gradle.internal.service.ServiceAccesseae993853cb06bb6
org.gradle.internal.service.ServiceAccess.1c3b7931689739967
org.gradle.internal.service.ServiceRegistryBuilder73d1a49b155b6056
org.gradle.internal.service.TypeStringFormatter8ef195776e72517f
org.gradle.internal.time.MonotonicClock723fd7c85fffe54b
org.gradle.internal.time.Time118854647ab7eed4
org.gradle.internal.time.TimeSource79d456cc39bbde3d
org.gradle.internal.time.TimeSource.14be788ff9e4278cd
org.gradle.process.internal.worker.WorkerLoggingSerializeradae78bad8b0e727
org.gradle.process.internal.worker.child.ActionExecutionWorkera7d30aba9c762788
org.gradle.process.internal.worker.child.ActionExecutionWorker.1d0eba6bfe3f78d57
org.gradle.process.internal.worker.child.DefaultWorkerDirectoryProvider10469cccf2e081cb
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker4397743716cfa5f5
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.2701810a4c2fdd0f8
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.ContextImplc1b75620f1c49583
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.PrintUnrecoverableErrorToFileHandler4c53666c8024a79b
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.WorkerServicesb7825f369a8ee808
org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.WorkerServices.169e3f98f4d4b96c1
org.gradle.process.internal.worker.child.WorkerLogEventListener4a0b5fb708591833
org.gradle.process.internal.worker.messaging.WorkerConfig8633f06980fb19fd
org.gradle.process.internal.worker.messaging.WorkerConfigSerializerb913cc847f396960
org.gradle.util.internal.ArrayUtils05a97ebb2e812055
org.gradle.util.internal.CollectionUtils609c55009e4302e6
org.junit.jupiter.api.AssertDoesNotThrow36b9cb12d1985e50
org.junit.jupiter.api.AssertEquals02e79388fd0ddf18
org.junit.jupiter.api.AssertNotNull34eb9c4ee51b2816
org.junit.jupiter.api.AssertThrows2e413933639a681e
org.junit.jupiter.api.AssertTrue6ef3923800860200
org.junit.jupiter.api.AssertionUtilsa580a647f9b0d1af
org.junit.jupiter.api.Assertions30bb83f461535d85
org.junit.jupiter.api.DisplayNameGenerator1c70d4d828122f05
org.junit.jupiter.api.DisplayNameGenerator.IndicativeSentencesb23b44fe1a1ae4b6
org.junit.jupiter.api.DisplayNameGenerator.ReplaceUnderscores45af1f815eb3bfc6
org.junit.jupiter.api.DisplayNameGenerator.Simple3587fc3bd5ac68a7
org.junit.jupiter.api.DisplayNameGenerator.Standard232bffaaa51a0c4e
org.junit.jupiter.api.TestInstance.Lifecycle235138c6fffd45f1
org.junit.jupiter.api.extension.ConditionEvaluationResultfc311dfabd3a0e23
org.junit.jupiter.api.extension.ExtensionContextdacb7330135ba8f9
org.junit.jupiter.api.extension.ExtensionContext.Namespaceeb8d03782ab35d64
org.junit.jupiter.api.extension.InvocationInterceptor695ac2a6b4b9c7e4
org.junit.jupiter.engine.JupiterTestEngine011031d0b1fe58db
org.junit.jupiter.engine.config.CachingJupiterConfiguration9da5fe6b78ad9a14
org.junit.jupiter.engine.config.DefaultJupiterConfigurationbbee9c72790c271d
org.junit.jupiter.engine.config.EnumConfigurationParameterConverter433eec982a6fabbc
org.junit.jupiter.engine.config.InstantiatingConfigurationParameterConverterd2270f0957971443
org.junit.jupiter.engine.descriptor.AbstractExtensionContext6b3fc41ad8b41d4f
org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor414ee653c9e673cf
org.junit.jupiter.engine.descriptor.ClassExtensionContexte804dacaeaef4a6a
org.junit.jupiter.engine.descriptor.ClassTestDescriptor2f87db51b4485e07
org.junit.jupiter.engine.descriptor.DefaultTestInstanceFactoryContextb1b7d61e94c58605
org.junit.jupiter.engine.descriptor.DisplayNameUtils8a6f8eeb3e12ddf6
org.junit.jupiter.engine.descriptor.ExtensionUtils43a683ad1b768e92
org.junit.jupiter.engine.descriptor.JupiterEngineDescriptor3d2dbddce296b041
org.junit.jupiter.engine.descriptor.JupiterEngineExtensionContext7146ce9988edfce2
org.junit.jupiter.engine.descriptor.JupiterTestDescriptor67ad750cdb2cb53b
org.junit.jupiter.engine.descriptor.LifecycleMethodUtils286eb923d0b68032
org.junit.jupiter.engine.descriptor.MethodBasedTestDescriptorf531f49451e39050
org.junit.jupiter.engine.descriptor.MethodExtensionContextb5abe6523f4a32d7
org.junit.jupiter.engine.descriptor.TestInstanceLifecycleUtilsa247fc379f47df66
org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor35334f82ecefa63c
org.junit.jupiter.engine.discovery.AbstractAnnotatedDescriptorWrapper90b10f2d90d7b01b
org.junit.jupiter.engine.discovery.AbstractOrderingVisitorf8eb297929c247eb
org.junit.jupiter.engine.discovery.AbstractOrderingVisitor.DescriptorWrapperOrdererc8e1585f8474ed61
org.junit.jupiter.engine.discovery.ClassOrderingVisitor1f09fc1c6b9779bb
org.junit.jupiter.engine.discovery.ClassSelectorResolvere25bb2b197bc8493
org.junit.jupiter.engine.discovery.DefaultClassDescriptor9064f3528773a161
org.junit.jupiter.engine.discovery.DiscoverySelectorResolver5dc6be896f50996f
org.junit.jupiter.engine.discovery.MethodFinder621c8591e557439a
org.junit.jupiter.engine.discovery.MethodOrderingVisitor7d9864cebac818e1
org.junit.jupiter.engine.discovery.MethodSelectorResolver679c52dec5ee3cd2
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType2ca704c5264882ae
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.1b3bc3007a7dfdaa0
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.2598aec8eeefe85e3
org.junit.jupiter.engine.discovery.MethodSelectorResolver.MethodType.3e8fd5325e2431a2b
org.junit.jupiter.engine.discovery.predicates.IsInnerClassd746bcff9a71ec26
org.junit.jupiter.engine.discovery.predicates.IsNestedTestClassf75dfd9ee2347890
org.junit.jupiter.engine.discovery.predicates.IsPotentialTestContainer909f14a1b9fe84dc
org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests34690a186bfcf3ac
org.junit.jupiter.engine.discovery.predicates.IsTestFactoryMethod941a8af0d47a68fd
org.junit.jupiter.engine.discovery.predicates.IsTestMethodf2039dbd13fce110
org.junit.jupiter.engine.discovery.predicates.IsTestTemplateMethodc13a4260435c18a8
org.junit.jupiter.engine.discovery.predicates.IsTestableMethod4be487dee199f633
org.junit.jupiter.engine.execution.ConditionEvaluatordf91d94b180fe511
org.junit.jupiter.engine.execution.ConstructorInvocation60b80968f2bdedc3
org.junit.jupiter.engine.execution.DefaultExecutableInvoker97f15d1e3151968f
org.junit.jupiter.engine.execution.DefaultTestInstances0fc6d90567826bc4
org.junit.jupiter.engine.execution.InterceptingExecutableInvoker42cb185ff5e76387
org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.ReflectiveInterceptorCall7e154d03f7a732e5
org.junit.jupiter.engine.execution.InvocationInterceptorChain9798b2a812d2015d
org.junit.jupiter.engine.execution.InvocationInterceptorChain.InterceptedInvocation199eef1acbe0b316
org.junit.jupiter.engine.execution.InvocationInterceptorChain.ValidatingInvocationf064b1c2c4a4bf86
org.junit.jupiter.engine.execution.JupiterEngineExecutionContextb48cc2a96dab0116
org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.Builderd1557432e23d2776
org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.State3926323ef1c7fb03
org.junit.jupiter.engine.execution.MethodInvocation8b8fd00463d994df
org.junit.jupiter.engine.execution.NamespaceAwareStore00e5ea1337f34969
org.junit.jupiter.engine.execution.ParameterResolutionUtils5aba48e342016f8f
org.junit.jupiter.engine.execution.TestInstancesProvider357bca6226069e7b
org.junit.jupiter.engine.extension.DisabledCondition1604b4e34c1363e4
org.junit.jupiter.engine.extension.ExtensionRegistry687649643dbb04fc
org.junit.jupiter.engine.extension.MutableExtensionRegistry4daca7ba95c88845
org.junit.jupiter.engine.extension.RepeatedTestExtension7a30afad0f944ea5
org.junit.jupiter.engine.extension.TempDirectory7a8413f5c14657c8
org.junit.jupiter.engine.extension.TempDirectory.Scopead6de5090886dd64
org.junit.jupiter.engine.extension.TestInfoParameterResolver3c520f8376f91ff7
org.junit.jupiter.engine.extension.TestReporterParameterResolver7187071bfc76c6ac
org.junit.jupiter.engine.extension.TimeoutConfiguration44b8593a8e980687
org.junit.jupiter.engine.extension.TimeoutDurationParserbb6a412c3829dae9
org.junit.jupiter.engine.extension.TimeoutExtension13bcdadb20fcc7bb
org.junit.jupiter.engine.support.JupiterThrowableCollectorFactory46546a446de4c9c0
org.junit.jupiter.engine.support.OpenTest4JAndJUnit4AwareThrowableCollectore9ee7d4e1adecdd1
org.junit.platform.commons.function.Try5200e6adc191344c
org.junit.platform.commons.function.Try.Failure5d1cf7b52cd7a7ea
org.junit.platform.commons.logging.LoggerFactory39fdfe1f67bc0eda
org.junit.platform.commons.logging.LoggerFactory.DelegatingLoggerc71dcf008235901c
org.junit.platform.commons.support.AnnotationSupport4b0c63263b83acb5
org.junit.platform.commons.support.ReflectionSupportdb9de9450da5225a
org.junit.platform.commons.util.AnnotationUtilsefebc064783617e1
org.junit.platform.commons.util.ClassLoaderUtils0d0959e2f6aa173e
org.junit.platform.commons.util.ClassNamePatternFilterUtilse725a6f058746f53
org.junit.platform.commons.util.ClassUtils60a2276f3701443f
org.junit.platform.commons.util.ClasspathScanner54e3df9bb2092b52
org.junit.platform.commons.util.CollectionUtilsd47999c87f911057
org.junit.platform.commons.util.Preconditions2c2a6e13cda880d4
org.junit.platform.commons.util.ReflectionUtils3d0b05a220d10774
org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversalMode349d54e51f2ffb44
org.junit.platform.commons.util.StringUtils237c0cb03ac19254
org.junit.platform.commons.util.UnrecoverableExceptionse906a774e770e7d4
org.junit.platform.engine.CompositeFilter6a52e5b4f7292f48
org.junit.platform.engine.CompositeFilter.1cc0aadc5880fb4e4
org.junit.platform.engine.EngineDiscoveryListenerc3024068e43bb7f4
org.junit.platform.engine.EngineDiscoveryListener.1a4cdbe8dd38d8f57
org.junit.platform.engine.EngineExecutionListener693fee5cbd4c2df0
org.junit.platform.engine.EngineExecutionListener.1999902b68f81dd9a
org.junit.platform.engine.ExecutionRequestb74e001541d12dd1
org.junit.platform.engine.Filter5ffaaa90df97ca04
org.junit.platform.engine.FilterResulta787a89e1f12d534
org.junit.platform.engine.SelectorResolutionResultca52e15a278dcf5c
org.junit.platform.engine.SelectorResolutionResult.Statusc505c2274f89f01d
org.junit.platform.engine.TestDescriptora828437d5cd2ea4f
org.junit.platform.engine.TestDescriptor.Type7628a7c639ef3a60
org.junit.platform.engine.TestExecutionResult6b1b512d17bb680e
org.junit.platform.engine.TestExecutionResult.Statusad256e9fb4407e04
org.junit.platform.engine.UniqueId4308af7bfbde4ba1
org.junit.platform.engine.UniqueId.Segmentf2d36a9ca9d14367
org.junit.platform.engine.UniqueIdFormat6c86362ad62a1954
org.junit.platform.engine.discovery.ClassSelector3174b37b3ba53b7e
org.junit.platform.engine.discovery.DiscoverySelectors7863536f4276f4dd
org.junit.platform.engine.discovery.MethodSelector3fe9eccb2ba205d2
org.junit.platform.engine.support.descriptor.AbstractTestDescriptorb9c965daf4d9a476
org.junit.platform.engine.support.descriptor.ClassSource37bd92069360f773
org.junit.platform.engine.support.descriptor.EngineDescriptor8f2f77769ee0e9c9
org.junit.platform.engine.support.descriptor.MethodSource1d55ac49f5cabc20
org.junit.platform.engine.support.discovery.ClassContainerSelectorResolverdc6114dc7e983729
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution506a6b871d2fd8fe
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.DefaultContextdb18f59764ea1f2a
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolvere7fb3042ea8112f0
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.Builderd86618af76b95613
org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.DefaultInitializationContext1904819635770d62
org.junit.platform.engine.support.discovery.SelectorResolvere64e4fd796d9641d
org.junit.platform.engine.support.discovery.SelectorResolver.Match789c682356298d75
org.junit.platform.engine.support.discovery.SelectorResolver.Match.Type1761e56439c8d93c
org.junit.platform.engine.support.discovery.SelectorResolver.Resolutionab713bbdee405d17
org.junit.platform.engine.support.hierarchical.ExclusiveResourcec29acbe41918b09a
org.junit.platform.engine.support.hierarchical.ExclusiveResource.LockMode96e95d210b150f97
org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine3ac292151741b7fc
org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor963cba9b029b4b19
org.junit.platform.engine.support.hierarchical.LockManager5aedd3bd3957b5a6
org.junit.platform.engine.support.hierarchical.Node5c68850150771b6e
org.junit.platform.engine.support.hierarchical.Node.SkipResult5aca1404ff0f9294
org.junit.platform.engine.support.hierarchical.NodeExecutionAdvisor7c2670c7a35cfba6
org.junit.platform.engine.support.hierarchical.NodeTestTaskf652d8cc5e11bdc5
org.junit.platform.engine.support.hierarchical.NodeTestTask.DefaultDynamicTestExecutorabd00dd511d28b2f
org.junit.platform.engine.support.hierarchical.NodeTestTaskContextbdf88cd3834282a5
org.junit.platform.engine.support.hierarchical.NodeTreeWalkerc689092b060d0b12
org.junit.platform.engine.support.hierarchical.NodeUtilsa7ec8f66d373c169
org.junit.platform.engine.support.hierarchical.NodeUtils.15a44a7e2cbf864b4
org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService2f3b283eba81629f
org.junit.platform.engine.support.hierarchical.SingleLock2036ec8b92a38105
org.junit.platform.engine.support.hierarchical.ThrowableCollector6fd7a27676be3c50
org.junit.platform.engine.support.store.NamespacedHierarchicalStoref773d297d7dc3275
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.CompositeKey3f8758b273ff41a9
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.EvaluatedValue3362298f87d9b160
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.MemoizingSupplierbe04f7b805ba11e1
org.junit.platform.engine.support.store.NamespacedHierarchicalStore.StoredValue8e79d12821d1a835
org.junit.platform.launcher.EngineDiscoveryResult44ae55d9c94cdd13
org.junit.platform.launcher.EngineDiscoveryResult.Statusc6f73a818e869b3a
org.junit.platform.launcher.LauncherDiscoveryListenerc8e17526e895636b
org.junit.platform.launcher.LauncherDiscoveryListener.18959ed22ae756aca
org.junit.platform.launcher.LauncherSessionListenerfd09754de5a01f16
org.junit.platform.launcher.LauncherSessionListener.144b3640faa83f474
org.junit.platform.launcher.TestExecutionListenerf482f6546d6593dc
org.junit.platform.launcher.TestIdentifier2b393a1d76332bc4
org.junit.platform.launcher.TestPlan125780e74ba9c50c
org.junit.platform.launcher.core.CompositeEngineExecutionListenercea0030887322419
org.junit.platform.launcher.core.CompositeTestExecutionListener283b3c281a0728e5
org.junit.platform.launcher.core.DefaultDiscoveryRequest5706e3938a47edbc
org.junit.platform.launcher.core.DefaultLauncher0bd6690ec3f385ab
org.junit.platform.launcher.core.DefaultLauncherConfig6fbfe73d83f861ce
org.junit.platform.launcher.core.DefaultLauncherSession593c9fadcd439bc2
org.junit.platform.launcher.core.DefaultLauncherSession.14e7ad5e44df7008e
org.junit.platform.launcher.core.DefaultLauncherSession.ClosedLauncher1fe238faa78c4ee2
org.junit.platform.launcher.core.DelegatingEngineExecutionListener98129d4f91790da1
org.junit.platform.launcher.core.DelegatingLauncher443e4e7cef8118ba
org.junit.platform.launcher.core.EngineDiscoveryOrchestrator9260ad30b5b1dcb4
org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.Phasec5da52319ffdb6cc
org.junit.platform.launcher.core.EngineDiscoveryResultValidator241befbef6ea2edf
org.junit.platform.launcher.core.EngineExecutionOrchestrator61a7d44fcaf1fd6d
org.junit.platform.launcher.core.EngineFilterer5886e10a3932fe3b
org.junit.platform.launcher.core.EngineIdValidatora3cbf4111f4706bd
org.junit.platform.launcher.core.ExecutionListenerAdapter027b702b863a1b7b
org.junit.platform.launcher.core.InternalTestPlan6c1da5c749fc1754
org.junit.platform.launcher.core.IterationOrder67fbbac106398c55
org.junit.platform.launcher.core.IterationOrder.1c32d4c631876b3d3
org.junit.platform.launcher.core.IterationOrder.2b3c544910702c338
org.junit.platform.launcher.core.LauncherConfig58100dc14c875cb9
org.junit.platform.launcher.core.LauncherConfig.Builderb0426f929eec8a53
org.junit.platform.launcher.core.LauncherConfigurationParameters443c9d189d7662aa
org.junit.platform.launcher.core.LauncherConfigurationParameters.Builder89b3d95a424a68ea
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProviderda0ae1240b20de42
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProvider.2481aeb52e3ac15c4
org.junit.platform.launcher.core.LauncherConfigurationParameters.ParameterProvider.32d8e65fa362495e2
org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder8aa84e8c1156fc9d
org.junit.platform.launcher.core.LauncherDiscoveryResult6ba764b26de92159
org.junit.platform.launcher.core.LauncherFactory7c870cd17431cb9d
org.junit.platform.launcher.core.LauncherListenerRegistry64d5f2a8ac991f94
org.junit.platform.launcher.core.ListenerRegistry387fd40f10f1e6b5
org.junit.platform.launcher.core.OutcomeDelayingEngineExecutionListener4c68ad66a29b4dd7
org.junit.platform.launcher.core.OutcomeDelayingEngineExecutionListener.Outcomeb6ca0889820c3cca
org.junit.platform.launcher.core.ServiceLoaderRegistry2a95faa488a889e7
org.junit.platform.launcher.core.ServiceLoaderTestEngineRegistry69f4349cc7042ed7
org.junit.platform.launcher.core.StackTracePruningEngineExecutionListenerdbf05583a874b58d
org.junit.platform.launcher.core.StreamInterceptingTestExecutionListener36972afd5e542435
org.junit.platform.launcher.listeners.UniqueIdTrackingListenerf828b9fe46e426f0
org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListeneree6720edc40a9ccf
org.junit.platform.launcher.listeners.discovery.LauncherDiscoveryListeners03063623efb5e8b2
org.junit.platform.launcher.listeners.discovery.LauncherDiscoveryListeners.LauncherDiscoveryListenerTypee18e1a0e62e22287
org.junit.platform.launcher.listeners.session.LauncherSessionListeners792ecbf10e49d607
org.slf4j.LoggerFactorya381b7ddf19bf47d
org.slf4j.bridge.SLF4JBridgeHandlera24ab9068b3f1049
org.slf4j.helpers.NOPLoggerFactory54f5632bfcb8d8d5
org.slf4j.helpers.SubstituteLoggerFactorydc7efc0107a4a62d
org.slf4j.helpers.Util857ff3acc0576435
org.slf4j.impl.StaticLoggerBinder6822bf7129d487fa
project.BadCaseTaskTest4ffb51865634feca
project.GoodCaseTaskTest2a64e600bd443e22
sun.nio.cs.ext.AbstractCharsetProvider483365229eb3014e
sun.nio.cs.ext.Big54cbfc2532e78121f
sun.nio.cs.ext.EUC_CN32234cd40727f9f3
sun.nio.cs.ext.EUC_JP03c4e182dee74ac5
sun.nio.cs.ext.EUC_JP_Open0884ac05916018ae
sun.nio.cs.ext.EUC_KR59fc9f6821e72a4f
sun.nio.cs.ext.ExtendedCharsets9637522dd5ac3f05
sun.nio.cs.ext.GBK52202f4dbc30749c
sun.nio.cs.ext.IBM943a90f954f8b18cb32
sun.nio.cs.ext.ISO_8859_874cb614dde51388a
sun.nio.cs.ext.MS12564f91a587331c5d86
sun.nio.cs.ext.MS932fd8c8f05578da3a7
sun.nio.cs.ext.MacCentralEuropea15f2687a563779e
sun.nio.cs.ext.MacRoman3263f5a2a234b978
sun.nio.cs.ext.SJIS153dc4ce27862318
sun.nio.cs.ext.TIS_62062641ce9f9a76148
sun.text.resources.cldr.ext.FormatData_debb786f9842a8e946
sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo9ed83010eeaa402e
sun.util.resources.provider.LocaleDataProvider090384bcacb31f21
worker.org.gradle.api.JavaVersion6444045275aae40b
worker.org.gradle.api.internal.jvm.JavaVersionParser1206b4dd1a2e9827
worker.org.gradle.internal.classloader.ClassLoaderSpeccb374b01ccbebc0b
worker.org.gradle.internal.classloader.ClassLoaderUtils8203100709821636
worker.org.gradle.internal.classloader.ClassLoaderUtils.AbstractClassLoaderLookuperc285dc94ede87ba6
worker.org.gradle.internal.classloader.ClassLoaderUtils.Java9PackagesFetcher66503273ab6df058
worker.org.gradle.internal.classloader.ClassLoaderUtils.LookupClassDefiner101fed03f270a39f
worker.org.gradle.internal.classloader.FilteringClassLoader60efc1577bff24c0
worker.org.gradle.internal.classloader.FilteringClassLoader.RetrieveSystemPackagesClassLoaderf37f538880fb8032
worker.org.gradle.internal.classloader.FilteringClassLoader.Spec66254ecaab39094b
worker.org.gradle.internal.classloader.FilteringClassLoader.Tried8a5448b9f881d5b
worker.org.gradle.internal.classloader.FilteringClassLoader.Trie.Builderc8dff2dff6ca0a46
worker.org.gradle.internal.classloader.FilteringClassLoader.TrieSet9a9aec377ecda35c
worker.org.gradle.internal.stream.EncodedStream.EncodedInput9af7c11b2107c234
worker.org.gradle.process.internal.worker.GradleWorkerMain232767ef46e8d7ca
\ No newline at end of file diff --git a/build/reports/problems/problems-report.html b/build/reports/problems/problems-report.html index 2edd781..a9762ec 100644 --- a/build/reports/problems/problems-report.html +++ b/build/reports/problems/problems-report.html @@ -650,7 +650,7 @@ code + .copy-button { diff --git a/build/reports/tests/test/classes/project.BadCaseTaskTest.html b/build/reports/tests/test/classes/project.BadCaseTaskTest.html index 02eda45..be41eaa 100644 --- a/build/reports/tests/test/classes/project.BadCaseTaskTest.html +++ b/build/reports/tests/test/classes/project.BadCaseTaskTest.html @@ -23,7 +23,7 @@
-
6
+
7

tests

@@ -41,7 +41,7 @@
-
0.011s
+
4.240s

duration

@@ -76,39 +76,45 @@ +Create a new TaskManager and test Connecton +assertCreateNewTaskManager() +4.028s +passed + + Assert an IllegalArgumentException when calling a non-Existing Task assertExceptionOnCallingANonextistingTask() -0s +0.011s passed Assert an IllegalArgumentException when you create a new Task with no or wrong Name, Description assertExceptionOnCreateNewTask() -0.001s +0.011s passed Assert an IllegalArgumentException when you create a new Task with the same Name of a exits Task assertExceptionOnCreateNewTaskWithExitsName() -0.001s +0.019s passed Assert an IllegalArgumentException when delete a existing Task with wrong arguments assertExceptionOnDeletingTask() -0.001s +0.012s passed Assert an IllegalArgumentException when you edit a exits Task assertExceptionOnEditATask() -0.008s +0.150s passed Get a Exeption by setWorker and getWorker assertExeptionBySetAndGetAuthorOfATask() -0s +0.009s passed @@ -121,7 +127,7 @@ Generated by -Gradle 8.14 at 03.12.2025, 18:31:10

+Gradle 8.14 at 06.12.2025, 20:04:50

diff --git a/build/reports/tests/test/classes/project.GoodCaseTaskTest.html b/build/reports/tests/test/classes/project.GoodCaseTaskTest.html index 2cda2e2..aa1bf31 100644 --- a/build/reports/tests/test/classes/project.GoodCaseTaskTest.html +++ b/build/reports/tests/test/classes/project.GoodCaseTaskTest.html @@ -23,7 +23,7 @@
-
5
+
6

tests

@@ -41,7 +41,7 @@
-
0.003s
+
0.057s

duration

@@ -78,31 +78,37 @@ Check TaskList if Task there assertCheckTaskListForTask() -0s +0.010s passed Create a new Task assertCreateNewTask() -0.001s +0.008s +passed + + +Create a new TaskManager and test Connecton +assertCreateNewTaskManager() +0.009s passed Delete Task assertDeleteTask() -0.001s +0.011s passed Edit Task assertEditATask() -0.001s +0.010s passed Set Author of a Task assertSetAuthorOfATask() -0s +0.009s passed @@ -115,7 +121,7 @@ Generated by -Gradle 8.14 at 03.12.2025, 18:31:10

+Gradle 8.14 at 06.12.2025, 20:04:50

diff --git a/build/reports/tests/test/index.html b/build/reports/tests/test/index.html index d524ab6..20ea8b5 100644 --- a/build/reports/tests/test/index.html +++ b/build/reports/tests/test/index.html @@ -20,7 +20,7 @@
-
11
+
13

tests

@@ -38,7 +38,7 @@
-
0.014s
+
4.297s

duration

@@ -82,10 +82,10 @@ project -11 +13 0 0 -0.014s +4.297s 100% @@ -109,20 +109,20 @@ project.BadCaseTaskTest -6 +7 0 0 -0.011s +4.240s 100% project.GoodCaseTaskTest -5 +6 0 0 -0.003s +0.057s 100% @@ -136,7 +136,7 @@ Generated by -Gradle 8.14 at 03.12.2025, 18:31:10

+Gradle 8.14 at 06.12.2025, 20:04:50

diff --git a/build/reports/tests/test/packages/project.html b/build/reports/tests/test/packages/project.html index 696cba5..6764331 100644 --- a/build/reports/tests/test/packages/project.html +++ b/build/reports/tests/test/packages/project.html @@ -22,7 +22,7 @@
-
11
+
13

tests

@@ -40,7 +40,7 @@
-
0.014s
+
4.297s

duration

@@ -80,20 +80,20 @@ BadCaseTaskTest -6 +7 0 0 -0.011s +4.240s 100% GoodCaseTaskTest -5 +6 0 0 -0.003s +0.057s 100% @@ -106,7 +106,7 @@ Generated by -Gradle 8.14 at 03.12.2025, 18:31:10

+Gradle 8.14 at 06.12.2025, 20:04:50

diff --git a/build/test-results/test/TEST-project.BadCaseTaskTest.xml b/build/test-results/test/TEST-project.BadCaseTaskTest.xml index 37f6c01..a736836 100644 --- a/build/test-results/test/TEST-project.BadCaseTaskTest.xml +++ b/build/test-results/test/TEST-project.BadCaseTaskTest.xml @@ -1,12 +1,13 @@ - + - - - - - - + + + + + + + diff --git a/build/test-results/test/TEST-project.GoodCaseTaskTest.xml b/build/test-results/test/TEST-project.GoodCaseTaskTest.xml index 89dfd71..fdbe520 100644 --- a/build/test-results/test/TEST-project.GoodCaseTaskTest.xml +++ b/build/test-results/test/TEST-project.GoodCaseTaskTest.xml @@ -1,11 +1,12 @@ - + - - - - - + + + + + + diff --git a/build/test-results/test/binary/results.bin b/build/test-results/test/binary/results.bin index dfb365807f755d4fd8997071693b62c405bc504f..721dcbf1b4c357c1888958b12c561862a2a9fffc 100644 GIT binary patch delta 374 zcmcb|(Z$8g%)~X3Sugr4Z^0@y&bf)j#i>Ol&PAz-C8>U? zugT2;aT9R~i%ER6b`FteUbwqev`{mPpl%04-tF*a!$ zBSc}sY6fQNxqOd2)cOntmdV!{TXwuNk-|ZqbBu-!O1bd|}Pa0F`~i zz%yBoQ2{RfmVtM2B%?kjO#bcUiHv%zKx6K*O+LaH%gq7R_mqKoax+s4T;DSWmdQfQ m6XE>l46KvaF_*#lFBsS+>$8Nw?R~+(KDm#jhzn-VO9lX(>^(&Q diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/MySql.class.uniqueId2 b/build/tmp/compileJava/compileTransaction/stash-dir/MySql.class.uniqueId2 new file mode 100644 index 0000000000000000000000000000000000000000..cbcdbabb8ce79dbd45a01b8131d214d647a3eb32 GIT binary patch literal 7344 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 F{|C07Aw~cI literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/Task.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/Task.class.uniqueId1 new file mode 100644 index 0000000000000000000000000000000000000000..1cc7d6f6a1ef552f157fccde464d9ccdb039743a GIT binary patch literal 2744 zcmai0T~`xV6x}x;goFX*D?*VnP{k0GXp6RrU@@Ykg`fsetZf~_n2hAhnF&Il`zPvS zU+hD>R@+syt6i&oYuD<(=-=pC{n+>UDQVH6;Rucj1WHEH6zE#mN6EOhRmx4tU0oWw<*v4M)5+Ra z#kI;Mx!$WGiemy1=``aSZq*SOTxbgIeOB)JHM}9+MV^-J4bzs;(%W$jgLqRQSlrG$ zDF_TVI$|uF*1BmY7UhNuaY@SvOp>4ox5$OEvS|iZcS; zQW!5gb+k?)q2Vmf322_b-SiIARRf287gLh)JD3dNyoL*S_dwxzk_v<@XRcUrw^ilb zZ^cDsaXD|=rXo;w^AujUN;)TwzG>K&u~slABGhO~!(~hh9LeU*?8Z{5u)Scqu4%s_ zd-Q!p;JDnUdmFcP!_n_5-Ssqu9}Z&{S3^i@xF$x`rE4 zlUjy6uaad-!w2|~+a1&0&6^(kpR|RrC@|RoZ*En1dRXv|IzjV>lP-Hmb>+1r(0{XF z8jh(GQh#LGj;kBBI3rlV2`S2L4H+!+3>M5%&dsarr{sqf4R>*mAF_GFp5@67#8P9) z2=3#f5FTjw7@x3C_Uk;!ZAMn5z14Dd6$r$VWA_ENn$=ok^)*>(h`p|?8k2Xh?pb%F zoh+}jiyT?7N@luRTr=%uSvj(=l(R-*rB+F`#egg?fn$xXCGM1f&st|roLXNA=S)|A zkj*Q^xvUeyIgBmy1WaNq<=>)lcqqRs1Kr8!kRVBSvK?8c%|sd1N;gMsh3(+7jk5#oc$0dyjaE_4vR8$IYpFWY4lC&^)rJLWy_$YPyu#DPgx zLd_&^8N;Yz?pHI(HK1mX=pm?Pl6MPja#*ghPH>byg7F^^`kE7ul-vZ~8xq(93D$rG z^01m1w|{%c_|2xqkDD5I9yT6nYP^9$6Xc%5#-mM*i_D~_R1toaEq(lVwEv8u)vn=} zc8Me4F1qh!&iG+S8hO25QSsacBiR3Wx$rP8 z)s;cC22~TKlbZ2nrPGHrc+NL@K4O7s|I8p0aqCMAjt{=ToeP29z>ipchF1UdbA&(l zi|7CTd0ZY7570Zi8QS0BFk^^Dg&Gva!7! h#86c^@X=}$Pw7*VZG-=B1cVs)i!ONGaLI@5{{W8`I+6eY literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/TaskManager.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/TaskManager.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..318d15c519d26efaf76aad5eb80f10a154ab1d2e GIT binary patch literal 3343 zcmbVOTT>jz89mJ|?6M39P>=%>(jrUZvRLZ~2S?(PzzSI#ffNUV1ahK`c00QxW@lD2 zvl8Tfahy0;=VHgwV_x)8#HiS##%k?>mY@!!pS{_i?*#R zrak9X8a3?%3!5cf4=mS7GAQj2ak2?juQ!)FDaBU#QiCtuU+WX}qA&C4d6Llm%Nv=|JAVi}-}Xky2HcHm*7L z)}jsq?OpROS`~}lXbQjHOKVLScnP0Wc&=t{=z{B%%;35eRN3+a(+PZqGtHr|c+`k~q8Y)_lztp!=-@5_{&=D_KBs+!P zk$>MUm8`?$2->2cEh*%hFnkv1HIeXh3Q2NfzCW*!jsjcdG*%Qk zcd{Q^ER9w2+e4-sx^ct6ns_c#*0zq65~JNT@EX3zI$>+45>!J+QJ7)eGVo=Xd{L^J z-W<0m*o6#AD5szed<7MS!+Xb}z-eZQ_F_q}{3o2294U;h(*es?#W911rxoHe9_q!q zF}*KAMJLd#GE+~u@z-(lYydiid-Tcp48@h71GB`+U5~}c9kA;3Q`U;m5f%@K zD)GO-e@ig+CU@J$oi}VYGRtnmE9py?WT0D)O04Nw@dtFF%z zx%YKBYdP7Vs>6zKA*<5(CATh$aY9(`vaFJUKc2nMdb@w7f>GqnH%V#Ue_W{~sT9f>h`RNGv*dDHYGXediJrH6U z(YzQ-@jhupF;pv~w{dPQ_ZOtb|BB8JaAK`@=rNxEFt?2}58{Dw85rZp*@x(nDY^G? z4hToNX}*}89eg0K&daMQc{Tl^@XC#EV`efb&A#L|<}S4MxBi}h35Y=FVDLFey-!e{ zAyPhx=W!Z2%5)y1nCJJwCH7Wu7PpXRHqM0`nvF>BidVzESiBnUhvLn1)h4!xbBj6t zD!xYX?y&cDe1pP&lc*WArrW#w{)qvRkry6ClWd=3Z=b9S!nP%3E5ZXWH<2{*&$sxV zcORb;r$jVK!|_lCD)cZGv$#*TD|=dWaXu(r2d2@-6p2ZWL=krPc|6{y@J~SXg@6~E z0Uq7P)g8cBcK|s!_axvv0Sg3NcnaXRDV+)hivfAX#(;0cJDkYv7-w0K#5fPp_2jm{ zu)~7yuZveB3k-y*EHXV;n5ZRWag|Abm1$Vs$7o_#f{A?+(7jzf?bL`Lfib5??8#Xj zNzNo@2MM+QTMXs~xACRPWMA@6xcw06#LOeKzn)N!{`2=^zuP5pk}d>Rx&8)SxyGZq z&hO=$bmwa%b%Tz)6%vwzdl;Sg4!%p$Njmm>lt^+nvP*IVuZMnY;i~V`g)O0g9Z38O qNu`edgCP=lgG*ZQ1N@M`U2MI{E&M!u{sO<^Scd&y;~l(<{{I3#4-@(T literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index b53cbbf51f1a437b0c2677ebc7ad601060ee9b41..3c2cf7a667c7d21d3c3f8087fe1507c6b30b8098 100644 GIT binary patch delta 809 zcmZ3_yq=wrYa(NAeXxkHsGgV}yEsEB#FR>n zi3=r7HC?q_wf$Ih7@G4-G=v1W>SRo6FFi4R&ADdE_TmzCX@TbUdB18Ril(obDAcu0 z}*4<;EJ7@(jYL^nV=49upEX0GOX7J8O?Rtzo4`MK5%?dkdX={c!3 z;D9d4Pby90wPon3C`c{J1cgsxjvYgDL8gG(Oa9P#@oQo>m(6*=SfsCEujioWsOO|- z<;>8QTUlI~7GYFq$%KD9$e}N={WMN-Y7p z0~l-yiFtYXz%T+a)yoodN>kMpG7^gwk~0$X(o<6y8W@4z%vS7AUie9Q~nrpgaMo2WDx&}m-N~T_x zYj$`}s9&x}2ETwHM3f;3Mjzx2#s&QH7;e0Cx#{wDaaRdf zNkpNTQn diff --git a/build/tmp/compileTestJava/compileTransaction/stash-dir/BadCaseTaskTest.class.uniqueId0 b/build/tmp/compileTestJava/compileTransaction/stash-dir/BadCaseTaskTest.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..00623e4f2dd32bc0a8ea4e1d3df9db1869c5889a GIT binary patch literal 9912 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 delta 599 zcmeC-Tf;rU(D=$GU(JNnux#~fQPVD*+q9TFgeQd8na_!ZpP@N1g@cnzVB%-7xdl7* z{{KI6*I?I?{a3g)rid~!2OHT>p2w)nC^q>JqY8_Ip0ML&9%e~4Cp~99QJ2Y4%8wmuzOmV$+vLbuVlA0g!0WNRdJv{}Y%tgoA&n}0}viVa&JLwja!YJO=+5JP)nW=?5QYVhQVOp-!| z0=N6LJua?u)%akz@y_L@%iAY^XI4=N2@VYj(+k%VieTtWE6qzT$;{7Vi)84?D9SI- z%uA1&Y|SFY673omGdYSyrrt{6Wx|()-M2$tSl>}A-Tty{s*S+0vp<*2t97)#WVLSl zle&q^V?*Nf;`I{r67@uq7&;4b5=+wZi*l10I+F8qbMy0xQy97v^YZdb62VrbGIXRC zmn0_TqzW8eUVf)FO7>-3Kz9)9h9k!l1U8;mJT#|0>Z3nv|HkC!XM@G;1j_jieL2m^ zZno+hyP&!3jNJ0k;!WUQ>O zKuEL=gEu1sqdS8z!+NM5_Q@Yuc{zQ7qBaad44a{%9FwEi1cXDtqS0V77Dx&(BuuVn zvvjosvW*xR8W taskMap; + private MySql mysql; - public TaskManager() { + public TaskManager(String user, String password, String port, String host) { taskMap = new HashMap<>(); + this.mysql = new MySql(user, password, port, host); + this.mysql.connect(); + } + /** + * only for Testing + */ + public void resetTest() { + this.mysql.reset(); } public Task createTask(String name, String description) { @@ -28,31 +38,35 @@ public class TaskManager { throw new IllegalArgumentException("Only Letters or Digit are allowed in the name: " + name); } - - boolean taskExited = this.taskMap.values().stream().anyMatch(task -> task.getName().equals(name)); + boolean taskExited = this.mysql.existTask(name); if(taskExited) { throw new TaskAlreadyExistsException("Task already exits, with the name: " + name); } + int taskId = this.mysql.createTask(name, description); + Task task = this.mysql.getTask(taskId); - Task task = new Task(name, description); - taskMap.put(task.getTaskID(), task); + //taskMap.put(task.getTaskID(), task); return task; } public List getTaskList() { - return new ArrayList<>(this.taskMap.values()); + + return this.mysql.getTaskList(); } public Task getTask(String name) { - return taskMap.values().stream().filter(t -> t.getName().equals(name)).findFirst() - .orElseThrow(() -> new IllegalArgumentException("Wrong name")); + if(!this.mysql.existTask(name)) { + throw new IllegalArgumentException("Wrong name"); + } + + return this.mysql.getTask(name); } public Task getTask(int taskID) { - if(!this.taskMap.containsKey(taskID)) { + if(!this.mysql.existTask(taskID)) { throw new IllegalArgumentException("Wrong id"); } - return this.taskMap.get(taskID); + return this.mysql.getTask(taskID); } public void deleteTask(String name) { @@ -60,12 +74,11 @@ public class TaskManager { throw new IllegalArgumentException("Name is null!"); } - if(name.isEmpty() || this.taskMap.values().stream().noneMatch(t -> t.getName().equals(name))) { + if(name.isEmpty() || !this.mysql.existTask(name)) { throw new IllegalArgumentException("Wrong name!"); } - this.taskMap.remove(this.taskMap.values().stream().filter(t -> t.getName().equals(name)).findFirst() - .orElseThrow().getTaskID()); + this.mysql.deleteTask(name); } diff --git a/src/main/java/hhn/temp/project/expections/SQLNoConectionException.java b/src/main/java/hhn/temp/project/expections/SQLNoConectionException.java new file mode 100644 index 0000000..3b22d22 --- /dev/null +++ b/src/main/java/hhn/temp/project/expections/SQLNoConectionException.java @@ -0,0 +1,9 @@ +package hhn.temp.project.expections; + +public class SQLNoConectionException extends RuntimeException { + + public SQLNoConectionException(String message) { + super(message); + } +} + diff --git a/src/main/java/hhn/temp/project/expections/SQLStatmentException.java b/src/main/java/hhn/temp/project/expections/SQLStatmentException.java new file mode 100644 index 0000000..68ec863 --- /dev/null +++ b/src/main/java/hhn/temp/project/expections/SQLStatmentException.java @@ -0,0 +1,9 @@ +package hhn.temp.project.expections; + +public class SQLStatmentException extends RuntimeException { + + public SQLStatmentException(String message) { + super(message); + } +} + diff --git a/src/main/java/hhn/temp/project/expections/TaskNotExistsException.java b/src/main/java/hhn/temp/project/expections/TaskNotExistsException.java new file mode 100644 index 0000000..75361f6 --- /dev/null +++ b/src/main/java/hhn/temp/project/expections/TaskNotExistsException.java @@ -0,0 +1,9 @@ +package hhn.temp.project.expections; + +public class TaskNotExistsException extends RuntimeException { + + public TaskNotExistsException(String message) { + super(message); + } +} + diff --git a/src/main/java/hhn/temp/project/provider/MySql.java b/src/main/java/hhn/temp/project/provider/MySql.java new file mode 100644 index 0000000..dcf3dc8 --- /dev/null +++ b/src/main/java/hhn/temp/project/provider/MySql.java @@ -0,0 +1,226 @@ +package hhn.temp.project.provider; + +import hhn.temp.project.Task; +import hhn.temp.project.TaskStatus; +import hhn.temp.project.expections.SQLNoConectionException; +import hhn.temp.project.expections.SQLStatmentException; +import hhn.temp.project.expections.TaskNotExistsException; + +import java.sql.*; +import java.util.ArrayList; +import java.util.List; + +public class MySql { + + private String user; + private String password; + private String db; + private String host; + private Connection connection; + + public MySql(String user, String password, String db, String host) { + this.user = user; + this.password = password; + this.db = db; + this.host = host; + } + + public void connect() { + String url = "jdbc:mysql://" + host + ":3306/" + db + "?autoReconnect=true&useSSL=false"; + + try { + Class.forName("com.mysql.cj.jdbc.Driver"); + connection = DriverManager.getConnection(url, user, password); + } catch (SQLException e) { + throw new SQLNoConectionException("Cant connect to the database"); + } catch (ClassNotFoundException e) { + throw new SQLNoConectionException("Cant connect to the database: Driver class not found!"); + } + } + + public void reset() { + try { + PreparedStatement stmt = connection.prepareStatement("TRUNCATE task"); + stmt.executeUpdate(); + } catch (SQLException e) { + throw new SQLStatmentException("Cant insert data in database"); + } + } + + public int createTask(String name, String description) { + try { + PreparedStatement stmt = connection.prepareStatement("INSERT INTO task ( taskName, taskDescription) VALUES ( ? , ? )", Statement.RETURN_GENERATED_KEYS); + stmt.setString(1, name); + stmt.setString(2, description); + stmt.executeUpdate(); + ResultSet rs = stmt.getGeneratedKeys(); + if(rs.next()) { + return rs.getInt(1); + }else{ + throw new SQLStatmentException("Can insert data but not select"); + } + } catch (SQLException e) { + throw new SQLStatmentException("Cant insert data in database"); + } + } + +// public void deleteTask(int id) { +// try { +// PreparedStatement stmt = connection.prepareStatement("DELETE task WHERE taskID=?"); +// stmt.setString(1, ""+id); +// stmt.executeUpdate(); +// } catch (SQLException e) { +// throw new SQLStatmentException("Cant delete data in database"); +// } +// } + + public boolean existTask(String name) { + try { + PreparedStatement stmt = connection.prepareStatement("Select * FROM task WHERE taskName=?"); + stmt.setString(1, name); + ResultSet rs = stmt.executeQuery(); + return rs.next(); + } catch (SQLException e) { + throw new SQLStatmentException("Cant select data from database"); + } + } + + public boolean existTask(int id) { + try { + PreparedStatement stmt = connection.prepareStatement("Select * FROM task WHERE taskID=?"); + stmt.setString(1, ""+id); + ResultSet rs = stmt.executeQuery(); + return rs.next(); + } catch (SQLException e) { + throw new SQLStatmentException("Cant select data from database"); + } + } + + public void deleteTask(String name) { + try { + PreparedStatement stmt = connection.prepareStatement("DELETE FROM task WHERE taskName=?"); + stmt.setString(1, name); + stmt.executeUpdate(); + } catch (SQLException e) { + throw new SQLStatmentException("Cant delete data in database"); + } + } + + public void updateDescription(int id, String description) { + try { + PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskDescription=? WHERE taskID=?"); + stmt.setString(1, description); + stmt.setString(2, ""+id); + stmt.executeUpdate(); + + } catch (SQLException e) { + throw new SQLStatmentException("Cant update data in database"); + } + } +// public void updateDescription(String name, String description) { +// try { +// PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskDescription=? WHERE taskName=?"); +// stmt.setString(1, description); +// stmt.setString(2, name); +// stmt.executeUpdate(); +// +// } catch (SQLException e) { +// throw new SQLStatmentException("Cant update data in database"); +// } +// } + public void updateStatus(int id, TaskStatus status) { + try { + PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskStatus=? WHERE taskID=?"); + stmt.setString(1, status.name()); + stmt.setString(2, ""+id); + stmt.executeUpdate(); + + } catch (SQLException e) { + throw new SQLStatmentException("Cant update data in database"); + } + } +// public void updateStatus(String name, TaskStatus status) { +// try { +// PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskStatus=? WHERE taskName=?"); +// stmt.setString(1, status.name()); +// stmt.setString(2, name); +// stmt.executeUpdate(); +// +// } catch (SQLException e) { +// throw new SQLStatmentException("Cant update data in database"); +// } +// } + + public void updateWorker(int id, String worker) { + try { + PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskWorker=? WHERE taskID=?"); + stmt.setString(1, worker); + stmt.setString(2, ""+id); + stmt.executeUpdate(); + + } catch (SQLException e) { + throw new SQLStatmentException("Cant update data in database"); + } + } + +// public void updateWorker(String name, String worker) { +// try { +// PreparedStatement stmt = connection.prepareStatement("UPDATE task SET taskWorker=? WHERE taskName=?"); +// stmt.setString(1, worker); +// stmt.setString(2, name); +// stmt.executeUpdate(); +// +// } catch (SQLException e) { +// throw new SQLStatmentException("Cant update data in database"); +// } +// } + + public Task getTask(int id) { + try { + PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task WHERE taskID=?"); + stmt.setString(1, ""+id); + ResultSet rs = stmt.executeQuery(); + if(rs.next()) { + return getTaskFromDatabase(rs); + } else { + throw new TaskNotExistsException("No Task found in databse with id: " + id); + } + } catch (SQLException e) { + throw new SQLStatmentException("Cant select data from database"); + } + } + public Task getTask(String name) { + try { + PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task WHERE taskName=?"); + stmt.setString(1, name); + ResultSet rs = stmt.executeQuery(); + if(rs.next()) { + return getTaskFromDatabase(rs); + }else{ + throw new TaskNotExistsException("No Task found in databse with name: " + name); + } + + } catch (SQLException e) { + throw new SQLStatmentException("Cant select data from database"); + } + } + + public List getTaskList() { + try { + PreparedStatement stmt = connection.prepareStatement("SELECT * FROM task"); + ResultSet rs = stmt.executeQuery(); + List taskList = new ArrayList<>(); + while(rs.next()) { + taskList.add(getTaskFromDatabase(rs)); + } + return taskList; + } catch (SQLException e) { + throw new SQLStatmentException("Cant select data from database"); + } + } + + private Task getTaskFromDatabase(ResultSet rs) throws SQLException { + Task task = new Task(rs.getInt("taskID"), rs.getString("taskName"), rs.getString("taskDescription"), rs.getString("taskWorker"),TaskStatus.valueOf(rs.getString("taskStatus")), this); + return task; + } +} diff --git a/task ':build'/reports/jacoco/jacoco.csv b/task ':build'/reports/jacoco/jacoco.csv index 7681b1e..dff5aaf 100644 --- a/task ':build'/reports/jacoco/jacoco.csv +++ b/task ':build'/reports/jacoco/jacoco.csv @@ -1,7 +1,11 @@ GROUP,PACKAGE,CLASS,INSTRUCTION_MISSED,INSTRUCTION_COVERED,BRANCH_MISSED,BRANCH_COVERED,LINE_MISSED,LINE_COVERED,COMPLEXITY_MISSED,COMPLEXITY_COVERED,METHOD_MISSED,METHOD_COVERED -GSE2TaskTracker,hhn.temp.project,Task,0,115,0,16,0,36,0,19,0,11 -GSE2TaskTracker,hhn.temp.project,TaskManager,0,191,0,22,0,35,0,23,0,12 +GSE2TaskTracker,hhn.temp.project,Task,0,138,0,16,0,41,0,18,0,10 +GSE2TaskTracker,hhn.temp.project,TaskManager,0,158,0,24,0,39,0,20,0,8 GSE2TaskTracker,hhn.temp.project,Main,0,3,0,0,0,1,0,1,0,1 GSE2TaskTracker,hhn.temp.project,TaskStatus,0,21,0,0,0,2,0,1,0,1 +GSE2TaskTracker,hhn.temp.project.provider,MySql,89,266,3,5,27,73,3,15,0,14 +GSE2TaskTracker,hhn.temp.project.expections,TaskNotExistsException,4,0,0,0,2,0,1,0,1,0 +GSE2TaskTracker,hhn.temp.project.expections,SQLNoConectionException,0,4,0,0,0,2,0,1,0,1 +GSE2TaskTracker,hhn.temp.project.expections,SQLStatmentException,4,0,0,0,2,0,1,0,1,0 GSE2TaskTracker,hhn.temp.project.expections,TaskAlreadyExistsException,0,4,0,0,0,2,0,1,0,1 GSE2TaskTracker,hhn.temp.project.expections,TaskHasNoWorkerException,0,4,0,0,0,2,0,1,0,1 diff --git a/test/project/BadCaseTaskTest.java b/test/project/BadCaseTaskTest.java index 8070a8a..9e826e3 100644 --- a/test/project/BadCaseTaskTest.java +++ b/test/project/BadCaseTaskTest.java @@ -3,6 +3,8 @@ import hhn.temp.project.Main; import hhn.temp.project.Task; import hhn.temp.project.TaskManager; import hhn.temp.project.TaskStatus; +import hhn.temp.project.expections.SQLNoConectionException; +import hhn.temp.project.expections.SQLStatmentException; import hhn.temp.project.expections.TaskAlreadyExistsException; import hhn.temp.project.expections.TaskHasNoWorkerException; import org.junit.jupiter.api.BeforeEach; @@ -16,17 +18,27 @@ import static org.junit.jupiter.api.Assertions.*; public class BadCaseTaskTest { private TaskManager taskManager; + private String user = "hhn"; + private String password = "!9oSmhsiwYO.m)_x"; + private String db = "hhn"; + private String host = "localhost"; @BeforeEach public void setup() { Main main = new Main(); - taskManager = new TaskManager(); } + @Test + @DisplayName("Create a new TaskManager and test Connecton") + public void assertCreateNewTaskManager() { + assertThrows(SQLNoConectionException.class,() -> taskManager = new TaskManager("deep", "deep", db, host)); + } + @Test @DisplayName("Assert an IllegalArgumentException when you create a new Task with no or wrong Name, Description") public void assertExceptionOnCreateNewTask() { + taskManager = new TaskManager(user, password, db, host); assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("", null)); assertThrows(IllegalArgumentException.class,() -> taskManager.createTask(null, "")); assertThrows(IllegalArgumentException.class,() -> taskManager.createTask(null, null)); @@ -34,21 +46,27 @@ public class BadCaseTaskTest { assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("", "test")); assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("ä#eadsew2", "test")); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Assert an IllegalArgumentException when you create a new Task with the same Name of a exits Task") public void assertExceptionOnCreateNewTaskWithExitsName() { + taskManager = new TaskManager(user, password, db, host); String name = "Name"; String description = "Description"; assertDoesNotThrow(() -> taskManager.createTask(name, description)); assertThrows(TaskAlreadyExistsException.class, () -> taskManager.createTask(name, description)); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Assert an IllegalArgumentException when you edit a exits Task") public void assertExceptionOnEditATask() { + taskManager = new TaskManager(user, password, db, host); String name = "Name"; String description = "Description"; Task task = taskManager.createTask(name, description); @@ -56,12 +74,15 @@ public class BadCaseTaskTest { assertThrows(IllegalArgumentException.class, () -> task.setDescription(null)); assertThrows(IllegalArgumentException.class, () -> task.setStatus(null)); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Assert an IllegalArgumentException when calling a non-Existing Task") public void assertExceptionOnCallingANonextistingTask (){ + taskManager = new TaskManager(user, password, db, host); String wrongName = "Manager"; String name = "Name"; String description = "Description"; @@ -70,11 +91,14 @@ public class BadCaseTaskTest { assertThrows(IllegalArgumentException.class, () -> taskManager.getTask(wrongName)); assertThrows(IllegalArgumentException.class, () -> taskManager.getTask(23)); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Assert an IllegalArgumentException when delete a existing Task with wrong arguments") public void assertExceptionOnDeletingTask (){ + taskManager = new TaskManager(user, password, db, host); String wrongName = "Manager"; String name = "Name"; String description = "Description"; @@ -84,11 +108,14 @@ public class BadCaseTaskTest { assertThrows(IllegalArgumentException.class, () -> taskManager.deleteTask("")); assertThrows(IllegalArgumentException.class, () -> taskManager.deleteTask(wrongName)); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Get a Exeption by setWorker and getWorker") public void assertExeptionBySetAndGetAuthorOfATask() { + taskManager = new TaskManager(user, password, db, host); String name = "Name"; String description = "Description"; String workerName = "worker"; @@ -99,6 +126,8 @@ public class BadCaseTaskTest { assertThrows(IllegalArgumentException.class, () -> task.setWorker("")); assertThrows(IllegalArgumentException.class, () -> task.setWorker("ewrgi43rfoiw2öa#-")); + assertDoesNotThrow(() -> taskManager.resetTest()); + } } diff --git a/test/project/GoodCaseTaskTest.java b/test/project/GoodCaseTaskTest.java index b19078c..571c06c 100644 --- a/test/project/GoodCaseTaskTest.java +++ b/test/project/GoodCaseTaskTest.java @@ -14,17 +14,38 @@ import static org.junit.jupiter.api.Assertions.*; public class GoodCaseTaskTest { private TaskManager taskManager; + private String user = "hhn"; + private String password = "!9oSmhsiwYO.m)_x"; + private String db = "hhn"; + private String host = "localhost"; @BeforeEach public void setup() { Main main = new Main(); - taskManager = new TaskManager(); + + + } + + + @Test + @DisplayName("Create a new TaskManager and test Connecton") + public void assertCreateNewTaskManager() { + assertDoesNotThrow(() -> taskManager = new TaskManager(user, password, db, host)); + assertDoesNotThrow(() -> taskManager.resetTest()); + + String name = "Name"; + String description = "Description"; + assertDoesNotThrow(() -> taskManager.createTask(name, description)); + + assertDoesNotThrow(() -> taskManager.resetTest()); } @Test @DisplayName("Create a new Task") public void assertCreateNewTask() { + taskManager = new TaskManager(user, password, db, host); + assertDoesNotThrow(() -> taskManager.resetTest()); String name = "Name"; String description = "Description"; Task task = taskManager.createTask(name, description); @@ -33,41 +54,71 @@ public class GoodCaseTaskTest { assertEquals(description, task.getDescription()); assertEquals(TaskStatus.OPEN, task.getStatus()); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Delete Task") public void assertDeleteTask(){ - String name = "Name"; - String description = "Description"; - String deletingTask = "Name"; - Task task = taskManager.createTask(name, description); + taskManager = new TaskManager(user, password, db, host); + assertDoesNotThrow(() -> taskManager.resetTest()); + String name = "Name"; + String description = "Description"; + String deletingTask = "Name"; + Task task = taskManager.createTask(name, description); - List tasklist = taskManager.getTaskList(); - assertNotNull(tasklist); - assertTrue(tasklist.stream().anyMatch( t -> t.getName().equals(deletingTask))); - assertEquals(task, taskManager.getTask(name)); - taskManager.deleteTask(deletingTask); + List tasklist = taskManager.getTaskList(); + assertNotNull(tasklist); + assertTrue(tasklist.stream().anyMatch( t -> t.getName().equals(deletingTask))); + Task dbTask = taskManager.getTask(name); + + assertNotNull(dbTask); + assertEquals(task.getName(), dbTask.getName()); + assertEquals(task.getTaskID(), dbTask.getTaskID()); + assertEquals(task.getStatus(), dbTask.getStatus()); + + taskManager.deleteTask(deletingTask); + + assertDoesNotThrow(() -> taskManager.resetTest()); } @Test @DisplayName("Check TaskList if Task there") public void assertCheckTaskListForTask() { + taskManager = new TaskManager(user, password, db, host); + assertDoesNotThrow(() -> taskManager.resetTest()); String name = "Name"; String description = "Description"; Task task = taskManager.createTask(name, description); List taskList = taskManager.getTaskList(); assertNotNull(taskList); - assertTrue(taskList.stream().anyMatch(t -> t.equals(task))); - assertEquals(task, taskManager.getTask(name)); - assertEquals(task, taskManager.getTask(task.getTaskID())); + assertTrue(taskList.stream().anyMatch(t -> t.getName().equals(task.getName()))); + Task dbTask = taskManager.getTask(name); + + assertNotNull(dbTask); + assertEquals(task.getName(), dbTask.getName()); + assertEquals(task.getTaskID(), dbTask.getTaskID()); + assertEquals(task.getStatus(), dbTask.getStatus()); + + Task dbTaskWithId = taskManager.getTask(task.getTaskID()); + + assertNotNull(dbTaskWithId); + assertEquals(task.getName(), dbTaskWithId.getName()); + assertEquals(task.getTaskID(), dbTaskWithId.getTaskID()); + assertEquals(task.getStatus(), dbTaskWithId.getStatus()); + + + assertDoesNotThrow(() -> taskManager.resetTest()); } @Test @DisplayName("Edit Task") public void assertEditATask() { + taskManager = new TaskManager(user, password, db, host); + assertDoesNotThrow(() -> taskManager.resetTest()); String name = "Name"; String description = "Description"; //String newName = "Name2"; @@ -83,12 +134,16 @@ public class GoodCaseTaskTest { task.setStatus(TaskStatus.INPROCESS); assertEquals(TaskStatus.INPROCESS, task.getStatus()); + assertDoesNotThrow(() -> taskManager.resetTest()); + } @Test @DisplayName("Set Author of a Task") public void assertSetAuthorOfATask() { + taskManager = new TaskManager(user, password, db, host); + assertDoesNotThrow(() -> taskManager.resetTest()); String name = "Name"; String description = "Description"; String workerName = "worker"; @@ -101,8 +156,11 @@ public class GoodCaseTaskTest { assertEquals(workerName, task.getWorker()); assertEquals(TaskStatus.INPROCESS, task.getStatus()); + assertDoesNotThrow(() -> taskManager.resetTest()); + } + }