From cccbca06bd24a5eb87f24587dadd433a9db95ab8 Mon Sep 17 00:00:00 2001 From: Seil0 Date: Sun, 9 Apr 2017 15:07:56 +0200 Subject: [PATCH] added poster cache --- bin/application/DBController.class | Bin 20342 -> 20428 bytes bin/application/Main.class | Bin 6479 -> 6866 bytes bin/application/apiQuery.class | Bin 7842 -> 9357 bytes src/application/DBController.java | 8 +++----- src/application/Main.java | 16 ++++++++++++++- src/application/apiQuery.java | 32 ++++++++++++++++++++++++++++- 6 files changed, 49 insertions(+), 7 deletions(-) diff --git a/bin/application/DBController.class b/bin/application/DBController.class index f400ca78de8b12a77224402102b0ffcc0c00ba7c..9f604cfb1959e0ac1469a828e3b40f12d3ebf22f 100644 GIT binary patch delta 2930 zcmYk830ze57RP_Tb1wr7qbXZqD4Po)JBWayplM=09z|AYS_qRXVu@=Ou4Njz+;U4r zbIZz&!2!g~)ZCI%^HuiJtXDnjl~yn9qo%&Y=&L^S`OJLh+&jN>&i^cTF0baXYTA$9 z*tG{hnjGI@zuwlrb#ZCw$g#u2E6T%5ic3Z~v%+0%+MSjDO)|qFGi4UxRZ%|hfjpvB zbj*NJ#S@DY$2uz#)zZx_bCBaL&k>Hl+U+R7MPGSA=6lOLBGd|t47Nfee2f>R%IXvm z>$^Y}dCNi~xcQ2gLl%o=O^7J6z2cB1veY^i5$m%+mN(m1ShmPa+bV~wmTId{WSniS ztn-%FtVxk!#(LRcEsxCVvdJN@vmar5%2`%E(djL35Urczd17+n_!8$>XJUSNsnZWX z%3BU5$`YV)dCz|a?9CB3NcU85&!rVxhh|yOp z($N{c5r=%lqX-EoMIy?PgsDiz9Hd|&Qt>L%un}GGCZez%?XeRbtV10?j>td@WFi__ zs?kl)wkJj*2NlT0WYwIB0@t2S&v6@`=RwTnN&Wsg=J89+=eK(ARlFoVSRlbz zDDAOGQm|O=hb80iicG^2ZLQ_97%QY2E2SQ*WG`0BepJg5td$dZP0nGR{0Hmh5;n+n zY&0qjR2wbuh7pT5jTF3Pbio#*8@3u{*ls+F9magr7;E7&YEf$(!cOBexQ(w+XIw_T z>4ye09J|cUXf)HX+ss0Zc@OrOd3eXn#};!K_M0Pdz#ND7%qci%R^pI32ZzmhIAU5j zYA(aEB=c3AFspIWT#t{;&G?781s|I=_{6Nk8FL@bnoT%op2C;rX?$g##W$|c5@OBb z@8F9c5P%=i78ekXi`o=F>AC-`1^z{=Z~=R82?uZ)M{xzGa22268qVW)_QG}c!3|d9 zDqknLmBLyYtf$Gn^x^?}vxz<~XX-i`*aE(6jR5*1g#qZzK)k>pyvSgj?HH!7nGEL~M({kNc!BMCi5+;A9Yxqlycz2nk{&F%Nh+PJ(y6$MX-Hr? z9${A$GXuk!iG^xk!)$C|4>U3d-!NBQ^un*~t&Xx8&wE|98A(Rv{V@0d94tgTK8R=z zL^>ZrCLcjh7U3Zd)*gBki#P;JITY`z{UnEJ6XbraOYc9LZFUVh%@hEXQaD zWn98?Zss^1;!`}w@w~zc@#h4&n-irACrJS(%jif>kx85?Gx)U3sN)J8pmqya;w)F;2d>rniD4#mud+>tIE5J4SN{o@5Os(WO(kQ-{or^{m79tjAAmz;E1zYi!iM*sTY&*ANAI=?4%WK*AcBEyxP4!HPyi76nK|9a7@l=;}sKSIfR_SZPB`-8mh^7YSlVSMfuR zIM82O;6Z7L$K(!-l2(`?tubBvF<%074+ZMJ3Bp^tr|RTR?326DBq8`z+TdSuH!esh zu1H&&(vE%-#sCRts6;SIA{i%9o|>J%6(q_kF;+{c@#@C3gUuuzl*B_Fl?)GcQZhXh zt>opQ7$uvBVwJo-)LF^LLvc#J9*S48dniFa{XCSYX&8&HKM5~zExlY z8U%GX<(BDgnQfiEuWjY?d!>Jftw!bs`8;1QFS+IA5U(J+TW;As#${@pZD)`@#B|H6 zYi}OWA`h>Xm2O#M{D}=ZF)F{&fRS$BgtR}ec)cx~i;NKSw(RD@BJ&R)_iZk0kT(Sn z|JA|aTff~J;_a52O=y>8zintlA8n?cb;#2TAsS`fU+=W`4hXEgYT8U+eN4ejGE-5d z)f=sa-lw}9qScgWL`w{kB^Ftte*`2R1(JY5Eyq+z)&@(#VM)bBNn^0Cq-;s2Q@XNB zGPqMRc}B9tOS(zCbeDmWEzd{~*&scoNpj^Q=_S`HrMKLWT*F8D7)jFC$d`V`gOXhR{$^AuuaE+xK^`#PkwW7~{k$pKmG^phepOa__lV7u9o6FCW$f@sr+Q#e&SIN7)b$+P5$cx1+f~Bw6wJSQ>|{7>GD0`SNCe3!PyXS}gNe}p=Z{c1rpZv}r=>J$xPoPR S-5X;2U1tH55A>_ZhyMdzdaAJi delta 2843 zcmY+G3shBQ7RUep{T*JHD;Wri3i2>fKoGp`)3m2{q6L~=FTn-nJ4polYQE7o?PFc@>g!j0@;xVrj z`p8B*BD#t9W+xM6i`_js%=;auY?F8G{OE*6+nw@0*Ac$s3nye1=Z`4#m7Vs+=mhTy zRQO1xeLnhl%zlCi4z!hnPC0~k3I9>~<0oW|E-0LoJ-pujp;JDR!|uA4x0oIc3$bW} zICMljdZ8@_AOU$uL;>1i43aPf$(V!oSc(*^K?iKnE8jy)l;bh%LMvNhK8s961Eirf zx~NW9BL^>uQ1Cx-6Ss3WP6*I=m^(1^T7=d^O%`ikIo>kY+sk@=-Vwm1ofIcWh z7KZB;h5CH~MHq>3`a2b);6gE$V>C7^@5ESj{u1`-*+UqQI(2pu6LCQu{)Wl8k0}(q zN(ZL0A*L}(kMS5}KTQ*Ku zB{&#d=x-m1js)^1#|KE&77DSTs{!zJq<_@{LN-?@VmW3Buv z@WV9(;X1-_0}=Q^3*$$P{ZAV6pEV0NZ~!-PSmS;iw{Z@4a2~(oGVU@1_t+cvS&BP+ zhr%5+tfIv|^x`3U^DupRihl00_8VnT0Q?w;AO<0sjnIq1nvoFAL}Q#`C_ZOXe9dO~ z7sGI!;cUPb`iY&8OH8x%YN<~o!c4LUtpLEC!a((2cb2e zLPtK0ROX=v2jeLY(K>n-%lI5taVS1e`xy??l^5U!hwHXS(1#-#!WY?|MeNB@9L-|g z!Dz1JSZ?D>Jj(IB$O*i~mnD#|NHb294xA)8oGe9AoFWtXs?6k6naAm}fWzc%&Xi4@ zr9W~H9EcEqv=Jwgr2)E10Q$%y7$^-f zL>|Qm3B))F!Zc}wc@nIXC`2btV{DTqsFF||l%_Z?&G4x-$3+RlRSCyUX@R>EK`)79 zfJ8A^q8YA}tUgPZA1n*SE}f|Q(PoN*1FR=`Oi4GP)Jn;CC`QThP-`VG54BP9_E4;n zkB8!vd_5Ged^ zpocmt1$n5GQX>y_RtiP{AJuM}fDk}Z_1UG5alrd2U8XL;N~ups4NB?0-Y?$xwr$v` z1~mdZv45Cr#vyq;)Voq<2K&z4BXg@|QK(n2qgo!=J;r5fob6z+Bh;#vH`m`krg9^y zWJR^SW&Xq(Z5CB6H833=TT$=x;YD8iWka3`wI0fD$j!6<@Zs8!TO*qUPyerjx(D}e z4fUy(_qHND&GFDsi{5!bvST;0^hBtxvi$$AZ1{v0Ti}UmEQ_y3c?HB=Gq=p|QlUYJ zwpwA4X0=EQ;6t725Y4T)+Mu<>B1z(qCi+ew3CNK|)QQL;oz2fo8kpno4=nT-4(=$uqZPu(>DCSb;LcYAnxL(egJd zM)IvhdERO-1)kC_sV^LTMixJ)Y%AqqWjm};zQT!G*{#hTPUaM?>?HG(xTQ*CkY>J@ zT}obX^-_1$T0`C@9hYRcmZ=YN%vssP=~~*k<}`Ku!cR`4Gp8vzOb)s|q@C#gknSN= z-xF%!uwqnUC00RXuLe3q7x2Js?H_Jy)oqEMQ?2`A9~}^B2EyNNnBCO&%5K97J25*c zabL9@=+<1y;1yRMXPQ^b2jzN)@gy&>zBOeeyyZomCPfIAQTCGT#{M7cE~p(9AV=(q N>_$FE^$wA`{{q&gl#&1d diff --git a/bin/application/Main.class b/bin/application/Main.class index bd0b970fc4aa6139d539d58b80ff942455eaef5a..e3acf6d6a23f602769adf5a1301f7e4e79eaada0 100644 GIT binary patch literal 6866 zcmai23w)H-mH(eSW+syhfq)1WHHcCY9s`2V5=25mB$$wtyaa3U%j6>&n9Rg^V9;7! z*FJpImex|CTCJ^+YPE`Fl0vm;pW1G>+wQt;-A8w~UAwQYyLNZGebN89-#5u5gkAV$ z?sxAw_uO;O}Ntn-W~sT)08q{Zt;# zE$fY?+-N45Iw+XwEfPyc8e?&nM3Z(i8Ez=8ed;@yOlRCwy%X(cFTj};C9aosgnUAd+Vg2e`92!(J3N81ll^ni}O z-5{)^MmseI

3_TyUW}q0r1*vaxutn+jp2U`96WrdFyCvUE`xt8irys~G?Vlk5rx zYZx6U?{hP4spO!W%5dXLmY(aw>T`#}Sci86v3{~x>vDs4VuK)fz=>zw*1c0iw)X6! zjccbBxeOcCI9CfUm`;nX5Uyb?>I}A^p2nhI-9)co#dI^y(c8CEZ3tWGQfsJa zGRrtQs6wwb*oG#0F_ZM7m+`c88co$3*BKau^sB{S24)5}uV%9GpANmtpaQc(XlGE_ zMf#HiZU~)%Igy5BG&|rXGU>=R4mQSPLpr0|V1as?nNc>0aD%}`2ni|}R_>1MK#!a1 zaC$TZE1NZSx|~!@`~F}_razWe+SGX0L}bpUGK?P2RLuIqB(CmKJ)#Ds2!#3N8tlbF zL3kpgf?$r%^8sM*&_F!WczsKAbJDS)w~tCrWY$WhhY<&HW`LB5;H!^2>9j!-gI?_A zbC_9rejg^>Or¸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 CZM6ab diff --git a/bin/application/apiQuery.class b/bin/application/apiQuery.class index b1cd822629ef09739a64cf74864375b6b907c5f1..ab8b84b160c2c99f343381a736f4e413720fb1e1 100644 GIT binary patch literal 9357 zcmeHNd3;;dmHv*l_awhKjvNP+4U+_7JBz?1A;=Jt*f=pbs~tNgKv3joTS1nLB*zJq zvNRCNzK4CMVQE>i$O&oKT2cy`vX++4OgqyKGjuwo)6OuRvNZGE_oP_z0`&j+{p|Pd zIrrRi?>*Z+=RUpu*XLgVFh_o_!66tM?&*m|BjI#35f6rYqN{q%Sr(Rw`~@_MFZ&$PZo&9QwYZMW!BoVIo55&zxYG0~tCDJWfM zk=uK*kt8eXNu<(dvNjy)GSyrI+dV>Jjkmwmw+wH3bv}0xamU z#8%ltq1GnaO&^>XZ(tlI2%Hs_EgB{jXxiSo7lLC9j6$)7V<|sNG=8@x>Fs@)PIs2s4gjV2a-yra%(&1#G~DRo7dMbTGr6mM%SpQ96FKWv%tXV zSZI$}nQw6=xe?Jsus#|yYkXLYIt{h-6-(e*yn!>+jCwjTpqwQJMx(@w2ArkgOhNhJ zWe&C$1C3Zl8%RYjqQs@nhZR_*VI|i!VE4Emtv(mOKqgDljhzcV$m1k?9NX879O;aQskDEy^*5Ou215L%gRq&25|EZi;6u!pd~1^rN#g4D<)Y!kM06PFM3=y0Uf3Is z(Ui*aZNrXeT&Y^pMgtds`*9|E2fUoDS2BF$X4k=m6)#VebN5lRyhDk{haMy~T$uBa z!XXAyAUmx`afzvIQFXso6(u37oqasnB`ExVu^ z9XHaZj_-*j(x-Lw#$v}OPurME#1&_H%`G{viJR%*n$?Xy+>CANal3&#u$^%t!AUs@ zO^LhC^Syi<({LAKPR{!l_jYucNwa;m8Ky)u+(VPk_2rGSyLH@0w^`F%KWn}ZcjE!I z{RbHUvwIw5sY7;Iqb%W0JgkO2LW3F@X0x~YAHxm}-w{kuQOb>2NBN zP_w*C%Z>7E;?kJQ==dr5HE-!*&(BDxdRh``ljA-h4+S>V>G*rL?XyP5KU$ly6Cxje zg@4xYPmD#%jyKzhlQK<}IyI~?@N4{r6VOTMp0l%J&3aT#HiU%x(%FP7=O1?B<->>g zHx2(Pm}oi42y_NM!f&~G>QC*%N<$iaOb~u&;6Lzt=4DK}cuHAJ1&gwa7=c?&Lqo$? ztV_oqI9(z&Tjg0khWkGn_!It%6LASElMD;VG$U?7Xd5vYF$#S`6JQS0yIIGd8KHwZ z{z8$>?orzLjN4&Do#YHYzrtS)93~CieabY3+s$f5LKS0d84fj38$%UYDMIDhx-e;% zb98a>6b!ew(IClh3nCKHF9q@E?7A(Q18ns*1=!ynjnw)+*XPYosW zVma23DKeG*$1N!&&o0}{hM{NnCdbiN>Y1*Y%xz`5Ar(?dBUJ@ceJs((&|=wE;b2ue zsa{SvLuP3*ll7sBK*LiRGFyVS^VfDU)k&I6&D4pN9TGW`$EH~Krp)9fRh3wko?6q1 zhE$`3WOu#F1B+yijMZc=kFT#}qRGkh%7W!Z2dY>Cb5e&7y1%{k13$3$&A^k+biAY<>kT>ICd;1U3c10Mh(da-h;7Ym8q#5* z!q%CtsJaY^DwIoQqY80>Au)@W@-B74D`eb|ghFamr#k2r?m|P7HZ$wIS13AJuR?jd zbH~2I_8EBBD)D5CAs4BBSDNRgSH202sLl&=StQ%qj zgJ`WNaE0>pZwbyC=@d9(8G}cENdTa#uT+)iZ7u{hTJGOaRkGfRdtT5$iL3X84V9cmH^J>!9`4?g~ysC+sJMaWYO57-dyhLy1@+AU^DkG;M=aziL z7%ZD>W)Gzy+Zndno|oT;k3!b(eiz+KV+ zX@Ls$sv!r3$$N2xW|KCTB*Q&j(Fmn@q+C>+$)T(3=r})?H#B)YH%no+A%}!%zPCLY z?#s$#Zq~aLp@mZUYc>WB2+HcQ&mJ?$I|?<;n})olj8AKiGM87Cows4xlJ%_(bBysm|V3VAbeA zB;zVf#bi|A7|i1JRW-LWn{-w7R0!e(LYx#Qa%;RYVyoKPs%ok2sjZ)cIrburr?}j4 zltm|xt&qzLX zn5zCWXl~{EIQ6gE`?0odC(iE2`61VgkSE|dh*1HLKazoY7m9Ww>hI1V5%6Ttt9t#L z{TF5MjgV(QE^7<8_u`6vT;;zygKHGYHU1m;$l#`swjVdQ1+;$Lx_nj!w}pKBacA3p z+}#%N`S0z={rz|-RJ6nMF((MJIKdaWTvq^z2f_n!*H^Juz zKo7z14}coM7Y0C`;7bEwiK2cb4_4$q%!3vE!93VY__aLPNBH$TxQOtfJlG)olRS77 z;kWYOV#4p_!J`Skmj{;+em@T$L-^-;u%GZR^59a!|6s#PvkWT~;y%2ggX|Ui^D#jQ``k_)q_TTk2k;lu8cuS+)KTl}W?8#{a)r zt$G7v{GaZ}VrueB3H$N+UVPEI1I@z^C>0sRIy<6}?@+Rkmjk1^jJ^Ldg|7*#733axRNZ=Yxnu=SCRcP?AIv!RcyaT+piM)HKsb? zRdbe&b@z)uRLTKU1Em=$Rem|O%%72Q zFG+F0C>ynHuZ+(~`BuM_`Afz=ba+p8mQtB!>1!e3>AU6lj8v(4Z0H0s-6tnG&`RVy z3Tl48g!V{{-FsTqZmG%0q8-i@5yv_6)<;fDa_c+u$oewUs0dw!geyiQbQcn?9+A*f zNVsN1LamT+?TCbWA>q0a2}=geecs5FgC-A;OgU)w_K_*Qh3o7bnbKECxp8F5qC(2< zktvNr%AS!aM-@`0My4z-q}((z<>*4n&BIb!u2ZheZonIM%EgvLT%L0X)t!;84;}sm zTUjq~4m9`4Rl-ZwZBAI+<`49^56HD`iZaLj+NL%a!JO+|+q6%vr~6oLr^u{XUSUf` z)>66I^1ZQz-n9c|79vYEoXZ7@GIDEMNdM7aM(seKb#j-xasAY`c*k37^3# z?Bh4V7tzFev<2_;E8H*9#!K9F_%pxcd2lYToz9bK{Cam1&X>gq%W8h2+kglQ-FCSG zrrd%Kc^I9tlh;$PAS&-*qx>2d$e$2%IMD6zBkq`j3mtQjbSy>6(TcRA9lee#vB|Lu zeU1z^J3hn~r-qB2$KadJrMT3&1(!MR$K}q)2tST1oX=vbGlMIgAK)tIZ?MhzDYm*? zxYjim*SV^3y=x(Ea4pA;u2s0%brEiHJ%U?Zhj5$g6Ws2ej62**u-$zj?sVUSyWFqh zZucK>k0*e8J+-*c(~bK*+wp+sWjyHl9Uk%g5szv`ctjh|&oQUq3GH+|sa?qTWq4Y< z3D0Qv<5}$?Jg4o#F70KsXot|Ry^X!v@3Bw&1P8QF@q%_3FY7M6!cXI`>cu#ym*O>Q z_j!F14(Lru8GaOkEyCf}j$xb+RPLmp>Z?A6bcC)n$Tp|6uC+45ktzE+-M zOM_ouBj069N147_zQ>jqN9!x(X{=|mJV9@iXXII4LQT_aOjCL$_Z;^}GTjFSSZf2trFCR%?tYgn6W+n9-(JgDJLA}I##GpzkWHfmH4 zKCF{3kl@G}me`*#pum-#YHwgHG0v+r&u|`sL-2ONFB!hTH*n zmD4$K5;gK#Yrvh6p9EablGLFB3acGApKnr;Z?TYjn|0JX3>@!S2DZRvX{nM#m~N?3 nRZ-LBZ7R@VwccUN$?+59U8>hbE@S0A`6>B|yiW>;{Otb#z~J%3 literal 7842 zcmeHMd3aRUb^o2&-puG}8zI90AqWge0yKazQAWl#NEQ(Yu}BCDY~v@*lQb}z5wjpf zj8}|zJDZa@aqT!8IJMK@m=TydF>XTIv}u|)jhobM5+_X>cS+JZZG#ij-+gZe&1kXt z`ggxibKgDZo_p@SXS?TIee_N7TYWJKdTqwz>$q&X2!Clj%lnG`H&FJ!WL3YsQ?9_cNdGrMR` z%lh##(z?_-f$5dbVx9}U2U%aU?|mR#?4T4$QUp~ZK@?jS<*}mC*moyGo6ga z2Lx5SEpq!THd1XUPu67~$_tJmR!Ur^p2jhh{rpDY$t%D3osIY)>l zLT&NkOqxbx8beKfY(kf^tsR0{xs@l7D9P^>z>nGJ(Xk7=1s-#M#)whZ)rHEl;|X`F zwsfP8o3Mu#o5+m2Az5#w^X6Cg!l0}=67zZbs5!r1iN}vVm>MW1+k}g!=;#MsUmI3j zV(M6h8^{HLx^A`CsE)l#?JkCkAulLenePRs$Wk>ttYbeI<+P+Z95ec;z?MQ*&4Wg= zlczM}eP&aEl@#HpFdq#(?aXoY+gn1y)1e*P+x<9-L#nx7#{+nfj-B8pNKMnC z6!Pvh!Jsre%phU$;mG<-f4`YDBil`b64LMix(Q5EoaS?GJl)--Aea#zE9!P8lGaPc_&&OpTTFT3nP`kv=>pjZ!;@r zM_zoM+w6*_W4uO=;|m&|7Sz1sJRN_CXBd|lF>T!o8mBnp6at=%^5Tnh!XDE|dhsQ0 zX1kF#BVIhm(`+|mrjb(6^K^*qnRq%nWO|V$)dn-3WcL)QTB1qDzyzniKs(==jHXTY z|Cs%C3Z3%eD_meJP1uWXK?Jyee|O>BledFB)E-a*K}lzLR2gk}{JARC;Np>}pRJbP8QKKb~lf z#)ew$bSf}e?Iq&GYnr$i>)w&GCLX$K(Vhzm53hIybqqk(4Uh^&`&fd6`eKQcxu=(T z!@fPMR;+G3sG5f1_<&#BIK5WBGgJxt)T;XeV zsZ)4wB%_EE7ILXB%M{W*pklouYtSWRljTCbLax+hl|p((tjMoWt97~3LK)TtpiuA8 zrBR_=DwR=)ur5s&FBKrvb)b-Ib-7w0HL6qH3JQ0vF6$J|V_27iLN)8sqENn}{2igN ztvW9XQN8!+(x%2;XR$$EC&o1sFd2aHkO)l zL$2hwxL5}(QZ?fyUG~V$N^FscRk&PMTUd|hO=p)^SnxSJLhG1$NkkXZ$|;#4MpRMh zmjN8nWH6uYThaWwgMH?(vJ%z;vX?2p?3IYd8J>5Wk{3#d5*<7 zA?qDgg(?RyV=CBNx$2H2`_7DN%WU({CAchF9jQLDvawc8mMgnB#GE^7P4Zdwi+U5F zX+?~*VPRQWq!pkFFqTS=-X!CU&1h2IOK$#t+DfZ26pfA2Q54W=*OhHtDUo}sS$GLK zA7f-x*(M`%e!+{{vka|EJ!6oHyUkUF#bW1JX=j?TZL=|KmG+uEm=~u-*)^C~BYpj7!N#TO~{w!of4y)0N?zAIQ?21)D7cME=@-X%Dz(!vGU z@^zvBcCbGK)od^0*vH7-#qSmMW0+ZAG2=zdK8d;YXE3j44D(N-X1u$we(6aps$X^z zOX`=OMBNE%fu(F0SR0x}Mhp0OvJkUyIolv=S*tC_9IV1zEF)dLy%cc`gt#a|JQC|- z_EwOG!|JJHsUxrCJZqEww=feth;{@0KkN!z5q3-1BVkR#UJ3go?5}?wby-{)E@5ZU z^JqGSb@#5(3Dl@x78`c*yHNd9{|q+uJcrF==nT7-hCM;gIg|!Hf$l7>e+(th;fBD? zS@Z@ySq!Stz`npx7KyOu3{pKo_bFt?FdBG&7Katd;lLeivbZa(ox#zbpf-kkJCJA z1fLxT-30$=9P|)8F%D`3zdR0l37#AWD-`uu0j$VR7r=`COabg8{9*y@C;Zg{xP=o`m9v|Fw5??fKMI#~q$XIN#gCPF)>M~e@za;^YOthQ zzvmSGIg5WkQYO`96*Hc?kX1}7s#XR5!!puq3DVBr$l`z0DmL^Md7c)B13T-_h`Xms zv@!9W6y+R?o)>z9__I=R%$Xu$p|fCj9KFomU6lkcZZ9iy6rrn_aNe|p?qb54X$k2^ z7X`zmFQ1l>4pm6FWLiRRF=73*gcTFkUOqkLgvD1(PdQ=rE2gJpL?}Gan&~P1#gy-z zp0cEv@~Y`6^#ECv zh-lD%4qi1e7WAo}FDr?l>l}6mU0F#UF7#xbnb9vu;QziKy`xYMXTqm z=W8S#5=)TU%rP7Z|NnxwQD)Ij{oMUXCktc z>BlnO*2|e+Z#U?gw$dJBtV0Kf=TApWzYaau0jT@gYwGKH^!8 zM?L-gX7HHjZhXS?VSLi_Q9SNBjwhI7ba>9<)67yn<9Q9A^}LSbo?qf=&l`Bg^IJUY zc?)0CoH(I*@nvf3b6Nn$wV8NYn~P_(8a%5l=J-;Mui*HV$ZCxoU(50J9N)n4c8+i3 zcsIv)W6a9bUSiV7d@G-+G4o2XR%52dUYb1z9NI3)$N}1dTiYoka*(;5PwSLXj=G_1 zTjdaY9+YdF<^Akw2xuGS7WTZT);7pt+JO(Vv=+HlZezw*qczFx94$eE)*yGtowTJ_ z+&`4Nqx+?v?vcD)-Yi&tc95npvp^ z(Jwhml*Kl0k#C7Mf{dbNhW$udA=drBvJW5%h4upK| lY+E#W-~xAAd5Mfcdcc}07bv?+-H^|o!l#gjcp8U1{J;FfQEmVL diff --git a/src/application/DBController.java b/src/application/DBController.java index 8e3ba08..de7a90c 100644 --- a/src/application/DBController.java +++ b/src/application/DBController.java @@ -23,7 +23,6 @@ import com.eclipsesource.json.Json; import com.eclipsesource.json.JsonArray; import com.eclipsesource.json.JsonObject; import com.eclipsesource.json.JsonValue; - import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.text.Font; @@ -518,7 +517,7 @@ public class DBController { String Type, String imdbVotes, String imdbID, String Poster, String Response) throws SQLException{ PreparedStatement ps = connection.prepareStatement("insert into cache values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"); - System.out.println("adding to cache..."); + System.out.println("adding to cache: " + Title); ps.setString(1,streamUrl); ps.setString(2,Title); ps.setString(3,Year); @@ -579,8 +578,8 @@ public class DBController { responseText.add(new Text(rs.getString(j)+"\n")); j++; } - responseText.add(new Text(rs.getString(19)+"\n")); - im = new Image(rs.getString(20)); + responseText.add(new Text(rs.getString(19)+"\n")); + im = new Image(new File(rs.getString(20)).toURI().toString()); stmt.close(); rs.close(); @@ -596,7 +595,6 @@ public class DBController { mainWindowController.textFlow.getChildren().addAll(nameText.get(i),responseText.get(i)); } - //TODO separate cache for posters try{ mainWindowController.image1.setImage(im); }catch (Exception e){ diff --git a/src/application/Main.java b/src/application/Main.java index 483b081..9380c14 100644 --- a/src/application/Main.java +++ b/src/application/Main.java @@ -54,6 +54,7 @@ public class Main extends Application { private MainWindowController mainWindowController; private File directory; private File settingsFile; + private File posterCache; private String dirWin = System.getProperty("user.home") + "/Documents/HomeFlix"; //Windows: C:/Users/"User"/Documents/HomeFlix private String dirLinux = System.getProperty("user.home") + "/HomeFlix"; //Linux: /home/"User"/HomeFlix @@ -92,7 +93,9 @@ public class Main extends Application { settingsFile = new File(dirWin + "/config.xml"); } - if(settingsFile.exists() != true){ + posterCache = new File(directory+"/posterCache"); + + if(!settingsFile.exists()){ directory.mkdir(); mainWindowController.setPath(firstStart()); mainWindowController.setStreamingPath(directory.getAbsolutePath()); @@ -106,6 +109,9 @@ public class Main extends Application { System.exit(0); //finishes itse } + if(!posterCache.exists()) { + posterCache.mkdir(); + } //TODO remove when tested under Linux // if(System.getProperty("os.name").equals("Linux")){ // if(dirLinux.exists() != true){ @@ -203,4 +209,12 @@ public class Main extends Application { public void setFONT_FAMILY(String FONT_FAMILY) { this.FONT_FAMILY = FONT_FAMILY; } + + public File getPosterCache() { + return posterCache; + } + + public void setPosterCache(File posterCache) { + this.posterCache = posterCache; + } } \ No newline at end of file diff --git a/src/application/apiQuery.java b/src/application/apiQuery.java index a9d7d66..b69efdf 100644 --- a/src/application/apiQuery.java +++ b/src/application/apiQuery.java @@ -4,13 +4,18 @@ */ package application; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; import java.io.BufferedReader; +import java.io.File; import java.io.InputStream; import java.io.InputStreamReader; import java.net.URL; import java.util.ArrayList; import java.util.Scanner; +import javax.imageio.ImageIO; + import com.eclipsesource.json.Json; import com.eclipsesource.json.JsonObject; @@ -32,6 +37,7 @@ public class apiQuery{ private Main main; private Image im; private String[] responseString = new String[20]; + private String posterCache; ArrayList responseText = new ArrayList(); ArrayList nameText = new ArrayList(); @@ -42,9 +48,11 @@ public class apiQuery{ String moviename = null; String dataurl = null; String retdata = null; + String posterPath = null; InputStream is = null; BufferedReader br = null; String fontFamily = main.getFONT_FAMILY(); + posterCache = main.getPosterCache().toString(); int fontSize = (int) Math.round(mainWindowController.size); responseText.removeAll(responseText); @@ -101,10 +109,23 @@ public class apiQuery{ responseString[18] = object.getString("Poster", ""); responseString[19] = object.getString("Response", ""); + //adding poster to cache + BufferedImage originalImage = ImageIO.read(new URL(responseString[18]));//change path to where file is located + int type = originalImage.getType() == 0 ? BufferedImage.TYPE_INT_ARGB : originalImage.getType(); + BufferedImage resizeImagePNG = resizeImage(originalImage, type, 198, 297); + if(System.getProperty("os.name").equals("Linux")) { + posterPath = posterCache+"/"+titel+".png"; + ImageIO.write(resizeImagePNG, "png", new File(posterCache+"/"+titel+".png")); //change path where you want it saved + } else { + ImageIO.write(resizeImagePNG, "png", new File(posterCache+"\\"+titel+".png")); //change path where you want it saved + posterPath = posterCache+"\\"+titel+".png"; + } + System.out.println("adding poster to cache: "+posterPath); + //adding strings to the cache dbController.addCache( streamUrl, responseString[0], responseString[1],responseString[2], responseString[3], responseString[4], responseString[5], responseString[6], responseString[7], responseString[8], responseString[9], responseString[10],responseString[11], responseString[12], - responseString[13], responseString[14], responseString[15], responseString[16], responseString[17], responseString[18], + responseString[13], responseString[14], responseString[15], responseString[16], responseString[17], posterPath, responseString[19]); dbController.setCached(streamUrl); @@ -181,4 +202,13 @@ public class apiQuery{ } } } + + private static BufferedImage resizeImage(BufferedImage originalImage, int type, int IMG_WIDTH, int IMG_HEIGHT) { + BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type); + Graphics2D g = resizedImage.createGraphics(); + g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null); + g.dispose(); + + return resizedImage; + } }