From 68dd312a426ef3d46a29bc72ca0349141be280e7 Mon Sep 17 00:00:00 2001 From: jeffcheasey88 Date: Wed, 13 Mar 2024 11:24:37 +0100 Subject: [PATCH] Add Admin Interceptors --- PeerAtCodeFramework.jar | Bin 517119 -> 520411 bytes src/dev/peerat/backend/Main.java | 22 ++++++++++++++++-- .../backend/routes/admins/DynamicLogs.java | 3 --- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/PeerAtCodeFramework.jar b/PeerAtCodeFramework.jar index b673db4cebe1875ea09e33dfa3d24ce6d63d13c2..d91d1ad66b2ce430ff548aba417b52aa70cb420a 100644 GIT binary patch delta 46896 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

pBw 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 delta 43829 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

5Gw)c`{%N|)uT8wX>+{#i zY4454cCC1J zCbbhpmphEUkT&0-`NY62C;op1k`?9lHA&I$s*jIxU-3mCO~P|yOHjk?a&Evjmgb!8 zj$0bH2&DG3zkj6u{o#nauPO_wUcEB6jV-9!>=ULNl`r``y3fxdTUGM;&i03?tJ@c5 z#W)=~@H4b;0cVwM`uXUt!PaM|Z)(|?t@*S`>2XwL=no}!YSJa8z3r3KU%cLw(NWhV zoe}>&)G$qHR!@Wb=smZeAOEVv6~E7Ii#^a(R9Sx@`71ka=`~NT3^pP_P`qOIK}9@q zli*F=kA|6j(pDH;t&)DKy;8L|2?CIVi2VYkk*zWy)Wv=2HyA{&+dzE)>|9D&C zS(E9pR(CA(UFFN$hjS)>y>GXy>~`?y-=Us?mrF&ym8QMk99ME{uV&4n_hasScZx_i zQq+Yg0=O-nWI*!uO{DQoSu2Mx;No0rY|$}wBz@#C=B zbi3Q`Z8EiAgtk008pvm?Z#~g=`juhI=gwcxH=oY_;Vh?iqe|}E+G)x;lieELmi`vX z_%sEjEfUr6I<YN}b3lvy7}n<~`pdSAO%0 zz1l}HE92lfpT{|OS4~@(s2X*)+hvo^BCDPAPItSejdhy5BU31ERR6W}$Le*zPVfo{ zPZ+dZ{6zfW`-*g`do@Ku3a{ssj*Sz!0h$nvZ=oM@v-^W`xn1yY}71jPCXoN z+cocjj%3b~-(0bbJNHsw&s{9@`-@mbdmeoM{vx*e+d!UVO~iP+<4T<`qbiHyj>P%5 zss+2cC)AXDTlDb3uagdD($7qPUZ_v734d$*n{%uC&U85ot>Qfu6IS1zAoirvMQP4M zF_Guf_nq#pK0ehgK>t&2anhtI+d4QOd-RfJN=J;jlf5u&o>4J3?DI>#GkccTs_k{z zZF0(Vk(130qpey_$puG)WsaJM27WMcD*HL%TQOR5@$Q4t;8ATW4Z~SC3YyI}`K1@7 zuFrCC=zM%pJMpRR&I5Jxr|uS+np7}ZIYau~1{{N#v5S03xS z$o6~=t@yBHdep|ZY5OM>rkwY+SmUzd#fWn!r-zSe=}F$-vp`FJ^l^cW3yhj_*H4&v zTP)QVp^;WjWA@Mg(YpRpOYc-wG-9;!o1}a1ryiNExUh_~u3<{$l4mMs$_nOiUx-(q zs7w}Cj65{sNcWLaNpS^pQpz{83}3~q zejV;T>fMv6k%~>K=xB>-dARlEDA@;IW!!vi6VAw0NAk5Vd$-Ja@njAs=um;C&gaSZ zH%GhK%nBGCQ|GtH{7d|%=#C@Z*S8+Mlk-GF$lXut(-BUS+BRLsOTsGmhvdJVQJ-~0 zz3<7wQop7{C&$YBG_GkEcyen?n7{F|;+DfF$0h@$$$h5Z$^5ZLWS_Ko^@lely<73l za~e1Pwt`!gzPQM;4&D9{nL6+7vZAZxbQ0?xD_t4ipmV9kV_bfzXTvk8!!njd~jDKtGSU*NF>>$?A< zA*V9A?n_kZ+rXC>JCYp(wahQIm8}o$kx|)OrxC_AZ~Yz;wdjd_a%lBAnTv~bF8e(2 zzWjDtw1@Vh+J`FTGYgV>$As=|8`1x;aqb7kx2$LzJUReDB&3+XGd=_@adWQ10!}OJ(jjH)z%!=9#2U?iQ`tvHtRTpSpSvy&(C?*Kg zxOj5}1tN*By%j{uM~DmZfkL<4DNs`QrAdY7>yl~iv+vxaQQzMJ&8+V_2=Q|)y!MEv zS?prqHaQg2Ei8Q!O!p!rNb*mmwe@M!pv}f(j3hT=!iDvn^J#usU4E3Hh4I}56f9}V z3nPkWf*M<`aNmm^G_K^UgEX}b9&FXZt8b@sD7-uih9(*xhA9`?d|XHil0AzJrU=7i z3#&gBD^Pfr`5ZYEIFccX9~EVE&^C*dV2q@i360UfbcQI3+>FWKeG-gz7S%%9^{xa% z94+&J-b`5rizW%tF#?%|W3p(v5u=O5#*K{`M`LEm@MGo-Hq{3QZ3^gip1?mSF}$wR)bPWj82g23si(6jsquM}8B^(wKw|`c#g>sy zea0a!gXktgOB}T9phM}2EZraVZo@>7%{ELDmvv+?>E^#iN!kWRahcC}LesQzVH6Le zNmVI(Sq zg1VF!nWuk$AA!uslyrsyTE86=!tKHty0jQkreL4OIPlQHtqdjFcTtM~_fs~95a;4y|UQaQ#Dp_J9mQ$;+u6k5iE zqkbjk-v%9u2;|dWm=e0Y3lkFK{WJt&WCY$Bj-b99lLUmnR>W5vXCzS}gnv21xGqC! zaJhn!NNWIYP{lzW2G6>Sn5uZ(4aOz9-E$*H4)?5Ov`}$N_zEqlW6)(2%&v*DOqpyX zu@{rZGwK*0X*z__ko#Ut3%}REcul7;fsVI7WW1w^H?%N5P*&0E0@bO41T`JO&<`8cY_|grF#?qp~Jk)4l0?^3BJmoDNc1mgmdtN8Skw^-rjITJzbdaM01`=K!El=m)y^o@aLl*l|)%JB^6UfE7mb3 zag!S6bs7oE_8~f1h&c(GdkoXXYwMYjRQoV?AR`-(Z(uH?TL?F!fO#w>)QBKJj2oE= zbPJftuH-(?N-(n^$!g-Li8+mmky8-IG*@zRFn-^?U~1t#;ie7cyZ5 z)42|&&_wf&Va9mPc$VYvDCZeL1%ZFW@s+l$owTf^lSq!1$Dv5**|9FrEq?_Rp2q5? zfcX3AtPONKWRfP~5<>)EY~|qRX0l3XmJp1ZNNNVio;sIROrsOQgF`edq9g8_E=-|1 zoO#n9Agqecxv>P%ksM4DAGd&|N_Qly3EA>B2a~{exv*gPAx9>VP!)$3dfdRlfhlw+ zc&mlJp2RfpRZCcHG|TONEG>N1GFAcIpPY;ll<~1%tU#(Kp0|>fK;!@6jIUVDQm2a- z5NV*;L;0pe#)H?fHvUK2EI$?-P058JK-r%)hxR&5r|3TW!dUC+K7?GTBNvm!O~Y9Z zG>{xsNVP5UAV~7Iu;>vD%B3nQiDXfAHA(W7Dk{!{f$>u$YbzDGBu4yB8UqJ4rD>ut zj;P{|yIA9CPeGwmMU(O|B_wqQNX*~QvZOJ2?!i!IEQ_9Fk@kR(f++nAc%n0wb(>C= zf&|tm(kL)IsUgb@mNHUFWYId4)s%#3rGrV1o`pDDpUB!lr_evmzn~e7J<7U385uHy zCJ3De{urKw8IvFJDj?2q)0un$9Kxt(eUYN%fp{ldlyS?4EDL%P$gdWDw2ifa z9&#mKutw4Lhe1&dWyP}C`0BT;ep)Qj^E@*P;oJLIT~rIcW`G5^Wr^4)#!PhJBa0p= zh)9Og#%o375aUz?L(GpatntIceNGXf)pu4lMUtFOd@F+K#FQVbB58`YI2fmh zM*0(IvTH*_1OJ@`z%ZbS(oEQ*NZp7{=N%cuBF5|>+Frm$6$czU`ZE!x_;*wG7CK`g zI92hak!(wPsQtqc1w^t1|Cu`wlXoq2sSM=RwP$ak4G+Kq+7K{zQYAa$A@kY!luOAZ zB#7Ztm$2#eG7fI!%`_yu*`ujYf$_o^5Ams{{)h}`VM3&Vsz!lzO3)3-v?IGKTCT;SVeTs%Qx3NWN<;Y&=Z(wXR_a-KW z%RXb*(M&-qErf2u>QC-D`vE;=3z{UTiHr8L?WqYg?l#CiNxdx+yi4N%OcS-#fD6UN z1bI_Q5JVFZeDDf!K_<-tMAF4yNeEt`g&~me%d&z(w8*#Q1;^7C1VuGbWGzTDMpH0~ z)}vfk(3N%yK?*6|hUL*TBSA^p+ayzvL=xX+A^4iAKsczdMW6BzD8GPWg-FF#trFzb zDe`knpx`Yk6%T=J57c9V_?F#*Uuo$H6l7Bml{$Bi;KgYa$rW{i2h}JCe|#x8o_c5T zN|0{e^hz*}!xkY{t60C_P3qmfenCCz9b~T@5+4w}%Ks5VR~lfZ^>aY5iEO|hyccX1 zq;Q^Uaa2&>dqED~FeoUdMgo(xy5!JZXAXyI_$AAMy)Kd|lIPr~NcbyoKoJ6n`zmq5 zDWUKe8XQ>0kWe7p&ZK%l9WtigL2;GCnR*;US_#NRIV5Pxkw&lYftkIGIk9y2_a>Z~ zw1`lMFPygrG?be>slxm}*B*qvh~N6F6dY|Ccr#Q%WX9TaKv6 zFi9rP=4_*7gf*cGl3LCYLQ?LaxYKNoF#gt&Q%BJtEP{hYVB>?d14yTWu4Z$DaKPRJ zy9k6Gj(BijIYhP-)Nr7-kfu(G6yeGFK)3(xe`qBqk(Lws>)>``rq#5*i*tFn6}E{jwu{Sd{SBWG)^5&DWZU942N`%8%=}^ zMG&Nsq6w=$IXvqa=QbrazTpHXk&Xd&K4%1l1Xg=WQI|c#Sxr&Lfx52fpLPv2q8$eN zCuJO~zoyneW|ugxNF2f*2<*W@5?44nyo|s)DtN;U4vbWUAyR5MqbTCzYB-ZA?9DZtG}<-_w>fcC z^Qqf(6rxABIp!3ia2*GBDoCSGs^_Rv@0QhbOsIFU^_;QPyPNeiZG_$7Oru~PVFTGbZZh_T0$SN%96E17y6JQ~K*uBVK3K}!n2K$qb(-mbdDFpob`GXYm%7^v zFg04!H;b@oG}LN2=0c0I*9*H$@tU;~!)OLB-k1kf)C;|_spNOPP{MUg1<9_$E?JcACUfiIaox-+BtSTaUv1SmWW&7dVKdS7Q?> z5>Bfz6=scSQi7-{is`__G>P9H9R8SoZN9FDQRQmPQj@r4JNyy$`g}->#GxFO56&|+>zv>@-bn1U8zjp0u(c-82-E) ze$4oBJWO^{=@c>2URuP1aE5=!k9ZKy-&eXFh^>Z}`eI5Xaq)^2i#|{;3ciWNkJ&mu zDSPP%bjg>eMx8IHp}r8H$|-)B5~Z7(9{|U@q9{L1-E=;jD~JgE{Q={@Z2z@h5ZS|= z6k+(6q4?wC9Eqia-uqz+6g$y%z)stpV5fs-ufsI8h_6ch{lbEP0GtdCdyQF6q9&>O zij&gG2~b<)#CI8n-`BPn)(4IkS5m!x`%CimBD^{Lp0*8NFP}A3ujL^kX#ILji&Sp- ziKQhUy31Nhi-z?WJ&7W6ODQRwcX;{NmgK$)k!sB1a5Tvuqn6MpYY(Pk+d<>|1%#{~ z?PuW^76Pj^29u{K(KXh#=ZGd8itd4jWt#BGAi5<yWCpSf#k7;==W$SO0L_x4ay)A;WTY{$ z9mB`+$=Rf%-R9_KGA2(cqZSD4V$K0OGqgGo)25&?1l0QiKAmmCq zS0_&zh&1#X&YNzuoiOy0O0sp=9r?e;7WIGYB?~Ux2+zIZ&l8KPB-6X5!`yg21URJC zk=k5)B>9&{(4qM=U zL0>mw>SW(DABIlPg1*y%lj$%X0s@gwlD57uM_IX;7J{1+hM7{3vjimmH`*`C zFygCq1l{2RDGmQ1aDa*KZG&NQ{AN0YlRL_=Di{d4*uRdvL8HO}HNA4q+6+89IVd3# zQ$s5};6PE=hfbWlxbs(U0Vf-<34dCvs8jeB;g~ul`uuPpW37QMaA9Y7g)u{eG#1rX zNwl@X@JI;BJI7WgP5$~Kch(zVaRgZKSFaGAKlpki>g}5~t31FnL@5}-r~f70Kd8c} zY70gk5uhhqfUUm))h4x-=N^l#0FE-Gz;F((f)0Y+C`k_xZR4$|HaHGfLH7}69Ho);mR+o>xxc+8XBVi`low5 zh2Ivz^UtpcVEf#L0P7Kl>vWJU16wkTQDp?Cir`>fgQP3wxIo+)+?=~GB{PR-0`P~?_0IAg?O8DM8#cFdIJm z`nMwS+i60|-+og6Z$JLoRK&1;DiZ(9Pl9%VL^Z=O$ZHES+W(5eANfk?uP90gt})Pa zn~A%DS|DHJ&)t|bI(wWUMoK(oMbAACl1^gle%}hR!TcUxzz||8$T>BG(vlWHBMTE-}*v49Rg@mi2m^~PEJ%gOlF`X*V`%uPyY$ByZ8`1mRSCXYZ(un0zHID^&@DOc_ z0~k~JKk>C)Dk!&FTtMK9_P-V9^)CiGA4?aeYqPd|EQK*f9>xv+#1Vi?N3obT(olwb z4G|A{tnK1}wX6)2&{k`h)#3rp9H)u$;xGfUP#Cn@8 zoBstulLcYGUv=*rp(*h+*3wmLrUygZj{zwS`C?zm6djDm#*nlE9*mdMf|AArefV{G zYK5j8z_ieh$xQy$5s~OUU;1vJ0YSTE|Bb>Wqls=K$yj|E;H=jN_N-FqSy-eBfrqy%$nO+wOjm6PmWff-!^ z*P0JE4&6(@6wp8<9B*w%;uYcjNx-Zln2^B|JxbzLsdoToX+_XRf{QnjNHiT2BdsW< zw0jFOPbJohk!brNY$F*>mDS(ojfTh+g@~HK$N1cK)OZvdiQsyUFq)st%M8zC;Owx2 zXp=(+lQBmsho2JQiM!BHGB%ndEY{v8ej0u!Yq$EpBk$G2XkH37lN73WZrKLJO#|1~ z=P*%FHfY1Ux+9Fn!}3&^u+E4gJ*N<)m5#|X15f?oY=l-IdZwiL3zrvz$ZA&+5E#X$ z#mZcijW9csOhMiKim_;W8Ya)WTSRjs@BCcOq?b$GS~jv-V2u@!rz8331ec(I!`Kv( z&fayEx_8jIgCI_DDY|*To+$5*9&E?T$gFy?_-g|04F|T_$?p%Cz{q;1qP!)*bu5M&A49gk<)V z@l?}6*7%-3UN=Uy?_o3}wk}9#r0iu_tw%xNK^FHVX&;3@*Ox>|`;g(-X5ak`0XGEJ z=C7IyUn9*7j6OGAo&jpj>?PGT8fLL_0v^&2^oN)uNgYUi4P(lC^q}&2!xTrKFJ2ye zfh4>RV~1NN&+6+lK@&#-A^x~4>gz6852jazgyD}nO)y&~Higt-*}=s(e*(9S zP(Q8sxb8-FTfmNo(YTd*PY@|9{&`Dk>j|UfWTxvw#u4>3S_a+|EJUS zMI~RX2suG-{_1nU6xkfZ>`51Y4^{o`N4l74IEpeKad+--29SCuE?>EW@bF{M-Gono z@1rR#;l`FC6;zJLLHRdhDe%7Iu<=Wjnc6Qk=JG&c0Z`!Ic4SWYV<$;cWs*$F2?&bN zi7aB&8Asge5D=w+=3fEMcV{7| z)o_`xEsLHxBxqjojsh;J@W(Gx!g9ntjaiYBYhDgSwjh%=$i%-5<-Gzmp5{$AC2~RI zAD%=%1>(XP{e^-h0A_7j$3mOKSVqHyKTn{G_@nw<-lUt62ax?6ka`}R9T9;;tq#rv zqjh<_RX{9((-MqM=V8>fD{4=8R~T#fykm8AnIHKN1wQ#Mz2T6pi173=APjNRR9rYRol_~i?BVAbB0%+ z(w_pjVmAspi>dy2O!322|-kAJE9gGTi%;3*wd0J`WWqU`gS1*$K==u083 z1UP^Mo1?T0mI7*Q;3c2qIcPhQM07Dn$>(^b;yeMqd6ojhjW~LrK;t}sSDd53a2-w@ zsSeP=y7k9B5i1C6HYh&@Wc~XxEF|!qNNw^GGYi|Gz#ai>^3M)$;uKZ5Hb);nEV}^A z#A*q9!0l1^Kso#>0S;}X%mf$aM3K}*o;F(GTc+j{s?Fyjy?-<(usR8dD|7UY~dj9@l=SYh1+ zmMS_hz|u$DLY{Esj@8bWD8G>BulhnrzVk0xsNf@14q|mdQg-vUV`%{I4M5p|kMg58 z$hL@{YEDqKsE+_CiPJLvjG5g>U}>SkBAz=Nioh;v1L#c=M%}E z`dUgaovg9>ck+?1>{CB0M*uA0J1k`v2f8+Q% z2xuVfQeMUJD+MDQ)FeshqcflwCBS6@KA^=$eWq|H5Z|vOPJb!%AwYU{WoGkf?zNJ{|avr*<&`H(*%t{v2*MG&@Fa!X596o1gIdO5u&Kio zgG2uf6h2&wq*iWs)Jp{(!r(s&c5$chp{@?5P$MJR2E#V^?_B}5r^Bf>xHV}=a=iXI zV1^tlCANUcwfM-ex1#x1>Duuq*4Snxm}LW)g+B?_>?Rx|i#8>&W&c)$OB20gh-0P& zkO;bbR8k@;D+F?ADx82w|4A5Az9Is64CvHV3!;UwZ-!$w;ZSi@ux z0DXtORL-yk=FV7XXExhuCOI469n}AwTG*XIB9*+-V^RrXY&gS4?@K{Eze-;CZ6V-i zDYy~3_6Ocbz&}!OOQe3Chi?Xl+AN0>l8zY)yUv>kk%!&NI9tFw!2kb{#~MdZuha6R zRDluK;z+Fuv!v`apMX3mL+h(}Q?5LKu&S!r+Of`o+|dYpuL`XFGdr><{R|k$G55?I9QM&d+$s0 z#~#2~1xdnRCo^x5av;SUJS$n<0G005veDg#Y-$6SEJ_YKgHg*MHtk?mtHmeSqlVEmyXS?! zZw%N-4-$soM$JqDOCG^(T=BmNHVa#l*usEu16;#TwE#ocfGVkS>-o(1XQ1*cm~Zm0 z@LPlh(Ia_5bJU*1Q`xx|RF;=T{y$P?J$1tyDdg`b@UQ0QEc6q zH1M#w(Z5&`s|3-OK$<&A@yej(!Dev5GT_c15kBE4vK}Um-|FDz85vH}Z~(^KvlW@u z)7AKX?3rbApx27g0suvcIO(V1R}k_Tt(HbG?bN>Eek-!n5*-v!Y&g=#iMws$c4 z8vfin0N+EwjnR~TK{h&k2a}|3>g5xSO3z7}WTQk1G2tg~@kup+oL$e6X#*q}0eK)> zvpEK&D}q1%357_vAQBpYi`K+)L5sls@jbt=4Dh7DDEzpc-ROJ+TudN&bP_yzdeDys zOpolRzEeH22R7F)z#a+z$W+mbrrd=RK=uo`3v&0vm!a+M!k3Lsz<(6{8o-&Sg;CpG zOqZnhJ6^Z20AzRvp`iux{C!1=Ak9Wtppx{Q8=>D8G34KfX_Nh)``oB1hJLNk4^C%> zy#{4aK_jL|TErmlym$&=h(XlzOFJM3*SfVh8iYmIV!UEb@*<~h_Y~3OdoXn)AuH~I zHop})=qFs^MiZK#ND=V*Lz^6eK?Y*Kg+EDbG&m`y90lS!wt;N5e@BpqYHNoIUQh(bC)W42I_nu&Kd;=BHDqVj&@)C^q zR-hpNn(!Bd`Wb&Z!BO`^8b4w3%QRQ8O$zkkH}~&3fAHa` z@lP(rJ_G^I%%|F}c!2AOWe&+ZvA)inxPmkdG%_5fkAMKSfWlW=&XNC%KYq`VdFR15 z#1e|%>fsA1{1{KTDNb07vVTG|@ZRZ0wZTPrCDhVP^R~aO9^DCL*b^$|2tMA{9uz)Y zlvh9&k9f3f9|5f(U#bmm%BxZ=;t8R89#2s3444W^`LLH*Ace0U z!I7mdfRX_*`CQ{Zz+VR`#eY;$5lrF3m3wV+bSCM~4PW+-sJ!FA9Q@|X-ALiXZG3su z{+Or2yT>5wgD{$R3!GCDY?U|XKQ;vKOM^-IEm0Rip%Pd1(ViAqfD!m8y#>h3iuu!K zM1j8(V88f3U=g%C4cHTt36f85Orwexc$(Px;XeVGkU({U+x=?Pe4gObvN?3=Q7~FH z{PEY(;$#A!uA_`rV4I#oK$OwgR?LiK)-)(oGY9Pc8L9&RsKh-?pemswtvr1$5ESGy z(VbSYddF^x}>Y z5MwmHgU99v0WLa=l-jW|6ryuGK(x*we}Is+ELmki$6g>@2!H$$V|<>2MqK6?{1wJ1 zBkk4=@csvg7JlywUO@64JRVLRpo(T82dP(ZG|5;KCRBOzspwTPdb$M;s!EGc$shE7 z0{wb12NnrXIf-jXq&dr#+!Xx1}Khk|S%ASx9o<{9kqkT{h988!DBM_?uK+=Rc^V~ED#E{2KSu-Arb zNV^-8{jZKzgpTQCs|H%v#mhWW^+zOFA6@;@5#=i&;4(}w0fF;m2Pf3`9Frw|r`x<+Xg~Ok*e!GCLrv-=IQvkBi0uY$ zIbF!P2lGQ>{ZN>Qt1l#l_^P#Iv!M5C$lPsw6a-!p`1>geojpLov6rH-<^^Uzfe*d_ z@UeahEc}BbgCe?V!s|^AXgmkP#gL`pe1s={qVTW2gta8;sHZQ1O!Zd^4BrirB<~oK z@;%;hx^)69%!uWWKOY(EUj)7{y4}OeLe1AeMv{Xrynzj5?n`X+u(tC=+e=ZZO;QOP zLEXL~*;~AUHkJ(4W}*S?SM<_aRQuna@)6jtfElbUANwk00)H+kO(4J< z_yc){z3!T00)Aebyvzf=hc8`7%_84oDhs#3^*wVR-%wwl4FSQc|HVm6U+z2|LP!>T zB{YnzfItKEBMAp=4E?tkdJB}t&$0r_fx!WOtG)k&(F0%L&4Z*jf*QtuxH)wsp&J}l z3}Aw2?K?PzBV?^Ax+>BI`~yK2{yTef#!&bh>|l-Pv5xjkW_LrmH(0_2_N(~m9~wK1 zK71dCqTi-|(CP=!-UNPvS@^KmBAY+-MbV)?OqG;p_w@0eRUrEo@F|R*!(LaXQ23p5 z;45`M`*=PT?+3rN&K$=353Pg{%PVhymNQ)GLfhfvf6p+duDbVf46Fjhd|I$#J0{0~8Ih1385 diff --git a/src/dev/peerat/backend/Main.java b/src/dev/peerat/backend/Main.java index e78982c..54eab06 100644 --- a/src/dev/peerat/backend/Main.java +++ b/src/dev/peerat/backend/Main.java @@ -2,6 +2,7 @@ package dev.peerat.backend; import static dev.peerat.framework.RequestType.OPTIONS; +import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; import java.util.regex.Matcher; @@ -37,11 +38,12 @@ import dev.peerat.framework.Context; import dev.peerat.framework.HttpReader; import dev.peerat.framework.HttpWriter; import dev.peerat.framework.Locker; +import dev.peerat.framework.Locker.Key; import dev.peerat.framework.RequestType; import dev.peerat.framework.Response; import dev.peerat.framework.Route; +import dev.peerat.framework.RouteInterceptor; import dev.peerat.framework.Router; -import dev.peerat.framework.Locker.Key; public class Main{ public static void main(String[] args) throws Exception{ @@ -83,6 +85,22 @@ public class Main{ initRoutes(router, repo, config); + router.addInterceptor(new RouteInterceptor(){ + @Override + public boolean intercept(Matcher matcher, Context context, HttpReader reader, HttpWriter writer, Method method){ + if(method.getDeclaringClass().getPackage().getName().endsWith("admins")){ + try { + Group group = repo.getPlayerGroup(context.getUser().getId(), 1); + if(!group.getName().equalsIgnoreCase("Quarter-Master - Battles PAC x CEI")) return false; + }catch(Exception ex){ + ex.printStackTrace(); + return false; + } + } + return true; + } + }); + new Thread(new Runnable(){ public void run(){ Key key = new Key(); @@ -103,7 +121,7 @@ public class Main{ locker.remove(key); } }).start(); - + if(config.useSsl()) router.configureSSL(config.getSslKeystore(), config.getSslKeystorePasswd()); router.listen(config.getTcpPort(), config.useSsl()); } diff --git a/src/dev/peerat/backend/routes/admins/DynamicLogs.java b/src/dev/peerat/backend/routes/admins/DynamicLogs.java index 6bba502..831f073 100644 --- a/src/dev/peerat/backend/routes/admins/DynamicLogs.java +++ b/src/dev/peerat/backend/routes/admins/DynamicLogs.java @@ -30,9 +30,6 @@ public class DynamicLogs implements Response{ @Route(path = "^/admin/logs$", needLogin = true, websocket = true) public void exec(Matcher matcher, Context context, HttpReader reader, HttpWriter writer) throws Exception{ - Group group = this.repo.getPlayerGroup(context.getUser().getId(), 1); - if(!group.getName().equalsIgnoreCase("Quarter-Master - Battles PAC x CEI")) return; - Key key = new Key(); locker.init(key);