From 2a207024fc2a191d1c0c8920420d40b0e969975b Mon Sep 17 00:00:00 2001 From: oana-p Date: Thu, 30 Oct 2014 10:20:53 -0700 Subject: [PATCH 1/9] commit after maven workshop --- exercises/HelloWorldMain/HelloWorldMain.iml | 20 +++++++++ exercises/HelloWorldMain/logs.log | 9 ++++ exercises/HelloWorldMain/pom.xml | 41 ++++++++++++++++++ .../java/ro/teamnet/hello/HelloWorld.java | 32 ++++++++++++++ .../src/main/resources/log4j.properties | 17 ++++++++ .../java/ro/teamnet/hello/HelloWorldTest.java | 21 +++++++++ .../helloworld-extend/helloworld-extend.iml | 20 +++++++++ exercises/helloworld-extend/logs.log | 1 + exercises/helloworld-extend/pom.xml | 17 ++++++++ .../ro/teamnet/hello2/HelloWorldExtend.java | 22 ++++++++++ .gitignore | 1 + workshops/3.Exceptions.pptx | Bin 110298 -> 110246 bytes workshops/4.Threads_Serialization.pptx | Bin 68590 -> 70163 bytes workshops/Workshop Maven.docx | Bin 0 -> 271863 bytes workshops/Workshop part 2 documentation.docx | Bin 68290 -> 68105 bytes 15 files changed, 201 insertions(+) create mode 100644 exercises/HelloWorldMain/HelloWorldMain.iml create mode 100644 exercises/HelloWorldMain/logs.log create mode 100644 exercises/HelloWorldMain/pom.xml create mode 100644 exercises/HelloWorldMain/src/main/java/ro/teamnet/hello/HelloWorld.java create mode 100644 exercises/HelloWorldMain/src/main/resources/log4j.properties create mode 100644 exercises/HelloWorldMain/src/test/java/ro/teamnet/hello/HelloWorldTest.java create mode 100644 exercises/helloworld-extend/helloworld-extend.iml create mode 100644 exercises/helloworld-extend/logs.log create mode 100644 exercises/helloworld-extend/pom.xml create mode 100644 exercises/helloworld-extend/src/main/java/ro/teamnet/hello2/HelloWorldExtend.java create mode 100644 .gitignore create mode 100644 workshops/Workshop Maven.docx diff --git a/ exercises/HelloWorldMain/HelloWorldMain.iml b/ exercises/HelloWorldMain/HelloWorldMain.iml new file mode 100644 index 0000000..fbdf3c0 --- /dev/null +++ b/ exercises/HelloWorldMain/HelloWorldMain.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/ exercises/HelloWorldMain/logs.log b/ exercises/HelloWorldMain/logs.log new file mode 100644 index 0000000..6f3755d --- /dev/null +++ b/ exercises/HelloWorldMain/logs.log @@ -0,0 +1,9 @@ +DEBUG main ro.teamnet.hello.HelloWorld - DEBUG -> Enters in sayHello() method from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld diff --git a/ exercises/HelloWorldMain/pom.xml b/ exercises/HelloWorldMain/pom.xml new file mode 100644 index 0000000..7d4b0d3 --- /dev/null +++ b/ exercises/HelloWorldMain/pom.xml @@ -0,0 +1,41 @@ + + + 4.0.0 + + ro.teamnet.zerotohero + helloworld-main + 1.0 + A Maven project for displaying a Hello World Application + Hello World Project + + + log4j + log4j + 1.2.17 + + + junit + junit + 4.11 + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar + + + + + + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/src/main/java/ro/teamnet/hello/HelloWorld.java b/ exercises/HelloWorldMain/src/main/java/ro/teamnet/hello/HelloWorld.java new file mode 100644 index 0000000..f763930 --- /dev/null +++ b/ exercises/HelloWorldMain/src/main/java/ro/teamnet/hello/HelloWorld.java @@ -0,0 +1,32 @@ +package ro.teamnet.hello; + + +import org.apache.log4j.Logger; + +public class HelloWorld { + + static final Logger logger = Logger.getLogger(HelloWorld.class.getName()); + /** + * method for saying hello + * + */ + public void sayHello(){ + System.out.println("Hello World!"); + logger.debug("DEBUG -> Enters in sayHello() method from HelloWorld"); + logger.info("INFO -> Enters in returnHelloKey from HelloWorld"); + + } + + /** + * method for returning a key + * @return - The HelloWorld key + */ + public String returnHelloKey(){ + return "HelloKey"; + } + public static void main(String[] args) { + HelloWorld helloWorld = new HelloWorld(); + helloWorld.sayHello(); + } + +} diff --git a/ exercises/HelloWorldMain/src/main/resources/log4j.properties b/ exercises/HelloWorldMain/src/main/resources/log4j.properties new file mode 100644 index 0000000..23fe9fd --- /dev/null +++ b/ exercises/HelloWorldMain/src/main/resources/log4j.properties @@ -0,0 +1,17 @@ +log4j.rootLogger= info, stdout, R + +log4j.appender.stdout=org.apache.log4j.ConsoleAppender +log4j.appender.stdout.layout=org.apache.log4j.PatternLayout + +# Pattern to output the caller's file name and line number. +log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n + +log4j.appender.R=org.apache.log4j.RollingFileAppender +log4j.appender.R.File=logs.log + +log4j.appender.R.MaxFileSize=100KB +# Keep one backup file +log4j.appender.R.MaxBackupIndex=1 + +log4j.appender.R.layout=org.apache.log4j.PatternLayout +log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n diff --git a/ exercises/HelloWorldMain/src/test/java/ro/teamnet/hello/HelloWorldTest.java b/ exercises/HelloWorldMain/src/test/java/ro/teamnet/hello/HelloWorldTest.java new file mode 100644 index 0000000..34d1f98 --- /dev/null +++ b/ exercises/HelloWorldMain/src/test/java/ro/teamnet/hello/HelloWorldTest.java @@ -0,0 +1,21 @@ +package ro.teamnet.hello; + + +import org.junit.Test; + +public class HelloWorldTest { + + @Test + public void testSayHello(){ + HelloWorld helloWorld = new HelloWorld(); + helloWorld.sayHello(); + } + + @Test + public void testReturnHelloKey(){ + HelloWorld helloWorld = new HelloWorld(); + System.out.println("From Test: " + helloWorld.returnHelloKey()); + assert helloWorld.returnHelloKey().equals("HelloKey"); + } + +} diff --git a/ exercises/helloworld-extend/helloworld-extend.iml b/ exercises/helloworld-extend/helloworld-extend.iml new file mode 100644 index 0000000..ae98056 --- /dev/null +++ b/ exercises/helloworld-extend/helloworld-extend.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/ exercises/helloworld-extend/logs.log b/ exercises/helloworld-extend/logs.log new file mode 100644 index 0000000..a2d0be6 --- /dev/null +++ b/ exercises/helloworld-extend/logs.log @@ -0,0 +1 @@ +INFO main ro.teamnet.hello.HelloWorld - INFO -> Enters in returnHelloKey from HelloWorld diff --git a/ exercises/helloworld-extend/pom.xml b/ exercises/helloworld-extend/pom.xml new file mode 100644 index 0000000..499516d --- /dev/null +++ b/ exercises/helloworld-extend/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + ro.teamnet.zerotohero + helloworld-extend + 1.0 + + + ro.teamnet.zerotohero + helloworld-main + 1.0 + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/src/main/java/ro/teamnet/hello2/HelloWorldExtend.java b/ exercises/helloworld-extend/src/main/java/ro/teamnet/hello2/HelloWorldExtend.java new file mode 100644 index 0000000..b98e50b --- /dev/null +++ b/ exercises/helloworld-extend/src/main/java/ro/teamnet/hello2/HelloWorldExtend.java @@ -0,0 +1,22 @@ +package ro.teamnet.hello2; + +import ro.teamnet.hello.*; + +public class HelloWorldExtend { + + public HelloWorldExtend() { + } + + public void extendSayHello(){ + HelloWorld helloWorld = new HelloWorld(); + helloWorld.sayHello(); + System.out.println("The new Hello World"); + } + + public static void main(String[] args) { + + + new HelloWorldExtend().extendSayHello(); + } + +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..485dee6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea diff --git a/workshops/3.Exceptions.pptx b/workshops/3.Exceptions.pptx index 94408af3d209328e3383237dde9942fb95e61a2b..4d6934e384e2b801460b3f2b546629a4a4b52abd 100644 GIT binary patch delta 13200 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 diff --git a/workshops/4.Threads_Serialization.pptx b/workshops/4.Threads_Serialization.pptx index 3c1517bcb813720214e5e9b6179546d5b831be4a..13887e3c88e7d1742f7532fda0bef88e5e5ec664 100644 GIT binary patch delta 16174 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�iQ)Zq9k*`bLdef)yEji?-XiJvYN8K1A6$1_vKhoyA1O)btZVe zbJr8vGFqk|Su@2X2q;J}aadbt5V+JnMr?=DJ)O5(Re?|-;`olC5E=?vFx*w>%ar!c zHFwQxh^x>J*zVCgVub)aM}`)ID|&69~|Or z<-wa+J{vaS1Q10HI&ULi-$-r-!Di}&TH1rkIPa3>i1pmkM{Y+ zUkvti^C^wR3y1NS)6pHi48DU@b@T1ozc?cOLT-K>25^`<;&a`Qq%YYF;%Pcsed%oG zlX@wnafKhCPD1o2gMm7vplQMheF6!$l`3~LaSfjm-o`^4`y%J1lQf1KBUo*XQ?OjIxBeMH%csH>F z1{SWkl21(p3IrsK@XxZWC$r{)gaqp*;=HUkaKHtH=)#vAt@m-v28X!JFov%u{Gtj9 z_sj5HJ?bME{FUI(5TGL>C}e$}YY_xs%L?ab$!(umIkpk$DPO4_5RcP8a(=+T_CQ{g z)|CrDshHPXsI1`JUDf&n*1)4HwUauHKkz(TL#ZUDeH}VnvWDx###vHtrx*nrPcBY? zhDBFlu>!#SDj3-BZ5unTV6n4g$1X*EWES_!APd1lIRSynnl)QN)oe>s+3^gJ4xs|h zu6?k8^O)29`Zgg5c-{fnZIx=ST9a~G5iOc2Dr(r7eccs`r7fkpGGi6DlaLNEfl%I3 zsK!{nA8M3QW-nxyFYqh=Iuwz;FFB>A|0Q@jz)1V(N?!A-+P8S@#t^Kjf`SomlAo=N z_H(BLi&fU7kF>9;qO;;>8i^tqBpN;$9f{`gtXxz~!0jr)W%iwql6O!j2pjuW;p zJh7jF%uD?8c@6fn7tHI;4f7H_W+y?qegpH?S2#N*Q{EjF5};>~fvPJYqN4P!pa>~c zR6noG89Y&)VgAH>ue}wacQ(j7_h~J8GiJb@!IJn%f#+E6DC*?L(M;FzFU@(^YlU`? z8YaS6JAeKAT3XoxEm}P1EK6oo~ z>hn;VtG^Z} zaw)#Bp$i5Z)CdKJ(c?cOLwb_~T+sc^(Al+C>m)j!tHTE0A^(I*Afgt(_|yyf{sM!n zYK_qhOGE+Oz`>>f*91Od)M>1LR}xcz4m^bOb69p_bmR?ON10*b-bbeb*Wb>HC_@MU z!_B079Ey&EC2d^D-kDwD1R}a2SYa1uM18)HKQ}Y{g>33iIgJsEIY3lHeB9g>|L8uU5Cfc+VF3L*`uCH(UTp3yp`1(1d@&PW z9fo4tgHu5G7YR_vdHh%%@mxW0xWx;Aq6ibhSa1*W3pm${lMBjnmCq)06&KNmH|bxa zi%}xI!Q(0-aZ7OUzVjRKeipm&ev`~k98(a{aiV4s-uw2jj6)KRsf{lBD)Ecj{P1&e z=`U~CL_Vr!^WdWwZ#$@LSq|98#)B0BA)($Ziw4c%sX25CQGMQT14GpUU=`(nB%8Um z)M4Z+J$oTb0leR-LKsc0P49pw7x%3r6=MIVAVpJ=i1Fi&WKmM$8& z#YwDW&-onjtU{(GP7lBY4C6MsT|uQOLk5UO&?L2j2u{U}eBMrDV{r|}uXKC*`%C?} z;$tku$svHdeu&F1l3g<82NMnev@Rz$VHO+9J5j%be2W2&vT^`jH?OEqaGSV94WeQ4 z_X_np8z-$2{F(Mx@u+$9!q) zIv}AV>Z5zdPoB!o5KeDC%|fhDtS8#Gi7P4Z-o##UryV}=&Us@n`bj(LJ22w&@cPN6 z7ysGpv7fuDtNN$*S+_Mi#?LUjd%$(Y5uz+eV zgVj6!7NI-Teyl9K)M)0)tK(PvyL<6~+J-vJvT>*Kbr+pweRrs2wr&*P$SLiyM?r zWR?WC6B}hn^fWVrZR5P{Pf{sZ5=injYLJS&Z4kFvwqsl>B}FC|rN7Ypq(6mZTLwuo z6iStQ0?D~#+KtM+M?99n7=f=`+rN~3plLqqUQuW8Y-=g}j!7=`Km%5@;2=|#blfEc zf#VYh*&j^rnTMVZz@kRghj4nCbnPtSh9iWY>Tnh$lzHl!>g%OS?-U0~eR=nQxa>f= z4~7ZQv6O_EbZ=w;qv13whN0O7Ss@EJ(diMRnl)AogL$on!%VS(bK=Y03k|aj4M5D2 z`O!*Lu#*zWYE9`nv*as!D=3)%J$|WY)122(Y6lO}R6ueLK#;)Tt8XNDDX+QIjJ;Xa zv$OJpsA?y4yf*#Ux(MR8l@Jc21rNw4USXT7rSN7wI=T9WSr52dJGDfJEb?87IYpMa z?G`CuiPQ+(QM`#*Az4Cx{p~u6>{s8Bh=zI;co(WP5nC1W$g&Lk*@r@@==97iOI$WN zZoJa3;@DLqfQzSu(%s=Y@G^HEpE4ISPCBmy_*GGTrb872=S9H~@66q}OSaWoUkTpC zaA-X@l3<~yhLPFxgXB%V)WFR?k&LPZWz{)(6aMPxx*kfa8BCn@m0R>lZ_>$@ofB6* zJ(}by^IRJ0+Xs!7X?SL%FuO&*gLx!4^o0D9k!26Sw<7y_`EO_QNw+1(Id zpI2eQ&d$(QrKLsDe!!3d((>k6ws#lb6_nI~G{hzNweW$r4Mr_2qIip7T>kCyg zo97-G@NCyS9lK0JU$+z8tLSiUd`^>a4I8BG?kSm0G6Jl+oKX4bo-E>OwVKXA-#Z_n zRfN3|KUvjVErhE~YUrn-0;#+v{}8=4?6{T!0A6oevaSTdjdqkrmJN3xm(g;FZa%fF z>`i%;Xo1LT!^wdtD!6AW$uus>Gdr9&bvar}#>s8a8eUICGs9LI_JwXKIp(&Fh<88Z zEt@cL9Ns6U;(PV6O(J47Zn-^zaUv;rB)9`-vyIZ z!1)~~nT8KCb3g^C%$XG}gK8Vm_%vmg5h==C_}cPsl98{jOjhWr_Ahcu^ch85lY=$W z&<$Cz5$O+=pq0MGSN`^?4pPfQ{{R(+v*> zeblfW7C&QXqO31Ex5)&BqnBg*$MV*WfJoaP>C#o>eBs(F&)8Q?uM*z)ht5&*=&*{* zOJ4h2(n++0HuwCOGn^~|YL$JCm#VI$EIGUOrS66KNmTYaF#_6?+0(4cHLL!x3do^N z1wJuE8!h|@0t#lIav~!P=)Oaq?-YUQ55lqU-yc^X${!1dwXZ#xBHqVUIr5w#05s+T zmQu30nwmnzT;0#+%zm3MFLTiPz4CNW?XdycFn8}cDu=We-KF0e0Wr;zZB0BAE2#uX zSFU`Y&Orw@NG4|Z{YHM_l--|id!%WFI=<#Sx}B8Y)DV`e`{ys`^BP8V63nfUT#BxG zfHkafsTq!jt}AsO(KhZK;g@yi0ooWvLya}}yd6toDlkafPI#S=LnUtwsg%KDyF<32 z02+Q6dj~5K^>7UV^u8-$6NSuL+tpMEFKIJVG+n}L(FvPYV$n!ZOYEU92J1VtiJmsw ztOC2%0=G62mj=-d>@h^b6w1|l{6QAocvrVD39KC3C#Yf(kUb!PjER} za*JBpnO$0GEPwyt@C|p`nt@Tfh+ZUTc!U?Ti*|p%jT_eA{H z4vY-!7p2nMN@7ppOyXi&%xI2MU6lrz)zbGDN&xFsYdMQ4Gj z0V$9-hfm4qDufgM?IIdQInUCo6kYD5D^Ay$ynD5D{_R zZhYy_g7^%of_DSQ);r9+h=$og)cLTNPe`Mozf-AY4I$8iw`r_oyM~l6mCRvX<4vja zV{1(XFa%}mndG5Nc}2Y0Zmf(qxK`4e1l|66o%(9hT0oih&1DXyDhpj2XFkAiu0efW z*C(o30}ayQ^juWRdqt!{D9XSN%nq6_@>-ubKCy(=v;SUn7#D|H~y2Rgg(r60n17OtW3HaOT$6(SjEyo_=854D@(+akX&tdGK`PIPUn!&+w;r;~f%_-oC@k|9iacLGl z^;|v*`5kC}i&?K#YAg$ow$_LU1_c3;`G}vOex%4bIk_^qTbp|*xi~s~`Ey1dr84U9 zgBhhm^H@-;OOz;|Rt$nsU6FuJ*r(Z!TFb?5l#}%GZjIvWS59b!^)O3!i?h2XM#{1l zH<5A#$r}{%suBwkOx!mC-|-Y29z_gt75eNgcn{BZFF);!1~kCSi#aL^4KM+LxRc8o zh1+|V()o*hOOQd8z4YgTCYV%8OAxTA!V4TsRu_{_z4OV`DXi@Qz>wxdfi2SgtUImZm)q6ASs(DuvoHt`hp z^bZp|1xCKPg+72`32p5Bh(&%%w0XiUivZh%vGjr}i7|R{R0)Lfnk=xrQ8C=m4JWEO z4GfVy-oAR8a4Z~s5}iA|qugBXz>ch&u~|+DkPymVfyPb~vxZS80=N4odVS~C(?=+@ zNoMy&Dev3rhJ*7STR|zD(#I407llXvPm0e_6rSgp>z1TFd$6z}n0AgZA>9!)pU(Vn z2aJ%pY2sGdJbimK*N7kgdgb+j_f4RXux$$mmGz$=C_w=mjx)?C{*v1tS-TKu`pcCh zI<47C#kJC|+t`%U?nS5-NOQByh=9I$#h_Rm_Pt` zq%dSZl&B5(R6vc%l{dzk+!G>S1{Q^^IJkpM`q`VAw%~gmJWd1Zf$n>^uxiHaW9zf0 zrpk|?L8T-eZxmVCIrYPUu&n68d0E18uzoX6O3C7DM=Vup1xq%fCbD<66dlTGbVHLu zw1#nu>^08h+D1PRJzew9$j?G1@C3=L1nqV>sLd9DT{H;hPa|jGK5SVzoqJm#an+O~ zh$E~XChih(!6W3ADo!RM+JccU1KxE}UW;%qGKI9MmP~1}u3b6|jdb`g2D{2+9G}7k zugumj=(?wUv9w_(E zQek8Od@I+#`DqzysIpjtP`qF+4%n2L*IwhTcIyeVs|YZimqgoVxjwRhpAk0W`e6tP z4ek2n#8b7V#Bxp;a1nVP7A)(Ms%$VHTO0@ElN>+axlY>dOckkvd5T#d6yLzQZEh}c zOFor+hnvgwkv8y7yD(bbCUJpWFUrj`z&R`hP~vDSGZxUh_exk#J0@I+Zi`9+o%xPeH!aB8;2%9;Hg+R8hA|KB`E*waXj6vq!8 z(_ByXLJkVB?IXeXxdHu*)cdp`w5$q!g{#nsmPK5-JO&xM-A}tY1bf3PpVYQ7Vv>H zAu;NLP4K$4#Uf~!m^@I(Wj;ByAV4Qkg$n@bb|geq8er9@P}~Bv>y6#sT<7D#@o3kt z8-2zh73|H41UCE6X&qP5BbCrW6dOE2m8DJjn%Ya@h1A)MCc*7tc{00dI0Sl`(o!H5*4^gYM)3Dv$U4Slf;@RwmmL|_l0qs^iCV}K!3?we=KN>}pM}MY<-I@c zRrv1KAM6pRYs*NmNbf{_l2#b}y1!c<>A|s4>GzVWK>9BF3wT6M7<Rzd}mNF1`rGoC=i&B7E+Mq`jNLJ$p7*_ z!hvFeeU|~Yz=6txA!`3Km>&KEkE!#A&;sMu{iku`V_F3No}K^s!vD7j=_MMQkOR39 zKv4+(J*WI%6ocUhiU=5l@bL=&JvRAY)V9fA)YKo;pVN~z2oR7V^#4VfTK`3nAbz0! zJx}>xl%4}n84;9?;7_)-o)KL?(nfbxT>Una)hWBz?apfc)*5VBqY?NLF=3I5sx9~l$I qABS8h|Bm~(g1-h diff --git a/workshops/Workshop Maven.docx b/workshops/Workshop Maven.docx new file mode 100644 index 0000000000000000000000000000000000000000..1663454f77cce0ecdf0dd6549949c8f5d9991823 GIT binary patch literal 271863 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%0Dov5{ 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�CF5g3In79(b> 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

&w%jp?uG?0b!%c-p-O>(Kdr{^S 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

Dh40;dVF@v|+8YP7==Uq5oqwIW9-}oT+anGQLh} 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�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 From a11f107b993e5e6834085f902c7920f2f3e6b739 Mon Sep 17 00:00:00 2001 From: oana-p Date: Thu, 30 Oct 2014 11:57:06 -0700 Subject: [PATCH 2/9] collections workshop --- .../warm-up-workshop/warm-up/pom.xml | 19 +++ .../java/exercise/exercise0/Exercise0.java | 55 +++++++ .../java/exercise/exercise1/Exercise1.java | 94 +++++++++++ .../main/java/exercise/exercise2/MyList.java | 127 ++++++++++++++ .../java/exercise/exercise3/Exercise3.java | 42 +++++ .../warm-up/src/test/java/Exercise1Test.java | 53 ++++++ .../warm-up/src/test/java/Exercise2Test.java | 155 ++++++++++++++++++ .../warm-up/src/test/java/Exercise3Test.java | 25 +++ .../exercise/exercise0/Exercise0.class | Bin 0 -> 1946 bytes .../exercise/exercise1/Exercise1.class | Bin 0 -> 2524 bytes .../classes/exercise/exercise2/MyList.class | Bin 0 -> 2543 bytes .../exercise/exercise3/Exercise3.class | Bin 0 -> 718 bytes .../target/test-classes/Exercise1Test.class | Bin 0 -> 2443 bytes .../target/test-classes/Exercise2Test.class | Bin 0 -> 3872 bytes .../target/test-classes/Exercise3Test.class | Bin 0 -> 1053 bytes .../warm-up-workshop/warm-up/warm-up.iml | 18 ++ .../Collections/~$llections Workshop.docx | Bin 0 -> 162 bytes 17 files changed, 588 insertions(+) create mode 100644 workshops/Collections/warm-up-workshop/warm-up/pom.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise0/Exercise0.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise1/Exercise1.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise2/MyList.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise1Test.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise2Test.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise3Test.java create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise2/MyList.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise2Test.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise3Test.class create mode 100644 workshops/Collections/warm-up-workshop/warm-up/warm-up.iml create mode 100644 workshops/Collections/~$llections Workshop.docx diff --git a/workshops/Collections/warm-up-workshop/warm-up/pom.xml b/workshops/Collections/warm-up-workshop/warm-up/pom.xml new file mode 100644 index 0000000..2ccc729 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/pom.xml @@ -0,0 +1,19 @@ + + + 4.0.0 + + groupId + warm-up + 1.0-SNAPSHOT + + + + junit + junit + 4.11 + + + + \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise0/Exercise0.java b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise0/Exercise0.java new file mode 100644 index 0000000..642a4e7 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise0/Exercise0.java @@ -0,0 +1,55 @@ +package exercise.exercise0; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + * + * Exercise 0: Create a List (ArrayList or LinkedList), add elements to it and print all of them using ListIterator + * for loop and foreach loop + * + */ +import java.util.*; +public class Exercise0 { + + public Exercise0(){ + + } + + public void iterateThroughList(){ + + // TODO Exercise #0 a) Create a list (ArrayList or LinkedList) and add elements to it + + ArrayList arrayList = new ArrayList(); + + arrayList.add(3); + arrayList.add(7); + arrayList.add(11); + + // TODO Exercise #0 a) Don't forget to specify the type of the list (Integer, String etc.) + + // TODO Exercise #0 b) Iterate through the list using ListIterator and print all its elements + + ListIterator it = arrayList.listIterator(); + + while(it.hasNext()) + System.out.print(it.next() + " "); + // TODO Exercise #0 c) Iterate through the list using for loop and print all its elements + + System.out.println(); + for(int i = 0; i < arrayList.size(); i++) + { + System.out.print((Integer)arrayList.get(i) + " "); + } + // TODO Exercise #0 d) Iterate through the list using foreach loop and print all its elements + System.out.println(); + for(Integer i : arrayList) + { + System.out.print(i + " "); + } + } + + public static void main(String[] args) { + // TODO Exercise #0 e) Create a new instance of Exercise0 class and call the iterateThroughList() method + + (new Exercise0()).iterateThroughList(); + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise1/Exercise1.java b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise1/Exercise1.java new file mode 100644 index 0000000..97d5eff --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise1/Exercise1.java @@ -0,0 +1,94 @@ +package exercise.exercise1; + +import java.util.ArrayList; +import java.util.List; +import java.util.ListIterator; + +/** + * Created by Radu.Hoaghe on 10/28/2014. + * + * Exercise 1: Compute the sum, the minimum and the maximum element from a given list (givenList) using three + * different ways to iterate over a List: + * a) ListIterator (implement it in the iterateUsingListIterator() method) + * b) for loop (implement it in the iterateUsingForLoop() method) + * c) foreach loop (implement it in the iterateUsingForEachLoop() method) + * + * In order to test your implementations you need to run the Exercise1Test from the test/java package + * (right-click on Exercise1Test class then click Run 'Exercise1Test' ) + */ +public class Exercise1{ + private List givenList; + + public Exercise1(List l) { + + this.givenList = l; + } + + // TODO Exercise #1 a) Compute sum and get the min and the max from list iterating through it using ListIterator + public List iterateUsingListIterator(){ + + // This List is used only for testing so you don't need to modify it + List testValues = new ArrayList(); + // TODO Exercise #1 a1) In order to pass the tests you need to name your variables sum, min and max or if + // TODO Exercise #1 a1) you want to name them differently you need to modify when you add them to testValues + + // Adding the results to the List in order to be tested + Integer sum =0, min = Integer.MAX_VALUE, max = Integer.MIN_VALUE, element; + ListIterator it = givenList.listIterator(); + while(it.hasNext()) { + + element = it.next(); + sum += element; + max = (element > max) ? element : max; + min = (element < min) ? element : min; + } + testValues.add(sum); + testValues.add(min); + testValues.add(max); + + return testValues; + } + + // TODO Exercise #0 b) Compute sum and get the min and the max from list iterating through it using for loop + public List iterateUsingForLoop(){ + + // This List is used only for testing so you don't need to modify it + List testValues = new ArrayList(); + + // Adding the results to the List in order to be tested + Integer sum = 0, min = Integer.MAX_VALUE, max = Integer.MIN_VALUE; + + for (int i = 0; i < givenList.size(); i++) { + + sum += (Integer) givenList.get(i); + max = ((Integer) givenList.get(i) > max) ? (Integer) givenList.get(i) : max; + min = ((Integer) givenList.get(i) < min) ? (Integer) givenList.get(i) : min; + } + testValues.add(sum); + testValues.add(min); + testValues.add(max); + + return testValues; + } + + // TODO Exercise #0 c) Compute sum and get the min and the max from list iterating through it using foreach loop + public List iterateUsingForEachLoop(){ + + // This List is used only for testing so you don't need to modify it + List testValues = new ArrayList(); + Integer sum = 0, min = Integer.MAX_VALUE, max = Integer.MIN_VALUE; + + for (Integer element : givenList) { + + sum += element; + max = (element > max) ? element : max; + min = (element < min) ? element : min; + } + // Adding the results to the List in order to be tested + testValues.add(sum); + testValues.add(min); + testValues.add(max); + + return testValues; + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise2/MyList.java b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise2/MyList.java new file mode 100644 index 0000000..3eab5f0 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise2/MyList.java @@ -0,0 +1,127 @@ +package exercise.exercise2; + +import java.util.ArrayList; +import java.util.Collection; + +/** + * Created by Radu.Hoaghe on 28.10.2014. + * + * Exercise 2: Create a class that inherits ArrayList (class MyList). + * + * This list (MyList) should have the following functionality, besides the functionality + * that ArrayList already offers: it should retain in every moment how many different + * elements exist in the list. + * + * Examples: 1. If you have a List that contains: 7 5 3 2 4 1, there are 6 different elements. + * 2. If you have a List that contains: 5 6 1 2 5 6, there are 4 different elements. + * + * A variable that retains the number of different elements that exist in the list in + * every moment was already defined (differentElements). + * + * First of all, you will need to override the add methods so that every time a different + * element is added the counter will be updated. + * Hint : check out the List documentation to see the methods signatures. + * + * Secondly, you will also need to override the remove methods (Hint: Of course the List + * documentation) because the number of different elements in the list could change if + * the last element of its kind in the list is removed and by not overrriding it the + * counter will remain unchanged. + * + * Finally, you will need to override the clear method and create a getter method for the + * counter (in order to access it outside the class). + * + * In order to add/remove/clear the elements into/from the list you will need to use the + * add/remove/clear methods inherited from ArrayList. + * + * To test your implementation run the Exercise2Test class. + * + */ +public class MyList extends ArrayList { + + public int getDifferentElements() { + return differentElements; + } + + // A counter to hold the number of adds that were made on the list + private int differentElements; + + public MyList(){ + + super(); + differentElements = 0; + } + + // TODO Exercise #2 a) Override add() and addAll() methods so that the list should retain the number of + + + public boolean add(Integer element) { + if(!this.contains((Integer)element)) + differentElements++; + return super.add((Integer)element); + } + + @Override + public void add(int index, Integer e) { + + if(!this.contains((Integer)e)) + differentElements++; + super.add(index, (Integer)e); + } + + @Override + public boolean addAll(int index, Collection c) { + + for(Integer element: c) { + this.add(index, element); + index++; + } + + return true; + } + @Override + public boolean addAll(Collection c) { + + for(Integer element: c) { + if(!this.add(element)) + return false; + } + return true; + } + // TODO Exercise #2 a) different elements + + // TODO Exercise #2 b) Override the remove methods so that the number of different elements is updated when + + @Override + public boolean remove(Object o) { + + boolean res = super.remove(o); + if (res && !this.contains((Integer)o)) + differentElements--; + return res; + } + + @Override + public Integer remove(int index) { + + + Integer res = super.remove(index); + if (!this.contains(res)) + differentElements--; + return res; + } + + @Override + public void clear() { + super.clear(); + differentElements = 0; + } + + + // TODO Exercise #2 b) an element is removed + // TODO Exercise #2 b) hint: you need to update the number of different elements only when + // TODO Exercise #2 b) the element that needs to be removed is the last element of its kind in the list + + // TODO Exercise #2 c) Override the clear method and reset the number of different elements + + // TODO Exercise #2 d) Generate a getter method in order to get the counter value +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java new file mode 100644 index 0000000..4f68c42 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java @@ -0,0 +1,42 @@ +package exercise.exercise3; + +import java.util.List; + +/** + * Created by Radu.Hoaghe on 10/28/2014. + * + * Exercise 3: Fill three Set implementations that you know (Hint: they were described during + * the earlier presentation) with the List that is given to this class by + * its constructor. + * + * Check out the elements that the list mentioned above contains and then, add them + * to your three Sets. After this check out the elements of your Sets. What do you + * remark? What could be the reason? + * + * Finally, add to the one of the three Sets some elements + * that already exist in the Set (e.g add("that") and add("collection")) + * + * To run your implementation, run the Exercise3Test class. + */ +public class Exercise3 { + + // List containing some elements that need to be added into the Set + private List listToAdd; + + public Exercise3(List l) { + listToAdd = l; + } + + public void addElementsToSets(){ + + System.out.println("The elements that will be added to the Sets: "); + // TODO Exercise #3 a) Check the content of the elements you will add into the Set + + // TODO Exercise #3 b) add the elements from listToAdd to the Sets + + // TODO Exercise #3 c) Check the content of the Sets + + // TODO Exercise #3 d) Add to the TreeSet two elements that already exist in the Set + // TODO Exercise #3 d) and print again the TreeSet. What do you see? + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise1Test.java b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise1Test.java new file mode 100644 index 0000000..3f7cf75 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise1Test.java @@ -0,0 +1,53 @@ +import exercise.exercise1.Exercise1; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + */ +public class Exercise1Test { + private Integer[] v = {15, 5, 34, 23, 7, 19, 20, 22, 78, 39, 8, 30, 27, 62, 28, 7}; + private List listToTest; + private List expected; + + private Exercise1 ex1; + + @Before + public void setUp() throws Exception { + listToTest = Arrays.asList(v); + ex1 = new Exercise1(listToTest); + expected = new ArrayList(); + expected.add(424); // sum + expected.add(5); // min + expected.add(78); // max + } + + @Test + public void testIterator() throws Exception { + List testResults = ex1.iterateUsingListIterator(); + Assert.assertEquals("Test sum with iterator", expected.get(0), testResults.get(0)); + Assert.assertEquals("Test min with iterator", expected.get(1), testResults.get(1)); + Assert.assertEquals("Test max with iterator", expected.get(2), testResults.get(2)); + } + + @Test + public void testFor() throws Exception { + List testResults = ex1.iterateUsingForLoop(); + Assert.assertEquals("Test sum with for", expected.get(0), testResults.get(0)); + Assert.assertEquals("Test min with for", expected.get(1), testResults.get(1)); + Assert.assertEquals("Test max with for", expected.get(2), testResults.get(2)); + } + + @Test + public void testForEach() throws Exception { + List testResults = ex1.iterateUsingForEachLoop(); + Assert.assertEquals("Test sum with foreach", expected.get(0), testResults.get(0)); + Assert.assertEquals("Test min with foreach", expected.get(1), testResults.get(1)); + Assert.assertEquals("Test max with foreach", expected.get(2), testResults.get(2)); + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise2Test.java b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise2Test.java new file mode 100644 index 0000000..fb0317b --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise2Test.java @@ -0,0 +1,155 @@ +import exercise.exercise2.MyList; +import junit.framework.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.Arrays; + + +public class Exercise2Test { + private MyList listToTest; + private int addExpectedTest1, addExpectedTest2; + private int insertExpectedTest1; + private int removeExpectedTest1, removeExpectedTest2; + private int addAllExpectedTest1, addAllExpectedTest2; + private Integer[] v = new Integer[5]; + + @Before + public void setUp() throws Exception { + listToTest = new MyList(); + addExpectedTest1 = 10; + addExpectedTest2 = 11; + insertExpectedTest1 = 13; + addAllExpectedTest1 = 10; + addAllExpectedTest2 = 13; + removeExpectedTest1 = 8; + removeExpectedTest2 = 8; + } + + @Test + public void testAdd() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + Assert.assertEquals("Test add method with all different elements", addExpectedTest1, listToTest.getDifferentElements()); + + listToTest.add(5); + listToTest.add(3); + listToTest.add(11); + listToTest.add(8); + + Assert.assertEquals("Test add method with some equal elements", addExpectedTest2, listToTest.getDifferentElements()); + } + + @Test + public void testAddAtIndex() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + listToTest.add(8, 11); + listToTest.add(5, 12); + listToTest.add(3, 13); + + Assert.assertEquals("Test insert different elements", insertExpectedTest1, listToTest.getDifferentElements()); + + listToTest.add(7, 8); + listToTest.add(4, 4); + listToTest.add(5, 12); + + Assert.assertEquals("Test insert equal elements", insertExpectedTest1, listToTest.getDifferentElements()); + + } + + @Test + public void testAddAll() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + for(int i = 0; i < 5; i++) + v[i] = i; + + listToTest.addAll(Arrays.asList(v)); + Assert.assertEquals("Test addAll with all equal elements", addAllExpectedTest1, listToTest.getDifferentElements()); + + for(int i = 0; i < 5; i++) + v[i] = 5 * i; + + listToTest.addAll(Arrays.asList(v)); + Assert.assertEquals("Test addAll with all some different elements", addAllExpectedTest2, listToTest.getDifferentElements()); + + } + + @Test + public void testAddAllAtIndex() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + for(int i = 0; i < 5; i++) + v[i] = i; + + listToTest.addAll(5, Arrays.asList(v)); + Assert.assertEquals("Test addAll with all equal elements", addAllExpectedTest1, listToTest.getDifferentElements()); + + for(int i = 0; i < 5; i++) + v[i] = 5 * i; + + listToTest.addAll(10, Arrays.asList(v)); + Assert.assertEquals("Test addAll with some different elements", addAllExpectedTest2, listToTest.getDifferentElements()); + + } + + @Test + public void testRemove() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + listToTest.remove(5); + listToTest.remove(3); + + Assert.assertEquals("Test remove elements with 1 occurence", removeExpectedTest1, listToTest.getDifferentElements()); + + listToTest.add(7); + listToTest.add(7); + listToTest.remove(5); + + Assert.assertEquals("Test remove element with 3 occurences", removeExpectedTest2, listToTest.getDifferentElements()); + + } + + @Test + public void testRemoveObject() throws Exception { + listToTest.clear(); + Assert.assertEquals("Test clear method", 0, listToTest.getDifferentElements()); + + for(int i = 0; i < 10; i++) + listToTest.add(i); + + listToTest.remove((Integer) 5); + listToTest.remove((Integer) 3); + + Assert.assertEquals("Test remove elements with 1 occurence", removeExpectedTest1, listToTest.getDifferentElements()); + + listToTest.add(7); + listToTest.add(7); + listToTest.remove((Integer) 7); + + Assert.assertEquals("Test remove element with 3 occurences", removeExpectedTest2, listToTest.getDifferentElements()); + + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise3Test.java b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise3Test.java new file mode 100644 index 0000000..5fd7b7e --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/src/test/java/Exercise3Test.java @@ -0,0 +1,25 @@ +import exercise.exercise3.Exercise3; +import org.junit.Before; +import org.junit.Test; + +import java.util.Arrays; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + */ +public class Exercise3Test { + private Exercise3 exercise3; + private String[] stringsToAddToSet = {"A", "collection", "that", "contains", "no", "duplicate", "elements", "."}; + + @Before + public void setUp() throws Exception { + exercise3 = new Exercise3(Arrays.asList(stringsToAddToSet)); + + } + + @Test + public void testExercise3() throws Exception { + exercise3.addElementsToSets(); + + } +} diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class new file mode 100644 index 0000000000000000000000000000000000000000..0f75b445b8763a943ffdc812f3d72ead1051b38e GIT binary patch literal 1946 zcmaJ>OLH4V5dKDzy?U(UxBQ450+?V~mgQgq#4;vv9w3nIfQ>^OUTbM0uOmxhwMxaD zbK=B>1BYC4NpXaOLU0vOMHN(Wq>2N7B^3zY>}sV|%5d18p6UL&d%o_S-~ajHM*s`3 zqBxF44VfqcSd3x_OGSCTmO$u2r62`*b7ont)%SO# zwQ1~>cruWy*JPg^pW=-HkPTrPQ-mJ;Ar_84>HIL>q1e>8ul?qHGbvvWx>a%COJn zym##2nPSvuRPMeQ@y`1kRJ}XR_%N-2OYUJujmylE@;Unx{Fi^vhHd0;t{PQ`K=xe2 zriS;)`@Uh81>)1!eVI0F%Pbc&PG1bGNTvsmFbhOCDs?L_FPo}S$6CbCDPDC-Yqp3XHTH+gK!#b+?%(?l5H!?@fj*jP5^?hyp`p%xrv$gT| zh5W>G*4hTI-2&Pzqg0pcHx$F!gpcC(zy*y0uQNRDGrGAliERPB@#$s|hf#k4 z913mMsIAG{ERz2evA*gz4r;dCr=e1(xjDOLC4GgBw#l(H_8A~lcF;p!5@+n1#qf_c zs#RHLt*N7G^_AbzGc~M!e{Z(_$3JXWTrd8J9i=p}-c)tgFVIz0w|R<7FCX6+&9Rp_ z?xC9bIY*W>@f`>jr332dPwUoU_X(+3s)c^?y(VYyEFZPwd{TiRgc^Iw6WlFu6EhXMhX`DIfM71!{XIerbX`sM zX)P`0X$^F*&OU@D@HM8sL--I8qM|&C2{fP&^fYj+f!+rC?mzj94h{4NmnV}A4BSJa z4ML zA0hP^Q4I@^Xpi7!oN-%)vqY#~#||+{(#IMYf4bvm*!fp{9glJMDj@=|Q3i1KUxu;N A!~g&Q literal 0 HcmV?d00001 diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class new file mode 100644 index 0000000000000000000000000000000000000000..8a6d03013336340247861707d58502a0de058da8 GIT binary patch literal 2524 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 F{0H6iyZQhC literal 0 HcmV?d00001 diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class new file mode 100644 index 0000000000000000000000000000000000000000..102d76f93b33db2c649d29b4bd91ecf57dfdda67 GIT binary patch literal 718 zcmZuvO>fgc5Ph43x;7?l6T(Lu$`%SVMc_jYNTjNSPi#6PKv5lQ|^gZ0cu7kS{q=0L5 zZpZ11I2PCp&(u2=6jqxcWO&5Kk)9{Y78wcbUphWoo2I$=6fW}-4(<~7)|3!Mw>hV+55na(LV-wcD3 z8X9s_VFb2R9G@6kQeyLQ8j)pU^PueMMQM@E=v0?|+JAUY%j^2^(etqm*TJ5Td$=#~ zWV|3rwUo3AW#xNqjGU6>9u!NPGD@=S@mxCC_wfJ^1^Va1{clS4x3ahL>-F@EX7&OU zeatN_dE~UHq$f!32B!033c00*&&j zyn389aFsv74qW5dX5^If2Cv@XH;BW>U(one)opNWqseg_E$pyDADf)rSXE;S9nP4C sZlx}89lcufS=9q@Kcm@ceZ`f(l3qoZJkp?&^O?ehwVYu2a>$#%0ahZQG5`Po literal 0 HcmV?d00001 diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class b/workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class new file mode 100644 index 0000000000000000000000000000000000000000..efcaba232d23c7aa218d061c5f8c43932f6600d3 GIT binary patch literal 2443 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 AR{#J2 literal 0 HcmV?d00001 diff --git a/workshops/Collections/warm-up-workshop/warm-up/warm-up.iml b/workshops/Collections/warm-up-workshop/warm-up/warm-up.iml new file mode 100644 index 0000000..e1b5c99 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/warm-up.iml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/workshops/Collections/~$llections Workshop.docx b/workshops/Collections/~$llections Workshop.docx new file mode 100644 index 0000000000000000000000000000000000000000..eaa1c6c76b3d6fae7c081503374d2d4208b975f6 GIT binary patch literal 162 zcmd;0%1=*8%u^^X$ Date: Thu, 30 Oct 2014 12:42:13 -0700 Subject: [PATCH 3/9] add hash set exercises --- .../java/exercise/exercise3/Exercise3.java | 21 +++++++++++++++++- .../exercise/exercise3/Exercise3.class | Bin 718 -> 1702 bytes 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java index 4f68c42..07dfebc 100644 --- a/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java +++ b/workshops/Collections/warm-up-workshop/warm-up/src/main/java/exercise/exercise3/Exercise3.java @@ -1,6 +1,6 @@ package exercise.exercise3; -import java.util.List; +import java.util.*; /** * Created by Radu.Hoaghe on 10/28/2014. @@ -32,6 +32,25 @@ public void addElementsToSets(){ System.out.println("The elements that will be added to the Sets: "); // TODO Exercise #3 a) Check the content of the elements you will add into the Set + Set hashSet, linkedHashSet; + SortedSet treeSet; + System.out.print(listToAdd); + + hashSet = new HashSet(); + linkedHashSet = new LinkedHashSet(); + treeSet = new TreeSet(); + + + hashSet.addAll(listToAdd); + linkedHashSet.addAll(listToAdd); + treeSet.addAll(listToAdd); + + treeSet.add("duplicate"); + + System.out.println("\n hashSet " + hashSet); + System.out.println("linkedHashSet " + linkedHashSet); + System.out.println("treeSet " + treeSet); + // TODO Exercise #3 b) add the elements from listToAdd to the Sets // TODO Exercise #3 c) Check the content of the Sets diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class index 102d76f93b33db2c649d29b4bd91ecf57dfdda67..cbebdd7e1d45d8d6c314fe9a4ca516a7ebc7abab 100644 GIT binary patch literal 1702 zcmaJ??Q+{h6g_LZk*z3cwOyL<1sckjoM^zVOv{{x_k?{ySV&EXub=kOkG zWbwX^5AdN{ZfdCM&`{N|sw1c5M>?iaoyHn&P2*$S%3@u~+Zr}>%%Pga9VIu_vZa+d*|ogA zN+akw-d=5uE>o+H=LBm4^Tk6BwZ$EQ%!Y3>*vY!%$?ZXBSN59Lu1ih6?zb#=$Lcxi z94j+H+vy8jsLP*ZujTY*WwfbQHe*$lmkL*4&a&-IS9YWq^qYP|26Rjp)ty?~>bI#- z*G@{Lf}S(3zxCds?wgU4<$92tJX|g%eHUpnp zX|j<1O;f`I0}t`JfiKWt|0b;&cjN3t$AKmLlt4G5j%jEb_!2uB9+5cqpzAs+PBtH=% z4%wqDLi^05ts&K>IGuHu96pzPXEuD-W!{eO)fS(Ok_q3=#)vm8fUd_}M4u_E+m#*x z<)boI8LN07=U z*NfC_@tmU6OD`ZwOMfBtdx*Qlbrxx^1!Nc@#~7D+T8PlNg1300AKnh53%rA36jQ9x zFGJgJe;}RD3~_?8^e0k7OzlH^`~unfK5~@${e4VR8rw_C{t`1OJX)S?%h7h0+H(Hn zOPu0{vGy@Xr+j{Xh|^0$oEc&vx@2THOT+R}hSz8)j}5BQG*qQGFvHbEmR03hNrAOo z!Xipo=1-x_FZ>Gb;VPQAh7SK4zu-E4#cJ4*QdDc)kpgYXPtgBoEOD3O^NexIylW-A XCC&H>RT-lyW7Jim1l}bsg=?<>ZJeVJ delta 276 zcmYL@y-q?w5QV?p3oLhC5K%yW6eXvr}7oX From 20c50e274d83fc7357956ef9acea53f2df77968a Mon Sep 17 00:00:00 2001 From: oana-p Date: Fri, 31 Oct 2014 15:18:49 -0700 Subject: [PATCH 4/9] index --- exercises/HelloWorldMain/.idea/.name | 1 + exercises/HelloWorldMain/.idea/compiler.xml | 30 + .../.idea/copyright/profiles_settings.xml | 3 + exercises/HelloWorldMain/.idea/encodings.xml | 5 + .../libraries/Maven__junit_junit_4_11.xml | 13 + .../libraries/Maven__log4j_log4j_1_2_17.xml | 13 + .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 + exercises/HelloWorldMain/.idea/misc.xml | 18 + exercises/HelloWorldMain/.idea/modules.xml | 9 + .../.idea/scopes/scope_settings.xml | 5 + exercises/HelloWorldMain/.idea/vcs.xml | 7 + exercises/HelloWorldMain/.idea/workspace.xml | 858 ++++++++++++ exercises/helloworld-extend/.idea/.name | 1 + .../helloworld-extend/.idea/compiler.xml | 30 + .../.idea/copyright/profiles_settings.xml | 3 + .../helloworld-extend/.idea/encodings.xml | 5 + .../libraries/Maven__junit_junit_4_11.xml | 13 + .../libraries/Maven__log4j_log4j_1_2_17.xml | 13 + .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 + ...teamnet_zerotohero_helloworld_main_1_0.xml | 13 + exercises/helloworld-extend/.idea/misc.xml | 18 + .../helloworld-extend/.idea/modules.xml | 9 + .../.idea/scopes/scope_settings.xml | 5 + exercises/helloworld-extend/.idea/vcs.xml | 7 + .../helloworld-extend/.idea/workspace.xml | 600 ++++++++ .../warm-up-workshop/warm-up/.idea/.name | 1 + .../warm-up/.idea/compiler.xml | 30 + .../.idea/copyright/profiles_settings.xml | 3 + .../warm-up/.idea/encodings.xml | 5 + .../libraries/Maven__junit_junit_4_11.xml | 13 + .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 + .../warm-up-workshop/warm-up/.idea/misc.xml | 34 + .../warm-up/.idea/modules.xml | 9 + .../warm-up/.idea/scopes/scope_settings.xml | 5 + .../warm-up/.idea/uiDesigner.xml | 125 ++ .../warm-up-workshop/warm-up/.idea/vcs.xml | 7 + .../warm-up/.idea/workspace.xml | 1223 +++++++++++++++++ 37 files changed, 3173 insertions(+) create mode 100644 exercises/HelloWorldMain/.idea/.name create mode 100644 exercises/HelloWorldMain/.idea/compiler.xml create mode 100644 exercises/HelloWorldMain/.idea/copyright/profiles_settings.xml create mode 100644 exercises/HelloWorldMain/.idea/encodings.xml create mode 100644 exercises/HelloWorldMain/.idea/libraries/Maven__junit_junit_4_11.xml create mode 100644 exercises/HelloWorldMain/.idea/libraries/Maven__log4j_log4j_1_2_17.xml create mode 100644 exercises/HelloWorldMain/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 exercises/HelloWorldMain/.idea/misc.xml create mode 100644 exercises/HelloWorldMain/.idea/modules.xml create mode 100644 exercises/HelloWorldMain/.idea/scopes/scope_settings.xml create mode 100644 exercises/HelloWorldMain/.idea/vcs.xml create mode 100644 exercises/HelloWorldMain/.idea/workspace.xml create mode 100644 exercises/helloworld-extend/.idea/.name create mode 100644 exercises/helloworld-extend/.idea/compiler.xml create mode 100644 exercises/helloworld-extend/.idea/copyright/profiles_settings.xml create mode 100644 exercises/helloworld-extend/.idea/encodings.xml create mode 100644 exercises/helloworld-extend/.idea/libraries/Maven__junit_junit_4_11.xml create mode 100644 exercises/helloworld-extend/.idea/libraries/Maven__log4j_log4j_1_2_17.xml create mode 100644 exercises/helloworld-extend/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 exercises/helloworld-extend/.idea/libraries/Maven__ro_teamnet_zerotohero_helloworld_main_1_0.xml create mode 100644 exercises/helloworld-extend/.idea/misc.xml create mode 100644 exercises/helloworld-extend/.idea/modules.xml create mode 100644 exercises/helloworld-extend/.idea/scopes/scope_settings.xml create mode 100644 exercises/helloworld-extend/.idea/vcs.xml create mode 100644 exercises/helloworld-extend/.idea/workspace.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/.name create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml create mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml diff --git a/ exercises/HelloWorldMain/.idea/.name b/ exercises/HelloWorldMain/.idea/.name new file mode 100644 index 0000000..e995cb6 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/.name @@ -0,0 +1 @@ +HelloWorldMain \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/compiler.xml b/ exercises/HelloWorldMain/.idea/compiler.xml new file mode 100644 index 0000000..a718c43 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/compiler.xml @@ -0,0 +1,30 @@ + + + + + + diff --git a/ exercises/HelloWorldMain/.idea/copyright/profiles_settings.xml b/ exercises/HelloWorldMain/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/encodings.xml b/ exercises/HelloWorldMain/.idea/encodings.xml new file mode 100644 index 0000000..e206d70 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/encodings.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ exercises/HelloWorldMain/.idea/libraries/Maven__junit_junit_4_11.xml b/ exercises/HelloWorldMain/.idea/libraries/Maven__junit_junit_4_11.xml new file mode 100644 index 0000000..f33320d --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/libraries/Maven__junit_junit_4_11.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/libraries/Maven__log4j_log4j_1_2_17.xml b/ exercises/HelloWorldMain/.idea/libraries/Maven__log4j_log4j_1_2_17.xml new file mode 100644 index 0000000..e383c1b --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/libraries/Maven__log4j_log4j_1_2_17.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/ exercises/HelloWorldMain/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..f58bbc1 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/misc.xml b/ exercises/HelloWorldMain/.idea/misc.xml new file mode 100644 index 0000000..7a23553 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/misc.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/ exercises/HelloWorldMain/.idea/modules.xml b/ exercises/HelloWorldMain/.idea/modules.xml new file mode 100644 index 0000000..c7fabe5 --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/ exercises/HelloWorldMain/.idea/scopes/scope_settings.xml b/ exercises/HelloWorldMain/.idea/scopes/scope_settings.xml new file mode 100644 index 0000000..922003b --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/ exercises/HelloWorldMain/.idea/vcs.xml b/ exercises/HelloWorldMain/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ exercises/HelloWorldMain/.idea/workspace.xml b/ exercises/HelloWorldMain/.idea/workspace.xml new file mode 100644 index 0000000..20d839c --- /dev/null +++ b/ exercises/HelloWorldMain/.idea/workspace.xml @@ -0,0 +1,858 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + + + + 1414620582002 + 1414620582002 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ exercises/helloworld-extend/.idea/.name b/ exercises/helloworld-extend/.idea/.name new file mode 100644 index 0000000..b5341e8 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/.name @@ -0,0 +1 @@ +helloworld-extend \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/compiler.xml b/ exercises/helloworld-extend/.idea/compiler.xml new file mode 100644 index 0000000..2d836f0 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/compiler.xml @@ -0,0 +1,30 @@ + + + + + + diff --git a/ exercises/helloworld-extend/.idea/copyright/profiles_settings.xml b/ exercises/helloworld-extend/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/encodings.xml b/ exercises/helloworld-extend/.idea/encodings.xml new file mode 100644 index 0000000..e206d70 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/encodings.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ exercises/helloworld-extend/.idea/libraries/Maven__junit_junit_4_11.xml b/ exercises/helloworld-extend/.idea/libraries/Maven__junit_junit_4_11.xml new file mode 100644 index 0000000..f33320d --- /dev/null +++ b/ exercises/helloworld-extend/.idea/libraries/Maven__junit_junit_4_11.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/libraries/Maven__log4j_log4j_1_2_17.xml b/ exercises/helloworld-extend/.idea/libraries/Maven__log4j_log4j_1_2_17.xml new file mode 100644 index 0000000..e383c1b --- /dev/null +++ b/ exercises/helloworld-extend/.idea/libraries/Maven__log4j_log4j_1_2_17.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/ exercises/helloworld-extend/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..f58bbc1 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/libraries/Maven__ro_teamnet_zerotohero_helloworld_main_1_0.xml b/ exercises/helloworld-extend/.idea/libraries/Maven__ro_teamnet_zerotohero_helloworld_main_1_0.xml new file mode 100644 index 0000000..f62c2b9 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/libraries/Maven__ro_teamnet_zerotohero_helloworld_main_1_0.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/misc.xml b/ exercises/helloworld-extend/.idea/misc.xml new file mode 100644 index 0000000..bd33217 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/misc.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/ exercises/helloworld-extend/.idea/modules.xml b/ exercises/helloworld-extend/.idea/modules.xml new file mode 100644 index 0000000..e95e077 --- /dev/null +++ b/ exercises/helloworld-extend/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/ exercises/helloworld-extend/.idea/scopes/scope_settings.xml b/ exercises/helloworld-extend/.idea/scopes/scope_settings.xml new file mode 100644 index 0000000..922003b --- /dev/null +++ b/ exercises/helloworld-extend/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/ exercises/helloworld-extend/.idea/vcs.xml b/ exercises/helloworld-extend/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/ exercises/helloworld-extend/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ exercises/helloworld-extend/.idea/workspace.xml b/ exercises/helloworld-extend/.idea/workspace.xml new file mode 100644 index 0000000..7b0953c --- /dev/null +++ b/ exercises/helloworld-extend/.idea/workspace.xml @@ -0,0 +1,600 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + 1414628346670 + 1414628346670 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/.name b/workshops/Collections/warm-up-workshop/warm-up/.idea/.name new file mode 100644 index 0000000..a48d1bf --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/.name @@ -0,0 +1 @@ +warm-up \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml new file mode 100644 index 0000000..0654bf9 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml @@ -0,0 +1,30 @@ + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml new file mode 100644 index 0000000..e206d70 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml new file mode 100644 index 0000000..f33320d --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..f58bbc1 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml new file mode 100644 index 0000000..497218d --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + 1.8 + + + + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml new file mode 100644 index 0000000..97a367c --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml new file mode 100644 index 0000000..922003b --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml new file mode 100644 index 0000000..3b00020 --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml new file mode 100644 index 0000000..187ffcc --- /dev/null +++ b/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml @@ -0,0 +1,1223 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + + + + 1414505612656 + 1414505612656 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From f4d9dc2f41f0621168a9a49b2d9c9a8b529efe28 Mon Sep 17 00:00:00 2001 From: oana-p Date: Fri, 31 Oct 2014 16:15:00 -0700 Subject: [PATCH 5/9] added hashmap workshop exercises --- .../collections-workshop-part2.zip | Bin 37699 -> 0 bytes .../warm-up2/pom.xml | 19 ++ .../src/main/java/exercise0/Exercise0.java | 44 ++++ .../src/main/java/exercise1/Exercise1.java | 75 ++++++ .../src/main/java/exercise2/Exercise2.java | 46 ++++ .../src/main/java/exercise2/Student.java | 58 +++++ .../warm-up2/src/test/java/Exercise1Test.java | 159 +++++++++++++ .../warm-up2/src/test/java/Exercise2Test.java | 73 ++++++ .../warm-up2/warm-up2.iml | 18 ++ .../Collections/collections-workshop.zip | Bin 37179 -> 0 bytes .../warm-up/.idea/workspace.xml | 215 +++++++++--------- .../~$llections Workshop Day 2.docx | Bin 0 -> 162 bytes 12 files changed, 605 insertions(+), 102 deletions(-) delete mode 100644 workshops/Collections/collections-workshop-part2.zip create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/pom.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise0/Exercise0.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise1/Exercise1.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise1Test.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise2Test.java create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/warm-up2.iml delete mode 100644 workshops/Collections/collections-workshop.zip create mode 100644 workshops/Collections/~$llections Workshop Day 2.docx diff --git a/workshops/Collections/collections-workshop-part2.zip b/workshops/Collections/collections-workshop-part2.zip deleted file mode 100644 index 3f28f287bb0e673d2ce9ab46275fa2dccd7f4195..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37699 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 D2)?>Y diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/pom.xml b/workshops/Collections/collections-workshop-part2/warm-up2/pom.xml new file mode 100644 index 0000000..9913300 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/pom.xml @@ -0,0 +1,19 @@ + + + 4.0.0 + + warm-up2 + warm-up2 + 1.0-SNAPSHOT + + + + junit + junit + 4.11 + + + + \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise0/Exercise0.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise0/Exercise0.java new file mode 100644 index 0000000..b2f2b57 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise0/Exercise0.java @@ -0,0 +1,44 @@ +package exercise0; + +import java.util.HashMap; +import java.util.Set; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + * + * Exercise 0: Iterate over the keys of a Map using keySet method (this method returns a Set of all the map keys) + */ +public class Exercise0 { + + public Exercise0(){ + + } + + // TODO Exercise #0 a) iterate over a Map's keys using keySet method + public void iterateThroughMap(){ + + // TODO Exercise #0 b) Create a Map (HashMap) and add elements to it (using put() method) + + HashMap hashMap = new HashMap(); + + hashMap.put("mere", "Romania"); + hashMap.put("pere", "Italia"); + hashMap.put("gutui", "Romania"); + hashMap.put("kiwi", "Egipt"); + + // TODO Exercise #0 b) Don't forget to specify the types of the key and value when creating the Map + Set keys = hashMap.keySet(); + // TODO Exercise #0 c) Iterate over the Map using keySet() method and print all its elements + System.out.print("["); + for(String key : keys) + System.out.print(key + "=" + hashMap.get(key) + " "); + System.out.print("]"); + // TODO Exercise #0 c) The elements are printed like this: [key1=value1, key2=value2, ...] + + } + + public static void main(String[] args) { + Exercise0 exercise0 = new Exercise0(); + exercise0.iterateThroughMap(); + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise1/Exercise1.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise1/Exercise1.java new file mode 100644 index 0000000..9632b78 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise1/Exercise1.java @@ -0,0 +1,75 @@ +package exercise1; + +import java.util.*; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + * + * Exercise 1: You have a Map that holds in each element a country with its capital (countries Map) + * a) Find all the countries that start with 'R' character, iterating through the keys of the Map using + * keySet() method + * b) Find all the countries that start with 'R' character, iterating through the keys of the Map using + * Map.Entry, and convert all the characters of the countries found to lowercase + * c) Find the capital city with the longest name, iterating through the values of the Map (values() method) + * + */ +public class Exercise1 { + + // A map that holds some key-value pairs, the key represents the country and its value represents + // the capital city of the country + private Map countries; + + public Exercise1(Map countries){ + this.countries = countries; + } + + // TODO Exercise #1 a) You need to iterate over the map keys using a foreach loop (see Map.keySet()) + // TODO Exercise #1 a) and add the countries that start with 'R' character into the seekingCountries list + // TODO Exercise #1 a) hint: see String documentation + public List iteratingOverKeys(){ + + // The list of countries that start with the 'R' character + List seekingCountries = new ArrayList(); + Set keys = countries.keySet(); + + for( String key : keys) + if(key.startsWith("R")) + seekingCountries.add(key); + return seekingCountries; + } + + // TODO Exercise #1 b) You need to iterate over the map entries using a foreach loop (see Map.Entry) + // TODO Exercise #1 b) and convert to lowercase (hint: String documentation) all the countries that start with 'R' + // TODO Exercise #1 b) character into the seekingCountries list + public List iteratingOverEntries(){ + + // The list of countries that start with the 'R' character and will be converted to lowercase + List seekingCountries = new ArrayList(); + + for(Map.Entry entry : countries.entrySet()) + if (entry.getKey().startsWith("R")) + seekingCountries.add(entry.getKey().toLowerCase()); + + return seekingCountries; + } + + // TODO Exercise #1 c) You need to iterate over the map values using a foreach loop (see Map.values()) + // TODO Exercise #1 c) and find the capital city with the longest name + public String iteratingOverValues(){ + + // The country that has the capital city with the longest name + String seekingCapital = ""; + + + Collection values = countries.values(); + + int strlen = 0; + + for(String s : values) + if(s.length() > strlen) { + strlen = s.length(); + seekingCapital = s; + } + return seekingCapital; + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java new file mode 100644 index 0000000..b64e5d9 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java @@ -0,0 +1,46 @@ +package exercise2; + +import java.util.*; + +/** + * Created by Radu.Hoaghe on 10/30/2014. + * + * Exercise 2: Overriding equals() and hashCode() methods. + * Create a Set and a Map and add some elements to them before and after overriding equals() and hashCode() + * For this exercise you need to follow in order all the TODO steps. + */ +public class Exercise2 { + private List studentList; + private List cnps; + + public Exercise2(List studentList, List cnps){ + this.studentList = studentList; + this.cnps = cnps; + } + + public void addStudents(){ + + System.out.println("The list of students is: " + studentList); + + // TODO Exercise 2 a) Make a new Set, add the elements from the studentList into it + // TODO and print them (hint: notice the duplicate elements) + // TODO (hint: in order to print the elements of Student class in a human readable way you should override + // TODO the toString() method from Student class + + // TODO Exercise 2 b) Remove all elements from the Set using clear() method and go to TODO Exercise 2 c) from Student class + + // TODO Exercise 2 e) Add the elements from studentList into the Set after you finished the TODO Exercise 2 c) + // TODO from Student class. What do you notice? + + // TODO Exercise 2 f) Remove all elements from the Set using clear() method and go to TODO Exercise 2 g) from Student class + + // TODO Exercise 2 i) Add the elements from studentList into the Set after you finished the TODO Exercise 2 g) + // TODO from Student class. What do you notice this time? + + // TODO Exercise 2 j) Create a new Map so that it holds in the key all the Students from the + // TODO (Important !) Set you have just already created, and in the keys' value, the CNP of the Student found in cnps List + // TODO (suggestion: after you implement this, you could comment, firstly, the equals() method from Student class + // TODO and then the hashCode() method in order to see some differences). + + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java new file mode 100644 index 0000000..087ea84 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java @@ -0,0 +1,58 @@ +package exercise2; + +/** + * Created by Radu.Hoaghe on 31.10.2014. + */ +public class Student { + private final String firstName; + private final String lastName; + private final Double averageGrade; + + public Student(String firstName, String lastName, Double averageGrade) { + this.firstName = firstName; + this.lastName = lastName; + this.averageGrade = averageGrade; + } + + public String getFirstName() { + return firstName; + } + + public String getLastName() { + return lastName; + } + + public Double getAverageGrade() { + return averageGrade; + } + + // TODO Exercise 2 c) Override the equals() method + @Override + public boolean equals(Object o) { + // TODO Exercise 2 c1) Check if the current instance is the same instance as the one from Object o + + // TODO Exercise 2 c2) Check if Object o is null + + // TODO Exercise 2 c3) Cast the object into a Student variable + // TODO Exercise 2 c3) Check if all the fields from Student class are equal to the ones from + // TODO Exercise 2 c3) the variable that you casted earlier (lastName, firstName, averageGrade) + + return true; + // TODO Exercise 2 d) After you finished implementing equals method go to TODO Exercise 2 e) from Exercise2 class + } + + // TODO Exercise 2 g) Override the hashCode() method + // TODO Exercise 2 g) Hint: Don't forget to include in the hashCode result all the fields from + // TODO Exercise 2 g) the Student class + @Override + public int hashCode() { + return 0; + // TODO Exercise 2 h) After you finished implementing hashCode go to TODO Exercise 2 i) from Exercise2 class + } + + // TODO You should override the toString() method in order to print the Student class' elements + @Override + public String toString() { + return ""; + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise1Test.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise1Test.java new file mode 100644 index 0000000..d33d4ff --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise1Test.java @@ -0,0 +1,159 @@ +import exercise1.Exercise1; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Created by Radu.Hoaghe on 10/29/2014. + */ +public class Exercise1Test { + public static final String[][] data = { + // Africa + {"ALGERIA","Algiers"}, {"ANGOLA","Luanda"}, + {"BENIN","Porto-Novo"}, {"BOTSWANA","Gaberone"}, + {"BURKINA FASO","Ouagadougou"}, {"BURUNDI","Bujumbura"}, + {"CAMEROON","Yaounde"}, {"CAPE VERDE","Praia"}, + {"CENTRAL AFRICAN REPUBLIC","Bangui"}, + {"CHAD","N’djamena"}, {"COMOROS","Moroni"}, + {"CONGO","Brazzaville"}, {"DJIBOUTI","Dijibouti"}, + {"EGYPT","Cairo"}, {"EQUATORIAL GUINEA","Malabo"}, + {"ERITREA","Asmara"}, {"ETHIOPIA","Addis Ababa"}, + {"GABON","Libreville"}, {"THE GAMBIA","Banjul"}, + {"GHANA","Accra"}, {"GUINEA","Conakry"}, + {"BISSAU","Bissau"}, {"COTE D’IVOIRE (IVORY COAST)","Yamoussoukro"}, + {"KENYA","Nairobi"}, {"LESOTHO","Maseru"}, + {"LIBERIA","Monrovia"}, {"LIBYA","Tripoli"}, + {"MADAGASCAR","Antananarivo"}, {"MALAWI","Lilongwe"}, + {"MALI","Bamako"}, {"MAURITANIA","Nouakchott"}, + {"MAURITIUS","Port Louis"}, {"MOROCCO","Rabat"}, + {"MOZAMBIQUE","Maputo"}, {"NAMIBIA","Windhoek"}, + {"NIGER","Niamey"}, {"NIGERIA","Abuja"}, + {"RWANDA","Kigali"}, {"SAO TOME E PRINCIPE","Sao Tome"}, + {"SENEGAL","Dakar"}, {"SEYCHELLES","Victoria"}, + {"SIERRA LEONE","Freetown"}, {"SOMALIA","Mogadishu"}, + {"SOUTH AFRICA","Pretoria/Cape Town"}, + {"SUDAN","Khartoum"}, {"SWAZILAND","Mbabane"}, {"TANZANIA","Dodoma"}, + {"TOGO","Lome"}, {"TUNISIA","Tunis"}, + {"UGANDA","Kampala"},{"DEMOCRATIC REPUBLIC OF THE CONGO (ZAIRE)", "Kinshasa"}, + {"ZAMBIA","Lusaka"}, {"ZIMBABWE","Harare"}, + // Asia + {"AFGHANISTAN","Kabul"}, {"BAHRAIN","Manama"}, + {"BANGLADESH","Dhaka"}, {"BHUTAN","Thimphu"}, + {"BRUNEI","Bandar Seri Begawan"}, + {"CAMBODIA","Phnom Penh"}, + {"CHINA","Beijing"}, {"CYPRUS","Nicosia"}, + {"INDIA","New Delhi"}, {"INDONESIA","Jakarta"}, + {"IRAN","Tehran"}, {"IRAQ","Baghdad"}, + {"ISRAEL","Jerusalem"}, {"JAPAN","Tokyo"}, + {"JORDAN","Amman"}, {"KUWAIT","Kuwait City"}, + {"LAOS","Vientiane"}, {"LEBANON","Beirut"}, + {"MALAYSIA","Kuala Lumpur"}, {"THE MALDIVES","Male"}, + {"MONGOLIA","Ulan Bator"}, {"MYANMAR (BURMA)","Rangoon"}, + {"NEPAL","Katmandu"}, {"NORTH KOREA","P’yongyang"}, + {"OMAN","Muscat"}, {"PAKISTAN","Islamabad"}, + {"PHILIPPINES","Manila"}, {"QATAR","Doha"}, + {"SAUDI ARABIA","Riyadh"}, {"SINGAPORE","Singapore"}, + {"SOUTH KOREA","Seoul"}, {"SRI LANKA","Colombo"}, + {"SYRIA","Damascus"}, {"TAIWAN (REPUBLIC OF CHINA)","Taipei"}, + {"THAILAND","Bangkok"}, {"TURKEY","Ankara"}, + {"UNITED ARAB EMIRATES","Abu Dhabi"}, + {"VIETNAM","Hanoi"}, {"YEMEN","Sana’a"}, + // Australia and Oceania + {"AUSTRALIA","Canberra"}, {"FIJI","Suva"}, + {"KIRIBATI","Bairiki"},{"MARSHALL ISLANDS","Dalap-Uliga-Darrit"}, + {"MICRONESIA","Palikir"}, {"NAURU","Yaren"}, + {"NEW ZEALAND","Wellington"}, {"PALAU","Koror"}, + {"PAPUA NEW GUINEA","Port Moresby"}, + {"SOLOMON ISLANDS","Honaira"}, {"TONGA","Nuku’alofa"}, + {"TUVALU","Fongafale"}, {"VANUATU","Port-Vila"}, + {"WESTERN SAMOA","Apia"}, + // Eastern Europe and former USSR + {"ARMENIA","Yerevan"}, {"AZERBAIJAN","Baku"}, + {"BELARUS (BYELORUSSIA)","Minsk"}, + {"BULGARIA","Sofia"}, {"GEORGIA","Tbilisi"}, + {"KAZAKSTAN","Almaty"}, {"KYRGYZSTAN","Alma-Ata"}, + {"MOLDOVA","Chisinau"}, {"RUSSIA","Moscow"}, + {"TAJIKISTAN","Dushanbe"}, {"TURKMENISTAN","Ashkabad"}, + {"UKRAINE","Kyiv"}, {"UZBEKISTAN","Tashkent"}, + // Europe + {"ALBANIA","Tirana"}, {"ANDORRA","Andorra la Vella"}, + {"AUSTRIA","Vienna"}, {"BELGIUM","Brussels"}, + {"BOSNIA-HERZEGOVINA","Sarajevo"}, + {"CROATIA","Zagreb"}, {"CZECH REPUBLIC","Prague"}, + {"DENMARK","Copenhagen"}, {"ESTONIA","Tallinn"}, + {"FINLAND","Helsinki"}, {"FRANCE","Paris"}, + {"GERMANY","Berlin"}, {"GREECE","Athens"}, + {"HUNGARY","Budapest"}, {"ICELAND","Reykjavik"}, + {"IRELAND","Dublin"}, {"ITALY","Rome"}, + {"LATVIA","Riga"}, {"LIECHTENSTEIN","Vaduz"}, + {"LITHUANIA","Vilnius"}, {"LUXEMBOURG","Luxembourg"}, + {"MACEDONIA","Skopje"}, {"MALTA","Valletta"}, + {"MONACO","Monaco"}, {"MONTENEGRO","Podgorica"}, + {"THE NETHERLANDS","Amsterdam"}, {"NORWAY","Oslo"}, + {"POLAND","Warsaw"}, {"PORTUGAL","Lisbon"}, + {"ROMANIA","Bucharest"}, {"SAN MARINO","San Marino"}, + {"SERBIA","Belgrade"}, {"SLOVAKIA","Bratislava"}, + {"SLOVENIA","Ljuijana"}, {"SPAIN","Madrid"}, + {"SWEDEN","Stockholm"}, {"SWITZERLAND","Berne"}, + {"UNITED KINGDOM","London"}, {"VATICAN CITY","Vatican"}, + // North and Central America + {"ANTIGUA AND BARBUDA","Saint John’s"}, {"BAHAMAS","Nassau"}, + {"BARBADOS","Bridgetown"}, {"BELIZE","Belmopan"}, + {"CANADA","Ottawa"}, {"COSTA RICA","San Jose"}, + {"CUBA","Havana"}, {"DOMINICA","Roseau"}, + {"DOMINICAN REPUBLIC","Santo Domingo"}, + {"EL SALVADOR","San Salvador"}, {"GRENADA","Saint George’s"}, + {"GUATEMALA","Guatemala City"}, {"HAITI","Port-au-Prince"}, + {"HONDURAS","Tegucigalpa"}, {"JAMAICA","Kingston"}, + {"MEXICO","Mexico City"}, {"NICARAGUA","Managua"}, + {"PANAMA","Panama City"}, {"ST. KITTS-NEVIS","Basseterre"}, {"ST. LUCIA","Castries"}, + {"ST. VINCENT AND THE GRENADINES","Kingstown"}, + {"UNITED STATES OF AMERICA","Washington, D.C."}, + // South America + {"ARGENTINA","Buenos Aires"}, {"BOLIVIA","La Paz"}, + {"BRAZIL","Brasilia"}, {"CHILE","Santiago"}, + {"COLOMBIA","Bogota"}, {"ECUADOR","Quito"}, + {"GUYANA","Georgetown"}, {"PARAGUAY","Asuncion"}, + {"PERU","Lima"}, {"SURINAME","Paramaribo"}, + {"TRINIDAD AND TOBAGO","Port of Spain"}, + {"URUGUAY","Montevideo"}, {"VENEZUELA","Caracas"}, + }; + private Exercise1 exercise1; + private Map countries; + private String[] expected = {"russia", "romania", "rwanda"}; + private String[] expected2 = {"RUSSIA", "ROMANIA", "RWANDA"}; + private String expectedCapital = "Bandar Seri Begawan"; + + @Before + public void setUp() throws Exception { + countries = new HashMap(); + for(String[] countryAndCapital : data){ + countries.put(countryAndCapital[0], countryAndCapital[1]); + } + exercise1 = new Exercise1(countries); + + } + + @Test + public void testIteratingOverKeys() throws Exception { + List testResults = exercise1.iteratingOverKeys(); + Assert.assertEquals("Test Iterating Over Keys", Arrays.asList(expected2), testResults); + } + + @Test + public void testIteratingOverEntries() throws Exception { + List testResults = exercise1.iteratingOverEntries(); + Assert.assertEquals("Test Iterating Over Entries", Arrays.asList(expected), testResults); + } + + @Test + public void testIteratingOverValues() throws Exception { + String capital = exercise1.iteratingOverValues(); + Assert.assertEquals("Test Iterating Over Values", expectedCapital, capital); + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise2Test.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise2Test.java new file mode 100644 index 0000000..a1b00d7 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/test/java/Exercise2Test.java @@ -0,0 +1,73 @@ +import exercise2.Exercise2; +import exercise2.Student; +import junit.framework.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * Created by radu992 on 31.10.2014. + */ +public class Exercise2Test { + private Student[] students = {new Student("Popescu", "Mihai", 8.66), + new Student("Ionescu", "Ion", 7.92), + new Student("Popa", "Cristina", 9.34), + new Student("Barbu", "Mihai", 5.01), + new Student("Popescu", "Mihai", 8.66), + new Student("Serban", "Alin", 9.66), + new Student("Georgescu", "Andreea", 5.01), + new Student("Popa", "Cristina", 9.34), + new Student("Popescu", "Mihai", 8.66),}; + + private Long[] cnps = {1851021345131L, + 1920617149053L, + 1870505168646L, + 1870619152998L, + 1921204325416L, + 1931011351347L}; + + private List studentList; + private List cnpsList; + @Before + public void setUp() throws Exception { + studentList = new ArrayList(Arrays.asList(students)); + cnpsList = new ArrayList(Arrays.asList(cnps)); + + } + + @Test + public void testEqualsMethod() throws Exception { + new Exercise2(studentList, cnpsList).addStudents(); + Student student1 = studentList.get(0); // Mihai Popescu + Student student2 = studentList.get(4); // Mihai Popescu + Student student3 = studentList.get(8); // Mihai Popescu + Assert.assertEquals("Test equals method from student", true, student1.equals(student2)); + + Assert.assertEquals("Test reflexitivity on equals method", true, student1.equals(student1)); + + Assert.assertEquals("Test symmetry on equals method", student2.equals(student1), student1.equals(student2)); + + Assert.assertEquals("Test transitivity on equals method", student1.equals(student3), student1.equals(student2) + && student2.equals(student3)); + + Assert.assertEquals("Test null on equals method", false, student1.equals(null)); + } + + @Test + public void testHashCodeMethod() throws Exception { + Student student1 = studentList.get(0); // Mihai Popescu + Student student2 = studentList.get(4); // Mihai Popescu + Student student3 = studentList.get(1); + Student student4 = new Student("Mihai", "Popescu", 8.98); // Mihai Popescu with other averageGrade + + Assert.assertEquals("Test equal elements to have the same hashCode", student1.hashCode(), student2.hashCode()); + + Assert.assertNotSame("Test different elements to have different hashCode", student1.hashCode(), student3.hashCode()); + + Assert.assertNotSame("Test different elements that differ by one field to have different hashCode", student1.hashCode(), + student4.hashCode()); + } +} diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/warm-up2.iml b/workshops/Collections/collections-workshop-part2/warm-up2/warm-up2.iml new file mode 100644 index 0000000..e1b5c99 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/warm-up2.iml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/workshops/Collections/collections-workshop.zip b/workshops/Collections/collections-workshop.zip deleted file mode 100644 index 742f23b10270a357f9a45f99bb52524dcb328e67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37179 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 - - - - - - + @@ -41,11 +36,9 @@ - + - - - + @@ -73,11 +66,9 @@ - + - - - + @@ -85,7 +76,7 @@ - + @@ -107,11 +98,7 @@ - - - - - + @@ -119,7 +106,7 @@ - + @@ -242,6 +229,7 @@ + @@ -422,7 +410,6 @@ - @@ -437,7 +424,7 @@ - + @@ -825,11 +812,12 @@ + - @@ -868,27 +856,27 @@ - - + - + + - - + + @@ -906,8 +894,8 @@ - + @@ -937,16 +925,83 @@ @@ -980,9 +1033,7 @@ - - - + @@ -1006,11 +1057,7 @@ - - - - - + @@ -1018,12 +1065,7 @@ - - - - - - + @@ -1031,9 +1073,7 @@ - - - + @@ -1057,9 +1097,7 @@ - - - + @@ -1083,11 +1121,7 @@ - - - - - + @@ -1095,12 +1129,7 @@ - - - - - - + @@ -1116,12 +1145,7 @@ - - - - - - + @@ -1161,9 +1185,7 @@ - - - + @@ -1171,19 +1193,6 @@ - - - - - - - - - - - - - @@ -1192,32 +1201,34 @@ - - - - - + - + - - - + - + + + + + + + + + diff --git a/workshops/Collections/~$llections Workshop Day 2.docx b/workshops/Collections/~$llections Workshop Day 2.docx new file mode 100644 index 0000000000000000000000000000000000000000..e1633463b0adb2b12b5f54f48a6b5540b1b6ecdc GIT binary patch literal 162 zcmd;0%1=*8%u^^X$ Date: Fri, 31 Oct 2014 18:04:14 -0700 Subject: [PATCH 6/9] added exercise2 --- .../src/main/java/exercise2/Exercise2.java | 26 ++++++++++++++++-- .../src/main/java/exercise2/Student.java | 24 ++++++++++++++-- .../~$llections Workshop Day 2.docx | Bin 162 -> 0 bytes 3 files changed, 44 insertions(+), 6 deletions(-) delete mode 100644 workshops/Collections/~$llections Workshop Day 2.docx diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java index b64e5d9..dd31fcb 100644 --- a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Exercise2.java @@ -23,24 +23,44 @@ public void addStudents(){ System.out.println("The list of students is: " + studentList); // TODO Exercise 2 a) Make a new Set, add the elements from the studentList into it + + HashSet hashSet = new HashSet(); + + for(Student s : studentList) + hashSet.add(s); + // TODO and print them (hint: notice the duplicate elements) + System.out.println("studentList: " + studentList); + System.out.println("hashSet: " + hashSet); // TODO (hint: in order to print the elements of Student class in a human readable way you should override // TODO the toString() method from Student class // TODO Exercise 2 b) Remove all elements from the Set using clear() method and go to TODO Exercise 2 c) from Student class + hashSet.clear(); // TODO Exercise 2 e) Add the elements from studentList into the Set after you finished the TODO Exercise 2 c) // TODO from Student class. What do you notice? - + hashSet.addAll(studentList); + System.out.println("hashSet after override equals method " + hashSet); // TODO Exercise 2 f) Remove all elements from the Set using clear() method and go to TODO Exercise 2 g) from Student class - + hashSet.clear(); // TODO Exercise 2 i) Add the elements from studentList into the Set after you finished the TODO Exercise 2 g) // TODO from Student class. What do you notice this time? - + hashSet.addAll(studentList); + System.out.println("hashSet after override hashCode method " + hashSet); // TODO Exercise 2 j) Create a new Map so that it holds in the key all the Students from the // TODO (Important !) Set you have just already created, and in the keys' value, the CNP of the Student found in cnps List // TODO (suggestion: after you implement this, you could comment, firstly, the equals() method from Student class // TODO and then the hashCode() method in order to see some differences). + int index = 0; + HashMap hashMap = new HashMap(); + for(Student stud : hashSet) { + + hashMap.put(stud, cnps.get(index)); + index++; + } + + System.out.println(hashMap); } } diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java index 087ea84..45cfca1 100644 --- a/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java +++ b/workshops/Collections/collections-workshop-part2/warm-up2/src/main/java/exercise2/Student.java @@ -31,12 +31,25 @@ public Double getAverageGrade() { public boolean equals(Object o) { // TODO Exercise 2 c1) Check if the current instance is the same instance as the one from Object o + if (this == o) return true; // TODO Exercise 2 c2) Check if Object o is null + if (o == null) + return false; // TODO Exercise 2 c3) Cast the object into a Student variable + + Student stud = (Student) o; // TODO Exercise 2 c3) Check if all the fields from Student class are equal to the ones from - // TODO Exercise 2 c3) the variable that you casted earlier (lastName, firstName, averageGrade) + if (! stud.firstName.equals(this.firstName)) + return false; + + if (! stud.lastName.equals(this.lastName)) + return false; + + if (! stud.averageGrade.equals(this.averageGrade)) + return false; + // TODO Exercise 2 c3) the variable that you casted earlier (lastName, firstName, averageGrade) return true; // TODO Exercise 2 d) After you finished implementing equals method go to TODO Exercise 2 e) from Exercise2 class } @@ -44,15 +57,20 @@ public boolean equals(Object o) { // TODO Exercise 2 g) Override the hashCode() method // TODO Exercise 2 g) Hint: Don't forget to include in the hashCode result all the fields from // TODO Exercise 2 g) the Student class + @Override public int hashCode() { - return 0; + + int result = firstName.hashCode(); + result = result * 31 + lastName.hashCode(); + result = result * 31 + averageGrade.hashCode(); // TODO Exercise 2 h) After you finished implementing hashCode go to TODO Exercise 2 i) from Exercise2 class + return result; } // TODO You should override the toString() method in order to print the Student class' elements @Override public String toString() { - return ""; + return "(" + firstName + " " + lastName + " " + averageGrade + ")" ; } } diff --git a/workshops/Collections/~$llections Workshop Day 2.docx b/workshops/Collections/~$llections Workshop Day 2.docx deleted file mode 100644 index e1633463b0adb2b12b5f54f48a6b5540b1b6ecdc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162 zcmd;0%1=*8%u^^X$ Date: Tue, 4 Nov 2014 09:34:23 +0200 Subject: [PATCH 7/9] index --- .../warm-up2/.idea/.name | 1 + .../warm-up2/.idea/compiler.xml | 30 + .../.idea/copyright/profiles_settings.xml | 3 + .../warm-up2/.idea/encodings.xml | 5 + .../libraries/Maven__junit_junit_4_11.xml | 13 + .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 + .../warm-up2/.idea/misc.xml | 34 + .../warm-up2/.idea/modules.xml | 9 + .../warm-up2/.idea/scopes/scope_settings.xml | 5 + .../warm-up2/.idea/uiDesigner.xml | 125 ++ .../warm-up2/.idea/vcs.xml | 7 + .../warm-up2/.idea/workspace.xml | 1185 +++++++++++++++++ 12 files changed, 1430 insertions(+) create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml create mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name new file mode 100644 index 0000000..683d4cc --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name @@ -0,0 +1 @@ +warm-up2 \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml new file mode 100644 index 0000000..ec1af73 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml @@ -0,0 +1,30 @@ + + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml new file mode 100644 index 0000000..e206d70 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml new file mode 100644 index 0000000..f33320d --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..f58bbc1 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml new file mode 100644 index 0000000..1cfb5a2 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + 1.8 + + + + + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml new file mode 100644 index 0000000..424e09c --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml new file mode 100644 index 0000000..922003b --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml new file mode 100644 index 0000000..3b00020 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml new file mode 100644 index 0000000..5663161 --- /dev/null +++ b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml @@ -0,0 +1,1185 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + + + + 1414595330574 + 1414595330574 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 8bc9b2eac94bc11aceafc0aec205cce92658f09a Mon Sep 17 00:00:00 2001 From: oana-p Date: Fri, 14 Nov 2014 00:25:50 +0200 Subject: [PATCH 8/9] added zth_app project --- exercises/zth-app/pom.xml | 23 + .../src/main/java/ro/teamnet/zth/App.java | 59 + .../ro/teamnet/zth/dao/DepartmentDao.java | 66 + .../java/ro/teamnet/zth/dao/EmployeeDao.java | 198 +++ .../main/java/ro/teamnet/zth/dao/JobDao.java | 61 + .../ro/teamnet/zth/domain/Department.java | 30 + .../java/ro/teamnet/zth/domain/Employee.java | 118 ++ .../main/java/ro/teamnet/zth/domain/Job.java | 54 + .../ro/teamnet/zth/utils/DatabaseManager.java | 110 ++ .../zth/utils/ResultSetToPojoConverter.java | 66 + .../src/test/java/ro/teamnet/zth/AppTest.java | 38 + .../target/classes/ro/teamnet/zth/App.class | Bin 0 -> 1777 bytes .../ro/teamnet/zth/dao/DepartmentDao.class | Bin 0 -> 2873 bytes .../ro/teamnet/zth/dao/EmployeeDao.class | Bin 0 -> 9299 bytes .../classes/ro/teamnet/zth/dao/JobDao.class | Bin 0 -> 2745 bytes .../ro/teamnet/zth/domain/Department.class | Bin 0 -> 1137 bytes .../ro/teamnet/zth/domain/Employee.class | Bin 0 -> 3579 bytes .../classes/ro/teamnet/zth/domain/Job.class | Bin 0 -> 1911 bytes .../teamnet/zth/utils/DatabaseManager.class | Bin 0 -> 4978 bytes .../zth/utils/ResultSetToPojoConverter.class | Bin 0 -> 4056 bytes .../test-classes/ro/teamnet/zth/AppTest.class | Bin 0 -> 608 bytes exercises/zth-app/zth-app.iml | 17 + .gitignore | 3 + .../warm-up2/.idea/.name | 1 - .../warm-up2/.idea/compiler.xml | 30 - .../.idea/copyright/profiles_settings.xml | 3 - .../warm-up2/.idea/encodings.xml | 5 - .../libraries/Maven__junit_junit_4_11.xml | 13 - .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 - .../warm-up2/.idea/misc.xml | 34 - .../warm-up2/.idea/modules.xml | 9 - .../warm-up2/.idea/scopes/scope_settings.xml | 5 - .../warm-up2/.idea/uiDesigner.xml | 125 -- .../warm-up2/.idea/vcs.xml | 7 - .../warm-up2/.idea/workspace.xml | 1185 ---------------- .../warm-up-workshop/warm-up/.idea/.name | 1 - .../warm-up/.idea/compiler.xml | 30 - .../.idea/copyright/profiles_settings.xml | 3 - .../warm-up/.idea/encodings.xml | 5 - .../libraries/Maven__junit_junit_4_11.xml | 13 - .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 - .../warm-up-workshop/warm-up/.idea/misc.xml | 34 - .../warm-up/.idea/modules.xml | 9 - .../warm-up/.idea/scopes/scope_settings.xml | 5 - .../warm-up/.idea/uiDesigner.xml | 125 -- .../warm-up-workshop/warm-up/.idea/vcs.xml | 7 - .../warm-up/.idea/workspace.xml | 1234 ----------------- .../exercise/exercise0/Exercise0.class | Bin 1946 -> 0 bytes .../exercise/exercise1/Exercise1.class | Bin 2524 -> 0 bytes .../classes/exercise/exercise2/MyList.class | Bin 2543 -> 0 bytes .../exercise/exercise3/Exercise3.class | Bin 1702 -> 0 bytes .../target/test-classes/Exercise1Test.class | Bin 2443 -> 0 bytes .../target/test-classes/Exercise2Test.class | Bin 3872 -> 0 bytes .../target/test-classes/Exercise3Test.class | Bin 1053 -> 0 bytes workshops/SQL/SQL-Workshop.docx | Bin 24418 -> 0 bytes 55 files changed, 843 insertions(+), 2909 deletions(-) create mode 100644 exercises/zth-app/pom.xml create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/App.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/dao/DepartmentDao.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/dao/EmployeeDao.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/dao/JobDao.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Department.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Employee.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Job.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/utils/DatabaseManager.java create mode 100644 exercises/zth-app/src/main/java/ro/teamnet/zth/utils/ResultSetToPojoConverter.java create mode 100644 exercises/zth-app/src/test/java/ro/teamnet/zth/AppTest.java create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/App.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/EmployeeDao.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/JobDao.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/utils/DatabaseManager.class create mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class create mode 100644 exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class create mode 100644 exercises/zth-app/zth-app.iml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml delete mode 100644 workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/.name delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise2/MyList.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise2Test.class delete mode 100644 workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise3Test.class delete mode 100644 workshops/SQL/SQL-Workshop.docx diff --git a/ exercises/zth-app/pom.xml b/ exercises/zth-app/pom.xml new file mode 100644 index 0000000..694ae18 --- /dev/null +++ b/ exercises/zth-app/pom.xml @@ -0,0 +1,23 @@ + + 4.0.0 + ro.teamnet.zth + zth-app + jar + 1.0-SNAPSHOT + zth-app + http://maven.apache.org + + + junit + junit + 3.8.1 + test + + + com.oracle + ojdbc6 + 11.2.0.3 + + + diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/App.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/App.java new file mode 100644 index 0000000..ffeff1d --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/App.java @@ -0,0 +1,59 @@ +package ro.teamnet.zth; + +import ro.teamnet.zth.dao.DepartmentDao; +import ro.teamnet.zth.dao.EmployeeDao; +import ro.teamnet.zth.dao.JobDao; +import ro.teamnet.zth.domain.Employee; +import ro.teamnet.zth.utils.DatabaseManager; + +import javax.xml.crypto.Data; +import java.sql.Connection; +import java.util.HashMap; + +/** + * Hello world! + * + */ +public class App +{ + private static final String username="ZTH_17"; + private static final String password="passw0rd"; + public static void main( String[] args ) + { + System.out.println( "Starting ZTH JDBC Tutorial!" ); + + Connection con = DatabaseManager.getConnection(username, password); + DatabaseManager.checkConnection(con); + + HashMap columns = new HashMap(); + + // columns.put("kk", "VARCHAR2(5)"); + columns.put("Id", "number(6,0)"); + columns.put("Name", "varchar2(50)"); + columns.put("Address", "nvarchar2(50)"); + + /* JobDao jobDao = new JobDao(); + System.out.println(jobDao.getJobById(con, "AD_PRES"));*/ + + /* DepartmentDao departmentDaoDao = new DepartmentDao(); + System.out.println(departmentDaoDao.getDepartmentById(con, new Long(50)));*/ + + EmployeeDao employeeDao = new EmployeeDao(); + System.out.println(employeeDao.getAllEmployees(con)); + + /* Employee employee = employeeDao.getEmployeeById(con, new Long(100)); + + Employee emp = employeeDao.getEmployeeById(con, new Long(100)); + employee.setId(new Long(1001)); + employee.setManager(emp); + employee.setEmail("e@yahoo.com"); + employeeDao.saveEmployee(employee, con);*/ + + /* Employee employee_ins = employeeDao.getEmployeeById(con, new Long(1001)); + employee_ins.setEmail("e12@yahoo.com"); + employeeDao.updateEmployee(employee_ins, con);*/ + Employee employee = employeeDao.getEmployeeById(con, new Long(1001)); + System.out.println(employee); + //employeeDao.deleteEmployee(employee, con); + } +} \ No newline at end of file diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/DepartmentDao.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/DepartmentDao.java new file mode 100644 index 0000000..f693a3c --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/DepartmentDao.java @@ -0,0 +1,66 @@ +package ro.teamnet.zth.dao; + +//dao - data access object + +import ro.teamnet.zth.domain.Department; +import ro.teamnet.zth.utils.ResultSetToPojoConverter; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; + +public class DepartmentDao { + + public ArrayList getAllDepartments(Connection con) { + + String selectAllFromTableString = "Select department_id, department_name FROM Departments"; + PreparedStatement stmt = null; + + try { + stmt = con.prepareStatement(selectAllFromTableString); + + ResultSet rs = stmt.executeQuery(); + + return ResultSetToPojoConverter.convertToDepartment(rs); + } + catch(SQLException ex) { + ex.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + return new ArrayList(); + } + + public Department getDepartmentById(Connection con, Long id) { + + String selectAllFromTableString = "Select department_id, department_name FROM Departments WHERE department_id = ?"; + PreparedStatement stmt = null; + try { + stmt = con.prepareStatement(selectAllFromTableString); + stmt.setLong(1,id); + ResultSet rs = stmt.executeQuery(); + + ArrayList departments = ResultSetToPojoConverter.convertToDepartment(rs); + + return departments.size() > 0 ? departments.get(0) : null; + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + return null; + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/EmployeeDao.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/EmployeeDao.java new file mode 100644 index 0000000..8439168 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/EmployeeDao.java @@ -0,0 +1,198 @@ +package ro.teamnet.zth.dao; + + +import ro.teamnet.zth.domain.Employee; +import ro.teamnet.zth.utils.ResultSetToPojoConverter; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedHashMap; + +public class EmployeeDao { + + public ArrayList getAllEmployees(Connection con) { + + String selectAllFromTableString = "Select employee_id, first_name, last_name, email," + + " phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id FROM Employees"; + PreparedStatement stmt = null; + + + try { + stmt = con.prepareStatement(selectAllFromTableString); + stmt.setMaxRows(5); + ResultSet rs = stmt.executeQuery(); + + return ResultSetToPojoConverter.convertToEmployee(rs, con); + } + catch(SQLException ex) { + ex.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + return new ArrayList(); + } + + public Employee getEmployeeById(Connection con, Long id) { + + String selectAllFromTableString = "Select employee_id, first_name, last_name, email," + + "phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id FROM Employees WHERE employee_id = ?"; + PreparedStatement stmt = null; + try { + stmt = con.prepareStatement(selectAllFromTableString); + stmt.setLong(1,id); + ResultSet rs = stmt.executeQuery(); + + ArrayList employees = ResultSetToPojoConverter.convertToEmployee(rs, con); + + return employees.size() > 0 ? employees.get(0) : null; + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + return null; + } + public void saveEmployee(Employee employee, Connection con) { + LinkedHashMap insertIntoTableEmployees = new LinkedHashMap(); + String tableName = "employees"; + insertIntoTableEmployees.put("employee_id", employee.getId().toString()); + insertIntoTableEmployees.put("first_name", employee.getFirstName()); + insertIntoTableEmployees.put("last_name", employee.getLastName()); + insertIntoTableEmployees.put("email", employee.getEmail()); + insertIntoTableEmployees.put("phone_number", employee.getPhoneNumber()); + insertIntoTableEmployees.put("hire_date", "TO_DATE('" + employee.getHireDate().toString() + "','yyyy-mm-dd')"); + insertIntoTableEmployees.put("job_id", employee.getJob().getId().toString()); + insertIntoTableEmployees.put("salary", employee.getSalary().toString()); + insertIntoTableEmployees.put("commission_pct", employee.getCommissionPoints().toString()); + insertIntoTableEmployees.put("manager_id", employee.getManager().getId().toString()); + insertIntoTableEmployees.put("department_id", employee.getDepartment().getId().toString()); + PreparedStatement stmt = null; + try { + + String createTableString = "INSERT INTO " + tableName + " ( "; + StringBuilder sqlStatement = new StringBuilder(); + sqlStatement.append(createTableString); + Integer valuesCount = insertIntoTableEmployees.keySet().size(); + for (String valueName : insertIntoTableEmployees.keySet()) { + valuesCount--; + String columnString = valueName + (valuesCount != 0 ? " , " : ")"); + sqlStatement.append(columnString); + } + valuesCount = insertIntoTableEmployees.keySet().size(); + sqlStatement.append(" VALUES ( '"); + for (String valueName : insertIntoTableEmployees.keySet()) { + valuesCount--; + String columnString; + if (valueName.equals("hire_date")) { + columnString = insertIntoTableEmployees.get(valueName) + (valuesCount != 0 ? " , '" : "')"); + }else if (valueName.equals("phone_number")) { + columnString = insertIntoTableEmployees.get(valueName) + (valuesCount != 0 ? "' , " : "')"); + }else + { + columnString = insertIntoTableEmployees.get(valueName) + (valuesCount != 0 ? "' , '" : "')"); + } + sqlStatement.append(columnString); + } + stmt = con.prepareStatement(sqlStatement.toString()); + // stmt.executeUpdate(sqlStatement.toString()); + stmt.execute(); + + System.out.println("Inserted into table " + tableName + "..."); + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + public void deleteEmployee(Employee employee, Connection con) { + PreparedStatement stmt = null; + String tableName = "employees"; + try { + + String deleteStatement = "DELETE FROM " + tableName + " WHERE employee_id = " + employee.getId(); + stmt = con.prepareStatement(deleteStatement); + // stmt.executeUpdate(deleteStatement); + stmt.execute(); + System.out.println("Deleted row from " + tableName + " from database..."); + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + + } + } + public void updateEmployee(Employee employee, Connection con) { + HashMap insertIntoTableEmployees = new HashMap(); + insertIntoTableEmployees.put("employee_id", employee.getId().toString()); + insertIntoTableEmployees.put("first_name", employee.getFirstName()); + insertIntoTableEmployees.put("last_name", employee.getLastName()); + insertIntoTableEmployees.put("email", employee.getEmail()); + insertIntoTableEmployees.put("phone_number", employee.getPhoneNumber()); + insertIntoTableEmployees.put("hire_date", "TO_DATE('" + employee.getHireDate().toString() + "','yyyy-mm-dd')"); + insertIntoTableEmployees.put("job_id", employee.getJob().getId().toString()); + insertIntoTableEmployees.put("salary", employee.getSalary().toString()); + insertIntoTableEmployees.put("commission_pct", employee.getCommissionPoints().toString()); + insertIntoTableEmployees.put("manager_id", employee.getManager().getId().toString()); + insertIntoTableEmployees.put("department_id", employee.getDepartment().getId().toString()); + String tableName = "employees"; + PreparedStatement stmt = null; + try { + // stmt = con.createStatement(); + String createTableString = "UPDATE " + tableName + " SET "; + StringBuilder sqlStatement = new StringBuilder(); + sqlStatement.append(createTableString); + Integer columnsCount = insertIntoTableEmployees.keySet().size(); + for (String columnName : insertIntoTableEmployees.keySet()) { + columnsCount--; + String columnString; + if (columnName.equals("hire_date")) { + columnString = columnName + " = " + insertIntoTableEmployees.get(columnName) + (columnsCount != 0 ? " , " : "' "); + } else { + columnString = columnName + " = '" + insertIntoTableEmployees.get(columnName) + (columnsCount != 0 ? "' , " : "' "); + } + sqlStatement.append(columnString); + } + sqlStatement.append("WHERE employee_id = " + employee.getId()); + //stmt.executeUpdate(sqlStatement.toString()); + stmt = con.prepareStatement(sqlStatement.toString()); + stmt.execute(); + System.out.println("Updated table " + tableName + " in database..."); + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + + } + } +} + diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/JobDao.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/JobDao.java new file mode 100644 index 0000000..acd2560 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/dao/JobDao.java @@ -0,0 +1,61 @@ +package ro.teamnet.zth.dao; + +import ro.teamnet.zth.domain.Job; +import ro.teamnet.zth.utils.ResultSetToPojoConverter; + +import java.sql.*; +import java.util.ArrayList; + +public class JobDao { + + public ArrayList getAllJobs(Connection con) { + + String selectAllFromTableString = "Select job_id, job_title, min_salary, max_salary FROM Jobs"; + PreparedStatement stmt = null; + + try { + stmt = con.prepareStatement(selectAllFromTableString); + + ResultSet rs = stmt.executeQuery(); + + return ResultSetToPojoConverter.convertToJob(rs); + } + catch(SQLException ex) { + ex.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + return new ArrayList(); + } + + public Job getJobById(Connection con, String id) { + + String selectAllFromTableString = "Select job_id, job_title, min_salary, max_salary FROM Jobs WHERE job_id = ?"; + PreparedStatement stmt = null; + try { + stmt = con.prepareStatement(selectAllFromTableString); + stmt.setString(1,id); + ResultSet rs = stmt.executeQuery(); + + ArrayList jobs = ResultSetToPojoConverter.convertToJob(rs); + + return jobs.size() > 0 ? jobs.get(0) : null; + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + return null; + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Department.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Department.java new file mode 100644 index 0000000..65be390 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Department.java @@ -0,0 +1,30 @@ +package ro.teamnet.zth.domain; + + +public class Department { + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDepartmentName() { + return departmentName; + } + + public void setDepartmentName(String departmentName) { + this.departmentName = departmentName; + } + + private Long id; + private String departmentName; + + @Override + public String toString(){ + + return "[id: " + id + ", department_name: " + departmentName + "]\n"; + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Employee.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Employee.java new file mode 100644 index 0000000..59119db --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Employee.java @@ -0,0 +1,118 @@ +package ro.teamnet.zth.domain; + + +import java.util.Date; + +public class Employee { + + private Long id; + private String firstName; + private String lastName; + private Employee manager; + private String email; + private Date hireDate; + private Double salary; + private Double commissionPoints; + private String phoneNumber; + private Job job; + private Department department; + + public Department getDepartment() { + return department; + } + + public void setDepartment(Department department) { + this.department = department; + } + + public Job getJob() { + return job; + } + + public void setJob(Job job) { + this.job = job; + } + + public String getPhoneNumber() { + return phoneNumber; + } + + public void setPhoneNumber(String phoneNumber) { + this.phoneNumber = phoneNumber; + } + + public Double getCommissionPoints() { + return commissionPoints; + } + + public void setCommissionPoints(Double commissionPoints) { + this.commissionPoints = commissionPoints; + } + + public Double getSalary() { + return salary; + } + + public void setSalary(Double salary) { + this.salary = salary; + } + + public Date getHireDate() { + return hireDate; + } + + public void setHireDate(Date hireDate) { + this.hireDate = hireDate; + } + + public Employee getManager() { + return manager; + } + + public void setManager(Employee manager) { + this.manager = manager; + } + + public String getLastName() { + return lastName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + public String getFirstName() { + return firstName; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + + @Override + public String toString() { + + return "(id: " + id + ",firstName: " + firstName + ",lastName: " + lastName + ",email: " + email + + ",hireDate: " + hireDate+ ",salary: " + salary + ",phoneNumber: " + phoneNumber + + ",commissionPoints: " + commissionPoints+ ",manager: " + manager + ",job: " + job.toString() + +",department: " + department + ")\n"; + + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Job.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Job.java new file mode 100644 index 0000000..4ac2206 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/domain/Job.java @@ -0,0 +1,54 @@ +package ro.teamnet.zth.domain; + + +public class Job { + + private String id; + private String jobTitle; + + public Job(){} + public Job(String id, String jobTitle, Double minSalary, Double maxSalary) { + this.id = new String(id); + this.jobTitle = new String(jobTitle); + this.minSalary = new Double(minSalary); + this.maxSalary = new Double(maxSalary); + } + public Double getMinSalary() { + return minSalary; + } + + public void setMinSalary(Double minSalary) { + this.minSalary = minSalary; + } + + public Double getMaxSalary() { + return maxSalary; + } + + public void setMaxSalary(Double maxSalary) { + this.maxSalary = maxSalary; + } + + public String getJobTitle() { + return jobTitle; + } + + public void setJobTitle(String jobTitle) { + this.jobTitle = jobTitle; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + private Double minSalary; + private Double maxSalary; + + public String toString() { + return "(job_id: " + id + ", job_name: " + jobTitle + ", minSalary: " + minSalary + ", maxSalary: " + maxSalary + ")"; + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/DatabaseManager.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/DatabaseManager.java new file mode 100644 index 0000000..afb2b94 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/DatabaseManager.java @@ -0,0 +1,110 @@ +package ro.teamnet.zth.utils; + +import java.sql.*; +import java.util.HashMap; + +public class DatabaseManager { + + public static Connection getConnection(String username, String password) { + + Connection con = null; + try { + + con = DriverManager.getConnection( + "jdbc:oracle:thin:@10.6.33.102:1521:orcl", + username, + password); + } + catch (SQLException e) { + e.printStackTrace(); + } + + return con; + } + + public static void checkConnection(Connection con) { + + Statement statement = null; + PreparedStatement stmt = null; + try { + // statement = con.createStatement(); + stmt = con.prepareStatement("SELECT SYSDATE FROM DUAL"); + // ResultSet res = statement.executeQuery("SELECT SYSDATE FROM DUAL"); + ResultSet res = stmt.executeQuery("SELECT SYSDATE FROM DUAL"); + if(res.next()) { + Date currentDate = res.getDate(1); + System.out.println("Current Date from Oracle is " + currentDate); + } + res.close(); + + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + // statement.close(); + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + public static void create(Connection con, String tableName, HashMap columnData) { + + Statement stmt = null; + PreparedStatement statement = null; + + try { + stmt = con.createStatement(); + String createTableString = "CREATE TABLE " + tableName + "("; + StringBuilder sqlStatement = new StringBuilder(); + sqlStatement.append(createTableString); + Integer columnsCount = columnData.keySet().size(); + + for(String columnName: columnData.keySet()) { + columnsCount--; + String columnString = columnName + " " + columnData.get(columnName) + (columnsCount != 0 ? "," : ")"); + sqlStatement.append(columnString); + } + System.out.println(sqlStatement.toString()); + stmt.executeUpdate(sqlStatement.toString()); + + System.out.println("Created table " + tableName + " in database ..."); + + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + public static void drop(Connection con, String tableName) { + + Statement stmt = null; + + + try { + stmt = con.createStatement(); + String dropTableStatement = "DROP TABLE " + tableName; + stmt.executeUpdate(dropTableStatement); + + System.out.println("Dropped table " + tableName + " from database ..."); + } catch (SQLException e) { + e.printStackTrace(); + } + finally { + try { + stmt.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + + } +} diff --git a/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/ResultSetToPojoConverter.java b/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/ResultSetToPojoConverter.java new file mode 100644 index 0000000..652d952 --- /dev/null +++ b/ exercises/zth-app/src/main/java/ro/teamnet/zth/utils/ResultSetToPojoConverter.java @@ -0,0 +1,66 @@ +package ro.teamnet.zth.utils; + + +import ro.teamnet.zth.dao.DepartmentDao; +import ro.teamnet.zth.dao.EmployeeDao; +import ro.teamnet.zth.dao.JobDao; +import ro.teamnet.zth.domain.*; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; + +public class ResultSetToPojoConverter { + // employee_id, first_name, last_name, email," + + // " phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id + public static ArrayList convertToEmployee(ResultSet rs, Connection con) throws SQLException { + + ArrayList employees = new ArrayList(); + while(rs.next()) { + Employee emp = new Employee(); + emp.setId(rs.getLong("employee_id")); + emp.setFirstName(rs.getString("first_name")); + emp.setLastName(rs.getString("last_name")); + emp.setEmail(rs.getString("email")); + emp.setHireDate(rs.getDate("hire_date")); + emp.setSalary(rs.getDouble("salary")); + emp.setCommissionPoints(rs.getDouble("commission_pct")); + emp.setPhoneNumber(rs.getString("phone_number")); + + emp.setManager((new EmployeeDao()).getEmployeeById(con,rs.getLong("manager_id"))); + emp.setJob((new JobDao()).getJobById(con, rs.getString("job_id"))); + emp.setDepartment((new DepartmentDao()).getDepartmentById(con, rs.getLong("department_id"))); + employees.add(emp); + } + rs.close(); + return employees; + } + + public static ArrayList convertToJob(ResultSet rs) throws SQLException { + String job_id, job_title; + Double min_salary, max_salary; + ArrayList jobs = new ArrayList(); + while(rs.next()) { + job_id = rs.getString("job_id"); + job_title = rs.getString("job_title"); + min_salary = rs.getDouble("min_salary"); + max_salary = rs.getDouble("max_salary"); + jobs.add(new Job(job_id, job_title, min_salary, max_salary)); + } + rs.close(); + return jobs; + } + public static ArrayList convertToDepartment(ResultSet rs) throws SQLException { + + ArrayList departments = new ArrayList(); + while(rs.next()) { + Department dept = new Department(); + dept.setDepartmentName(rs.getString("department_name")); + dept.setId(rs.getLong("department_id")); + departments.add(dept); + } + rs.close(); + return departments; + } +} diff --git a/ exercises/zth-app/src/test/java/ro/teamnet/zth/AppTest.java b/ exercises/zth-app/src/test/java/ro/teamnet/zth/AppTest.java new file mode 100644 index 0000000..3f5a4ca --- /dev/null +++ b/ exercises/zth-app/src/test/java/ro/teamnet/zth/AppTest.java @@ -0,0 +1,38 @@ +package ro.teamnet.zth; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/App.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/App.class new file mode 100644 index 0000000000000000000000000000000000000000..efec92ad7d429261bb55e8c8acfd39e2bf57f8f7 GIT binary patch literal 1777 zcmZ`)T~`}L7=DHXb_q*?g;Hs;rrK&!LYHD&Qi5QBwiE-c20@BiC!00dy4j7plX~L6 z(u>ej&hZEMPrUcKr|;|%$(Om9oq6Bq{eEWh_q(@$0r(t0CoqrfC>~-}MJ|Cge4%1p z#YO^OA}^Os1zQP>BCBFs#Ur_Wtm27^9TiVi>?-&w0UcSn6r_Va1^dI~oPM!?5}3s^ zsd}#9YX#phsExq#U0$;o^ujCtni~#xD@IZHwp+i^Y*C}ee#%-5jHg(dUQy7c;6|$Zlpr&+8k8CeTmcg%%K_$4BDQwRr*NW*m zjhZX1BSb^kjK>P&$E;f2@tT&k%{_)>Z+>O&8ILXyWT3VU2BAG!$bSZeo-K4W zqgih^1aa9_|=lP?Z- zlDpfRTgiil@MtQ|4F!i9j_@4~m6R{tBG=Y4%>{|g%VBGE2T<;-6PqQ`r1gh!? zC5B5ETrGHRMb>I+C`0nC#|!m?Ve$h1tn`Z5&?PE117X#OI$nbm=hU%1<2l^|L3e=& zN^PDFeRPYdoVo-#l5(m3@kqAb>`6#AFEF;b;3Xbdd)(y}%cpKsEO9|qhTH&m0|G>% zKAumQRm=RP)87Z@{(7J?!&qI`o$U-5bt%^o@LZDa7tyV!-1Cmpz8N&z%>P7-tV90f zeV;cAb|9#?UA=2ZlCMf?S0*U^x1Db`CEcD3_TQ15}B*ZU29?dD5GD}C!)=yJ|#D2&Ia*DYYuCB&OHy0;`%q<3)+cISYT!D%?Oj3C>RQNoVdy5La zL#3@yejB)rUD}->3lpnh9rvPKNwYxqlk}csut=56V~6YvYRm@VmT;HioKT(1^j8+g TJ;KTkM5y~=`yP;N2rKUaTbIM! literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class new file mode 100644 index 0000000000000000000000000000000000000000..e428561361fc2168681b0cca06d770c9f9d4bc86 GIT binary patch literal 2873 zcmbVOTXz#x6#h;!lS!t5LZLu_Y6wLNEd*~UNhuU)C6I=;sR88XG#T2d$xJ($AZ0BV z54v>mBlNYe_yVG9iO>EK|AqBClgX{cF_L8m?-{>4-_SYdWqYFNHIbQ;=UbG|Xz4(=aa(8Mkc9n-B<( zoG1w>mz|0!(4V(#v(Tt5n(l(JSS4p5@05*d$#5-s515L#Y}Ex)dDlsMrctv^Fa5+@ zPFD;keZ^cgT(4%@-W9{i3hZ7oy~%2|!{)=Wk^GAB$Vk`Ms_Dy)ZJTA!a_sDhCb!{P z)%2w68tZwh?$Lx`9Q!*jigWp?$7OTXeo5yJa5(;Rj+8umm%{pGb}r{z+gwC z%ca19x>==vhB)myH9x_k=UVoX%-xT&YS>HZCXXhSx>xfA4tLDWx-w<6QuGYZl!;So z2QTF>W{g$epkMT&h6N3uYACTwY?y|d04X+2jF$i3N3SFU--USc!0Hg}r`fxb$++iXHm;%)s4S#-N=s{?_3z1Uh`ZQ<)& zQ@7X9ze-udErMJ?FFFmkY))G~hC3x7CQr+z#<2%`1n@sP>sWo!acsQH#LF6{|h8}^Xk<6 zRCl~qC3!x1fn|te5#=~4FynZLr8t&h2_*lisc%r(I@IiCXD)6mu5fxLXD0@USNd9Q&S85D13(l;w;&9PCGF{JfnFN=Rq!*kHjs!-# zX0iSDZ}*^Dt~zzOrB}J1Jb%M1xJH?rSd}Fx8Px`9F7#^xTHW-Tbx}uh*ZdVitVz*yHf6iaS!${#6PnA@f=UI&7LU7M9k~BH; zypB06ke?$Z?_ocyMdkpOADc~TgrmsL6L$2i1FN)K=0Z78&-^5qbz$v~>`t;}Tz zQNDW^)L2q7BK8zz+8$<|Rj!(2c!!+h)T|-8$!kQzh=vmyPHGs{Fs9)Ygoe|RO}1%@C#$i!r6ESPZ(0-P_ zCg^P(Ps#s=^mqKbCvmdM0v6i+A7*hSPE`6D#Rv2kq2(qzRN8D&PXkJ)g=cNVJPQyb zd1o0ZfjYRGOf)HY;#

&* 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

jBG+fv_lK_YUD##MOy_hPBEd=IKwZ8 zA2OIq7v(Q|yXK^fJjlUu`eKwafe;TPA^Sj35{dwVH~sFP(UXXTUt`Cg=-D7nGO92O z0MeNFs|@dm**8?j1HlFonOIY*WweAQ%wq2(0ged{C(AQJD$nySTUH8qi<#yr5oZ<8 z@SJjsl;C9#9IG4?IJPiS^l%bA807eeIEE2QPSNKm{a;{&a~%G8%#+TuAGg?%yVU9A zOVmB0?g=vVe3t%48S4V0ox^vO|3LZ$#ypTz*}a+O@Q>1q0Exm_gZ%643+8Yu&?@xl zgG8YhpVFA?%O+f225=FwvmRW+_|XGSn0~(ZfFm;(f0_LV=co}-`U%=55w5o3p$$#A stm6D8Q*FmfOHXABHOdwjo`!$21eoiBw$*^)J8-wngLrQ)(2BtN7jc(OKL7v# literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class new file mode 100644 index 0000000000000000000000000000000000000000..78a93a18d55236b4dae0c30a5dc7f2df027d31ff GIT binary patch literal 1137 zcmaiyZEMp|6vzL!PwBF_u4%XVFlU`p)9xYa-fglMDuPfZI2p(oa@$vmFMm5`5qb z<$hKdt``ir^xanz0KzHugnC1yw$n^;B&@}&_-D<@{?kxZ3Z3SPo2k#FnY2@-L|NCB zbkf9Ar!A`>J~5al!6@vC*HX7ynI_oNs#>s7v#^AUg=JJ3)}~s=30{n3-xDDek&g(6u z;S3*5Va7ksc9@>WtUn=I^eBNGebj%nBME3NfkufM**cwES{bdy)-~AI$ZaKY0=?B$ z+FP*$)^L+f47YHb>}>Eihu$}}TMQp^=+WwB*w6sb0z#@uNSeIXo&ZVTh z=GXmb>buyO1Cq~zROW)*Lt`FDJ_}MKkorGBw4fS<-b0e>9l>fjou4RtxJJ<~jbXG% eoiWPxLcGt@Vw+^fSj@7nr&yhd;+v7Q5B>s!3D$xD literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class new file mode 100644 index 0000000000000000000000000000000000000000..edbdb046ec726139a3a03e59c66f822d82fa8479 GIT binary patch literal 3579 zcma)-ZC4vb6vzJ?NV3^16hmoCE0j{uKtp4zRSPXzo-7zBEiH;#?S^b&W3n5QO%;5o z4%-A?%es!+&g#v`un#(0KAT$G>qX<3g=<4 zD6-gPQDR}Tc+6st#Xbv*MVZCtNmMlS;gO0ew>Aq$MNP#QD(Wg4DqIy!6;D)rsp2aQ z2RKymwTf@p^e~BUllV?S%ql4uD3pySM!sU$d-;N6@69PlJ+|r%cf+Wf3NjtjTW;O* z4AhFznom{@+t@Sf3dRa`C-0g@)i&Myp}U_iIaR~5^UKv*#W^rdavV2lq@qCGx9aAS z;gbJg`=)DE@;pLTiH1=z>IdC>FFDO(g=YtLoodx;G%Uy7bS&F#C`i}#9oyV!R*THh zQ+A39&PC9yIYn}!mCTw^cdMrDDj1J2U25Af)D6qF+<9`Jo!VB=yXcgN{zSoQZG7J# zK4x}yjmoxBx40h+_PYBParW(*Zs=6OM0V=`Y~9!BUN)Ki?^Vp0pzY|m3PvLL@oytR z8+eAJQJ&e3UG|g9&Cbg{Nv^~EX(vcOdF-+q${sgkhlAvB@mN5+y|zO?NM4T{cexI1 z*>#FsZv~l@qLnQ@P2;!Q`Il)Opfdy0WFDFf2JE2)yVuCgdMo$GBX77P`!({~UU4z% zs@n^A6J{;6-x_0uJ)P!O!iTEUWJfnnv#a#H+vn?i;Bm6$$=1ojIo?#IrOUxXCBv5L zI(~TR=vz*+zH6>nobY`u;LDr`I@Pu}bX>tz9eKQ_<1!|6%pj-Z5{oHJ>v#pP>X_t- zi!3f+Tt^lY3Qmiuw9vFFC4SWLtW}yF)A1DFv-m-Qo@-aB*)h7QT&pH=PtAFi#-C^v z8}6lYesN*FKi5$=cwjIm))pSsazTmXP9j%!inC)${HWt07U=l7u#~VtY)Vrw`tOyH zidcBiJH@iOOI0Xg)M}%qk(G#agoTqOINF&Bk zAuYxs@>+_Q*HZAjmICIr6j86G@Omx9+G{EBUQ1cvwUiRno`J#{Lh>5*^3*ES#;0FE z`NcDPlVrjhOyDijb>9GQd)q3wj#(P%Ui=)fpM}Lk(#3PQ5iFjklf`(e=}W&N7H+M1 zqr-^ftmomBZxw9MXnYQ)zKMAWNRJ3IA_aK|@5(@WM34&vG9CfK7t0{Gupj~H6+tGY zAd6U%f%J+XQv@;{0m6}HkY%h$K;k0Ej1=TO+?IjFMUX25ay0^kQ;$Jbr636rJj4{XqDTpS5JdlEH z%Rw{|WQRaLiU8rd${-)$Ly}^Sq(zX2Qji^T?=SAkk+cY65J)isgbO``d@Q{YT?8?u zAfL!@L>ECU0x3s;@Q=bE^skcS8~Kx}FaHnEen;QV3-o7B9ARMkInqaXDUFYY{L%yD5`%}K2VEweO_p;3yUyt+nu&=AEpY`>gBb;Nim;G*xr$$IW!l-yP RwT`QK*8Z_R^}eRh{sHfPcUS-b literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class new file mode 100644 index 0000000000000000000000000000000000000000..d99714a9aced301478b21aeaeb757bb3abb83501 GIT binary patch literal 1911 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 literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class new file mode 100644 index 0000000000000000000000000000000000000000..6cc51e1bb7af657e6d1822ad15529079872cc4a1 GIT binary patch literal 4056 zcmbtX`F9)D75+w+Jmc{s5IG5m5Xg=r+Yw7>NSv5}?T{GR3315U)*Z_ed5kn8Mq@Xo z3oTutrTa!(macR!ba8Op(v9}?^qlew=k%wZ{v-61es^Z1k!6d(!9Hi+dw1@;%Xhzb zpXML`yYe!CJMcFh`%zRets{YACv429ct}SIMGYlcmvuOBMN-l5ut+>vR5kcA&T5#G z@%z z%J{elpHT4`9k+<^voby@!p}*#pBEQj&~Qe>Sqzh*>&%S$Uy<>v@~Eiz znu@P0Xg_E>wm+btt$X)r1<65o%2IGm-gd09+47|2oiZm&l%(@+!7QCNJzLh1FzHX* zRRy`c=jMFNEIXE;d&Hm4&H8q!nmcJ#XG{LL<)3m-xHImc>&#i6Z+ZO+))m6VDR;PB zDY^3&Jsj@N&zN&&uKI8(-r66_xZkk~zU?~wyF;nC$=&05=6v3+`ZU{Sl`9IiG>0?g zmQCBq)m%|A;W6y>vF&=OVuZ0N*bu*LaIBz%E`oq*AktY8#>VAX%~xu8?OQGGgI5c8 zfI+Pp_szmXqh=*Qp7d0p4__)+6~Uvb;v0-?+%7t%KkE_8$#;n5TZ+l37jeX$RM4}k z&sL>spK&KA>?t8uQ1z1O6m#RgXFElv+aYg#+ZX2PW!ssknkCblU#>mm&XS7M*30Il zx<-;)S)1G64%Cdlf1qE*Qwom0^(Guwu&qVaV^t>B zN!@58Q`-M_Qfjax{5k&4(`vG)kGr#8!8&3~jW*X0P}5o8BgHjv0F0q4DD?8vLd*?( z6W>yBQ&SIVI3cpBVTle#WL4(#^on@e38d6fZ9rcoDx+u(sfq z%XYQOV>eML_y&G0Qlm2MI@W{}bW8)k5z{LYGTnL$8ZzC0wvJh}yda<7V!^;=yrdx0 z3;dg9ut7yd)3hb|m*%P?o`jeu) zvWlNjA$G;fqQOsy{$C~kzNQG@{8CVGZQKWrPtLH@v%v-;xe&%5$k*E)yFguD=N%80 zV_o7N-ecz#s71@qyH1fdBIY+XnB5~RWb7_fROigntabb%iP}99wXI;2ye3qss^uSJ z!|G}@7`&5pUEM@jf_Pc4z)Lq$r?ry3l!{Z6;P}c#MNd_u`tUj9iHZXIhLtH$*q#E_pd_NhN?waHAo`1 ztds;;EQ?i63AW-c{*ITwBow)R_&mr}j-$dcmAwq*MNSep#AkaTT#EtDjZgu1<1kkp zxCi&5O*Sh}@`rYkvi~e0aqcqOMzf1ZDtHQiUqXt4_OZTfT3v*ez)R>@fX-#-B8&tU zu!i%s(fk_DuZ`yGI8QI4OLW$AzF`p?W&3ptxSq>Qyu5+SP0_9!`=;`fSK<}C7-?)?6^eO0lff*(PR7Q~I zybBuEV;wdigN^9Mb=ZsRiA@H1+<>##gd%Rl9KTr}!_B;xxA02bihuHR*Dn@D-T?0LQ_7bx`VzP&M=Wr|k5Ahr9BtN;%5;x)30K?jZ zeRvS38T<}vp5ZJ(&27{<$M6pk>+_rm*DgdDb%_Dfr1w&3q6QLPp*N|-a0F7mhEZ+_caSc7M|-pBJ0lvsi}MEV?Ca?b@pv`F zqo)~;yI8#aB+daAy`K~~NB|CTHNfZHB*EbTjx7uzL&CfdCP82*QNkLvCYdms1*IVs YL{gwc67Hx`Veg6@r>J64C4r0o2W%})o&W#< literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class b/ exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class new file mode 100644 index 0000000000000000000000000000000000000000..a6d56e65ca739875897e63dd88ef3766b37069fe GIT binary patch literal 608 zcmZuuO;5r=5Pe%ptEGy{hp4DAYEm?@2aXsLL*l970wK}cidBlxlI>O#f0dpvn)n0! zQN~&5!6-eT(do3>8mAuJrjh z^ribO2kymW()DB6U|5pm+k8Aj_{YeQjgvsq&x%v?h6!nN?*w%}MdHCtAxs59hzuD= zNwhjqBKrPipk&!8)tSP!VPc74YY|Xq&Qo5jR83ZG>|&3kEE;d|nAnQHx7Hf*IG!!d zqQDojD-!C_o$Fc;2efj7t^x8)$s)TtRg?dSi^dXbx7Fi%Y8t*Dj+k3{z55jh^#>#sFK}4AswibSJkZkhU{PNBj`Au Paoh8zl$%~nBN|FSoY#6G literal 0 HcmV?d00001 diff --git a/ exercises/zth-app/zth-app.iml b/ exercises/zth-app/zth-app.iml new file mode 100644 index 0000000..76ade37 --- /dev/null +++ b/ exercises/zth-app/zth-app.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/.gitignore b/.gitignore index 485dee6..523b702 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ .idea +/workshops/Collections/collections-workshop-part2/warm-up2/.idea +/workshops/Collections/warm-up-workshop/warm-up/.idea +/workshops/SQL/SQL-Workshop.docx diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name deleted file mode 100644 index 683d4cc..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -warm-up2 \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml deleted file mode 100644 index ec1af73..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/compiler.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml deleted file mode 100644 index e7bedf3..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/copyright/profiles_settings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml deleted file mode 100644 index e206d70..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/encodings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml deleted file mode 100644 index f33320d..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__junit_junit_4_11.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml deleted file mode 100644 index f58bbc1..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml deleted file mode 100644 index 1cfb5a2..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/misc.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - 1.8 - - - - - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml deleted file mode 100644 index 424e09c..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/modules.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml deleted file mode 100644 index 922003b..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/scopes/scope_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml deleted file mode 100644 index 3b00020..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/uiDesigner.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml deleted file mode 100644 index def6a6a..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/vcs.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml b/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml deleted file mode 100644 index 5663161..0000000 --- a/workshops/Collections/collections-workshop-part2/warm-up2/.idea/workspace.xml +++ /dev/null @@ -1,1185 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - localhost - 5050 - - - - - - - - - - 1414595330574 - 1414595330574 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/.name b/workshops/Collections/warm-up-workshop/warm-up/.idea/.name deleted file mode 100644 index a48d1bf..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -warm-up \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml deleted file mode 100644 index 0654bf9..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/compiler.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml deleted file mode 100644 index e7bedf3..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/copyright/profiles_settings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml deleted file mode 100644 index e206d70..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/encodings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml deleted file mode 100644 index f33320d..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__junit_junit_4_11.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml deleted file mode 100644 index f58bbc1..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml deleted file mode 100644 index 497218d..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/misc.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - 1.8 - - - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml deleted file mode 100644 index 97a367c..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/modules.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml deleted file mode 100644 index 922003b..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/scopes/scope_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml deleted file mode 100644 index 3b00020..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/uiDesigner.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml deleted file mode 100644 index def6a6a..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/vcs.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml b/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml deleted file mode 100644 index 5d9b462..0000000 --- a/workshops/Collections/warm-up-workshop/warm-up/.idea/workspace.xml +++ /dev/null @@ -1,1234 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - localhost - 5050 - - - - - - - - - - 1414505612656 - 1414505612656 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise0/Exercise0.class deleted file mode 100644 index 0f75b445b8763a943ffdc812f3d72ead1051b38e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1946 zcmaJ>OLH4V5dKDzy?U(UxBQ450+?V~mgQgq#4;vv9w3nIfQ>^OUTbM0uOmxhwMxaD zbK=B>1BYC4NpXaOLU0vOMHN(Wq>2N7B^3zY>}sV|%5d18p6UL&d%o_S-~ajHM*s`3 zqBxF44VfqcSd3x_OGSCTmO$u2r62`*b7ont)%SO# zwQ1~>cruWy*JPg^pW=-HkPTrPQ-mJ;Ar_84>HIL>q1e>8ul?qHGbvvWx>a%COJn zym##2nPSvuRPMeQ@y`1kRJ}XR_%N-2OYUJujmylE@;Unx{Fi^vhHd0;t{PQ`K=xe2 zriS;)`@Uh81>)1!eVI0F%Pbc&PG1bGNTvsmFbhOCDs?L_FPo}S$6CbCDPDC-Yqp3XHTH+gK!#b+?%(?l5H!?@fj*jP5^?hyp`p%xrv$gT| zh5W>G*4hTI-2&Pzqg0pcHx$F!gpcC(zy*y0uQNRDGrGAliERPB@#$s|hf#k4 z913mMsIAG{ERz2evA*gz4r;dCr=e1(xjDOLC4GgBw#l(H_8A~lcF;p!5@+n1#qf_c zs#RHLt*N7G^_AbzGc~M!e{Z(_$3JXWTrd8J9i=p}-c)tgFVIz0w|R<7FCX6+&9Rp_ z?xC9bIY*W>@f`>jr332dPwUoU_X(+3s)c^?y(VYyEFZPwd{TiRgc^Iw6WlFu6EhXMhX`DIfM71!{XIerbX`sM zX)P`0X$^F*&OU@D@HM8sL--I8qM|&C2{fP&^fYj+f!+rC?mzj94h{4NmnV}A4BSJa z4ML zA0hP^Q4I@^Xpi7!oN-%)vqY#~#||+{(#IMYf4bvm*!fp{9glJMDj@=|Q3i1KUxu;N A!~g&Q diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise1/Exercise1.class deleted file mode 100644 index 8a6d03013336340247861707d58502a0de058da8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2524 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 F{0H6iyZQhC diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class b/workshops/Collections/warm-up-workshop/warm-up/target/classes/exercise/exercise3/Exercise3.class deleted file mode 100644 index cbebdd7e1d45d8d6c314fe9a4ca516a7ebc7abab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1702 zcmaJ??Q+{h6g_LZk*z3cwOyL<1sckjoM^zVOv{{x_k?{ySV&EXub=kOkG zWbwX^5AdN{ZfdCM&`{N|sw1c5M>?iaoyHn&P2*$S%3@u~+Zr}>%%Pga9VIu_vZa+d*|ogA zN+akw-d=5uE>o+H=LBm4^Tk6BwZ$EQ%!Y3>*vY!%$?ZXBSN59Lu1ih6?zb#=$Lcxi z94j+H+vy8jsLP*ZujTY*WwfbQHe*$lmkL*4&a&-IS9YWq^qYP|26Rjp)ty?~>bI#- z*G@{Lf}S(3zxCds?wgU4<$92tJX|g%eHUpnp zX|j<1O;f`I0}t`JfiKWt|0b;&cjN3t$AKmLlt4G5j%jEb_!2uB9+5cqpzAs+PBtH=% z4%wqDLi^05ts&K>IGuHu96pzPXEuD-W!{eO)fS(Ok_q3=#)vm8fUd_}M4u_E+m#*x z<)boI8LN07=U z*NfC_@tmU6OD`ZwOMfBtdx*Qlbrxx^1!Nc@#~7D+T8PlNg1300AKnh53%rA36jQ9x zFGJgJe;}RD3~_?8^e0k7OzlH^`~unfK5~@${e4VR8rw_C{t`1OJX)S?%h7h0+H(Hn zOPu0{vGy@Xr+j{Xh|^0$oEc&vx@2THOT+R}hSz8)j}5BQG*qQGFvHbEmR03hNrAOo z!Xipo=1-x_FZ>Gb;VPQAh7SK4zu-E4#cJ4*QdDc)kpgYXPtgBoEOD3O^NexIylW-A XCC&H>RT-lyW7Jim1l}bsg=?<>ZJeVJ diff --git a/workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class b/workshops/Collections/warm-up-workshop/warm-up/target/test-classes/Exercise1Test.class deleted file mode 100644 index efcaba232d23c7aa218d061c5f8c43932f6600d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2443 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 AR{#J2 diff --git a/workshops/SQL/SQL-Workshop.docx b/workshops/SQL/SQL-Workshop.docx deleted file mode 100644 index ec496f914bacf9d965190e0b5e657ad0b0d43e0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24418 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 PJ4gX<(MIQM@%`#Q7Bw}@ From 273f178fbe4a2bc98ea2049799a77097f104e95f Mon Sep 17 00:00:00 2001 From: oana-p Date: Fri, 14 Nov 2014 00:26:14 +0200 Subject: [PATCH 9/9] added zth_app project --- .../target/classes/ro/teamnet/zth/App.class | Bin 1777 -> 0 bytes .../ro/teamnet/zth/dao/DepartmentDao.class | Bin 2873 -> 0 bytes .../classes/ro/teamnet/zth/dao/EmployeeDao.class | Bin 9299 -> 0 bytes .../classes/ro/teamnet/zth/dao/JobDao.class | Bin 2745 -> 0 bytes .../ro/teamnet/zth/domain/Department.class | Bin 1137 -> 0 bytes .../classes/ro/teamnet/zth/domain/Employee.class | Bin 3579 -> 0 bytes .../classes/ro/teamnet/zth/domain/Job.class | Bin 1911 -> 0 bytes .../ro/teamnet/zth/utils/DatabaseManager.class | Bin 4978 -> 0 bytes .../zth/utils/ResultSetToPojoConverter.class | Bin 4056 -> 0 bytes .../test-classes/ro/teamnet/zth/AppTest.class | Bin 608 -> 0 bytes 10 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/App.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/EmployeeDao.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/dao/JobDao.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/utils/DatabaseManager.class delete mode 100644 exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class delete mode 100644 exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/App.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/App.class deleted file mode 100644 index efec92ad7d429261bb55e8c8acfd39e2bf57f8f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1777 zcmZ`)T~`}L7=DHXb_q*?g;Hs;rrK&!LYHD&Qi5QBwiE-c20@BiC!00dy4j7plX~L6 z(u>ej&hZEMPrUcKr|;|%$(Om9oq6Bq{eEWh_q(@$0r(t0CoqrfC>~-}MJ|Cge4%1p z#YO^OA}^Os1zQP>BCBFs#Ur_Wtm27^9TiVi>?-&w0UcSn6r_Va1^dI~oPM!?5}3s^ zsd}#9YX#phsExq#U0$;o^ujCtni~#xD@IZHwp+i^Y*C}ee#%-5jHg(dUQy7c;6|$Zlpr&+8k8CeTmcg%%K_$4BDQwRr*NW*m zjhZX1BSb^kjK>P&$E;f2@tT&k%{_)>Z+>O&8ILXyWT3VU2BAG!$bSZeo-K4W zqgih^1aa9_|=lP?Z- zlDpfRTgiil@MtQ|4F!i9j_@4~m6R{tBG=Y4%>{|g%VBGE2T<;-6PqQ`r1gh!? zC5B5ETrGHRMb>I+C`0nC#|!m?Ve$h1tn`Z5&?PE117X#OI$nbm=hU%1<2l^|L3e=& zN^PDFeRPYdoVo-#l5(m3@kqAb>`6#AFEF;b;3Xbdd)(y}%cpKsEO9|qhTH&m0|G>% zKAumQRm=RP)87Z@{(7J?!&qI`o$U-5bt%^o@LZDa7tyV!-1Cmpz8N&z%>P7-tV90f zeV;cAb|9#?UA=2ZlCMf?S0*U^x1Db`CEcD3_TQ15}B*ZU29?dD5GD}C!)=yJ|#D2&Ia*DYYuCB&OHy0;`%q<3)+cISYT!D%?Oj3C>RQNoVdy5La zL#3@yejB)rUD}->3lpnh9rvPKNwYxqlk}csut=56V~6YvYRm@VmT;HioKT(1^j8+g TJ;KTkM5y~=`yP;N2rKUaTbIM! diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/dao/DepartmentDao.class deleted file mode 100644 index e428561361fc2168681b0cca06d770c9f9d4bc86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2873 zcmbVOTXz#x6#h;!lS!t5LZLu_Y6wLNEd*~UNhuU)C6I=;sR88XG#T2d$xJ($AZ0BV z54v>mBlNYe_yVG9iO>EK|AqBClgX{cF_L8m?-{>4-_SYdWqYFNHIbQ;=UbG|Xz4(=aa(8Mkc9n-B<( zoG1w>mz|0!(4V(#v(Tt5n(l(JSS4p5@05*d$#5-s515L#Y}Ex)dDlsMrctv^Fa5+@ zPFD;keZ^cgT(4%@-W9{i3hZ7oy~%2|!{)=Wk^GAB$Vk`Ms_Dy)ZJTA!a_sDhCb!{P z)%2w68tZwh?$Lx`9Q!*jigWp?$7OTXeo5yJa5(;Rj+8umm%{pGb}r{z+gwC z%ca19x>==vhB)myH9x_k=UVoX%-xT&YS>HZCXXhSx>xfA4tLDWx-w<6QuGYZl!;So z2QTF>W{g$epkMT&h6N3uYACTwY?y|d04X+2jF$i3N3SFU--USc!0Hg}r`fxb$++iXHm;%)s4S#-N=s{?_3z1Uh`ZQ<)& zQ@7X9ze-udErMJ?FFFmkY))G~hC3x7CQr+z#<2%`1n@sP>sWo!acsQH#LF6{|h8}^Xk<6 zRCl~qC3!x1fn|te5#=~4FynZLr8t&h2_*lisc%r(I@IiCXD)6mu5fxLXD0@USNd9Q&S85D13(l;w;&9PCGF{JfnFN=Rq!*kHjs!-# zX0iSDZ}*^Dt~zzOrB}J1Jb%M1xJH?rSd}Fx8Px`9F7#^xTHW-Tbx}uh*ZdVitVz*yHf6iaS!${#6PnA@f=UI&7LU7M9k~BH; zypB06ke?$Z?_ocyMdkpOADc~TgrmsL6L$2i1FN)K=0Z78&-^5qbz$v~>`t;}Tz zQNDW^)L2q7BK8zz+8$<|Rj!(2c!!+h)T|-8$!kQzh=vmyPHGs{Fs9)Ygoe|RO}1%@C#$i!r6ESPZ(0-P_ zCg^P(Ps#s=^mqKbCvmdM0v6i+A7*hSPE`6D#Rv2kq2(qzRN8D&PXkJ)g=cNVJPQyb zd1o0ZfjYRGOf)HY;#

&* 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

jBG+fv_lK_YUD##MOy_hPBEd=IKwZ8 zA2OIq7v(Q|yXK^fJjlUu`eKwafe;TPA^Sj35{dwVH~sFP(UXXTUt`Cg=-D7nGO92O z0MeNFs|@dm**8?j1HlFonOIY*WweAQ%wq2(0ged{C(AQJD$nySTUH8qi<#yr5oZ<8 z@SJjsl;C9#9IG4?IJPiS^l%bA807eeIEE2QPSNKm{a;{&a~%G8%#+TuAGg?%yVU9A zOVmB0?g=vVe3t%48S4V0ox^vO|3LZ$#ypTz*}a+O@Q>1q0Exm_gZ%643+8Yu&?@xl zgG8YhpVFA?%O+f225=FwvmRW+_|XGSn0~(ZfFm;(f0_LV=co}-`U%=55w5o3p$$#A stm6D8Q*FmfOHXABHOdwjo`!$21eoiBw$*^)J8-wngLrQ)(2BtN7jc(OKL7v# diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Department.class deleted file mode 100644 index 78a93a18d55236b4dae0c30a5dc7f2df027d31ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1137 zcmaiyZEMp|6vzL!PwBF_u4%XVFlU`p)9xYa-fglMDuPfZI2p(oa@$vmFMm5`5qb z<$hKdt``ir^xanz0KzHugnC1yw$n^;B&@}&_-D<@{?kxZ3Z3SPo2k#FnY2@-L|NCB zbkf9Ar!A`>J~5al!6@vC*HX7ynI_oNs#>s7v#^AUg=JJ3)}~s=30{n3-xDDek&g(6u z;S3*5Va7ksc9@>WtUn=I^eBNGebj%nBME3NfkufM**cwES{bdy)-~AI$ZaKY0=?B$ z+FP*$)^L+f47YHb>}>Eihu$}}TMQp^=+WwB*w6sb0z#@uNSeIXo&ZVTh z=GXmb>buyO1Cq~zROW)*Lt`FDJ_}MKkorGBw4fS<-b0e>9l>fjou4RtxJJ<~jbXG% eoiWPxLcGt@Vw+^fSj@7nr&yhd;+v7Q5B>s!3D$xD diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Employee.class deleted file mode 100644 index edbdb046ec726139a3a03e59c66f822d82fa8479..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3579 zcma)-ZC4vb6vzJ?NV3^16hmoCE0j{uKtp4zRSPXzo-7zBEiH;#?S^b&W3n5QO%;5o z4%-A?%es!+&g#v`un#(0KAT$G>qX<3g=<4 zD6-gPQDR}Tc+6st#Xbv*MVZCtNmMlS;gO0ew>Aq$MNP#QD(Wg4DqIy!6;D)rsp2aQ z2RKymwTf@p^e~BUllV?S%ql4uD3pySM!sU$d-;N6@69PlJ+|r%cf+Wf3NjtjTW;O* z4AhFznom{@+t@Sf3dRa`C-0g@)i&Myp}U_iIaR~5^UKv*#W^rdavV2lq@qCGx9aAS z;gbJg`=)DE@;pLTiH1=z>IdC>FFDO(g=YtLoodx;G%Uy7bS&F#C`i}#9oyV!R*THh zQ+A39&PC9yIYn}!mCTw^cdMrDDj1J2U25Af)D6qF+<9`Jo!VB=yXcgN{zSoQZG7J# zK4x}yjmoxBx40h+_PYBParW(*Zs=6OM0V=`Y~9!BUN)Ki?^Vp0pzY|m3PvLL@oytR z8+eAJQJ&e3UG|g9&Cbg{Nv^~EX(vcOdF-+q${sgkhlAvB@mN5+y|zO?NM4T{cexI1 z*>#FsZv~l@qLnQ@P2;!Q`Il)Opfdy0WFDFf2JE2)yVuCgdMo$GBX77P`!({~UU4z% zs@n^A6J{;6-x_0uJ)P!O!iTEUWJfnnv#a#H+vn?i;Bm6$$=1ojIo?#IrOUxXCBv5L zI(~TR=vz*+zH6>nobY`u;LDr`I@Pu}bX>tz9eKQ_<1!|6%pj-Z5{oHJ>v#pP>X_t- zi!3f+Tt^lY3Qmiuw9vFFC4SWLtW}yF)A1DFv-m-Qo@-aB*)h7QT&pH=PtAFi#-C^v z8}6lYesN*FKi5$=cwjIm))pSsazTmXP9j%!inC)${HWt07U=l7u#~VtY)Vrw`tOyH zidcBiJH@iOOI0Xg)M}%qk(G#agoTqOINF&Bk zAuYxs@>+_Q*HZAjmICIr6j86G@Omx9+G{EBUQ1cvwUiRno`J#{Lh>5*^3*ES#;0FE z`NcDPlVrjhOyDijb>9GQd)q3wj#(P%Ui=)fpM}Lk(#3PQ5iFjklf`(e=}W&N7H+M1 zqr-^ftmomBZxw9MXnYQ)zKMAWNRJ3IA_aK|@5(@WM34&vG9CfK7t0{Gupj~H6+tGY zAd6U%f%J+XQv@;{0m6}HkY%h$K;k0Ej1=TO+?IjFMUX25ay0^kQ;$Jbr636rJj4{XqDTpS5JdlEH z%Rw{|WQRaLiU8rd${-)$Ly}^Sq(zX2Qji^T?=SAkk+cY65J)isgbO``d@Q{YT?8?u zAfL!@L>ECU0x3s;@Q=bE^skcS8~Kx}FaHnEen;QV3-o7B9ARMkInqaXDUFYY{L%yD5`%}K2VEweO_p;3yUyt+nu&=AEpY`>gBb;Nim;G*xr$$IW!l-yP RwT`QK*8Z_R^}eRh{sHfPcUS-b diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/domain/Job.class deleted file mode 100644 index d99714a9aced301478b21aeaeb757bb3abb83501..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1911 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 diff --git a/ exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class b/ exercises/zth-app/target/classes/ro/teamnet/zth/utils/ResultSetToPojoConverter.class deleted file mode 100644 index 6cc51e1bb7af657e6d1822ad15529079872cc4a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4056 zcmbtX`F9)D75+w+Jmc{s5IG5m5Xg=r+Yw7>NSv5}?T{GR3315U)*Z_ed5kn8Mq@Xo z3oTutrTa!(macR!ba8Op(v9}?^qlew=k%wZ{v-61es^Z1k!6d(!9Hi+dw1@;%Xhzb zpXML`yYe!CJMcFh`%zRets{YACv429ct}SIMGYlcmvuOBMN-l5ut+>vR5kcA&T5#G z@%z z%J{elpHT4`9k+<^voby@!p}*#pBEQj&~Qe>Sqzh*>&%S$Uy<>v@~Eiz znu@P0Xg_E>wm+btt$X)r1<65o%2IGm-gd09+47|2oiZm&l%(@+!7QCNJzLh1FzHX* zRRy`c=jMFNEIXE;d&Hm4&H8q!nmcJ#XG{LL<)3m-xHImc>&#i6Z+ZO+))m6VDR;PB zDY^3&Jsj@N&zN&&uKI8(-r66_xZkk~zU?~wyF;nC$=&05=6v3+`ZU{Sl`9IiG>0?g zmQCBq)m%|A;W6y>vF&=OVuZ0N*bu*LaIBz%E`oq*AktY8#>VAX%~xu8?OQGGgI5c8 zfI+Pp_szmXqh=*Qp7d0p4__)+6~Uvb;v0-?+%7t%KkE_8$#;n5TZ+l37jeX$RM4}k z&sL>spK&KA>?t8uQ1z1O6m#RgXFElv+aYg#+ZX2PW!ssknkCblU#>mm&XS7M*30Il zx<-;)S)1G64%Cdlf1qE*Qwom0^(Guwu&qVaV^t>B zN!@58Q`-M_Qfjax{5k&4(`vG)kGr#8!8&3~jW*X0P}5o8BgHjv0F0q4DD?8vLd*?( z6W>yBQ&SIVI3cpBVTle#WL4(#^on@e38d6fZ9rcoDx+u(sfq z%XYQOV>eML_y&G0Qlm2MI@W{}bW8)k5z{LYGTnL$8ZzC0wvJh}yda<7V!^;=yrdx0 z3;dg9ut7yd)3hb|m*%P?o`jeu) zvWlNjA$G;fqQOsy{$C~kzNQG@{8CVGZQKWrPtLH@v%v-;xe&%5$k*E)yFguD=N%80 zV_o7N-ecz#s71@qyH1fdBIY+XnB5~RWb7_fROigntabb%iP}99wXI;2ye3qss^uSJ z!|G}@7`&5pUEM@jf_Pc4z)Lq$r?ry3l!{Z6;P}c#MNd_u`tUj9iHZXIhLtH$*q#E_pd_NhN?waHAo`1 ztds;;EQ?i63AW-c{*ITwBow)R_&mr}j-$dcmAwq*MNSep#AkaTT#EtDjZgu1<1kkp zxCi&5O*Sh}@`rYkvi~e0aqcqOMzf1ZDtHQiUqXt4_OZTfT3v*ez)R>@fX-#-B8&tU zu!i%s(fk_DuZ`yGI8QI4OLW$AzF`p?W&3ptxSq>Qyu5+SP0_9!`=;`fSK<}C7-?)?6^eO0lff*(PR7Q~I zybBuEV;wdigN^9Mb=ZsRiA@H1+<>##gd%Rl9KTr}!_B;xxA02bihuHR*Dn@D-T?0LQ_7bx`VzP&M=Wr|k5Ahr9BtN;%5;x)30K?jZ zeRvS38T<}vp5ZJ(&27{<$M6pk>+_rm*DgdDb%_Dfr1w&3q6QLPp*N|-a0F7mhEZ+_caSc7M|-pBJ0lvsi}MEV?Ca?b@pv`F zqo)~;yI8#aB+daAy`K~~NB|CTHNfZHB*EbTjx7uzL&CfdCP82*QNkLvCYdms1*IVs YL{gwc67Hx`Veg6@r>J64C4r0o2W%})o&W#< diff --git a/ exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class b/ exercises/zth-app/target/test-classes/ro/teamnet/zth/AppTest.class deleted file mode 100644 index a6d56e65ca739875897e63dd88ef3766b37069fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 608 zcmZuuO;5r=5Pe%ptEGy{hp4DAYEm?@2aXsLL*l970wK}cidBlxlI>O#f0dpvn)n0! zQN~&5!6-eT(do3>8mAuJrjh z^ribO2kymW()DB6U|5pm+k8Aj_{YeQjgvsq&x%v?h6!nN?*w%}MdHCtAxs59hzuD= zNwhjqBKrPipk&!8)tSP!VPc74YY|Xq&Qo5jR83ZG>|&3kEE;d|nAnQHx7Hf*IG!!d zqQDojD-!C_o$Fc;2efj7t^x8)$s)TtRg?dSi^dXbx7Fi%Y8t*Dj+k3{z55jh^#>#sFK}4AswibSJkZkhU{PNBj`Au Paoh8zl$%~nBN|FSoY#6G