From 694e6235f9754b3944fe49791e77d137b8a3e65e Mon Sep 17 00:00:00 2001 From: esoe Date: Fri, 10 Feb 2023 13:53:15 +0300 Subject: [PATCH] qq --- README.md | 34 +++++++++ content/exchange.http | 21 ++++++ content/j130-lab1.pdf | Bin 0 -> 194609 bytes content/sample.http | 23 ++++++ src/main/docs/uml/class.puml | 10 +++ src/main/docs/uml/sequence.puml | 9 +++ src/main/docs/uml/usecase.puml | 0 src/main/java/ru/molokoin/Connection.java | 69 ++++++++++++++++++ src/main/java/ru/molokoin/ConsoleReader.java | 6 ++ src/main/java/ru/molokoin/InputReader.java | 66 +++++++++++++++++ src/main/java/ru/molokoin/OutputWriter.java | 54 ++++++++++++++ src/main/java/ru/molokoin/Runner.java | 7 -- src/main/java/ru/molokoin/Server.java | 50 +++++++++++++ .../java/ru/molokoin/faces/console/Face.java | 67 +++++++++++++++++ target/classes/ru/molokoin/Connection.class | Bin 0 -> 2467 bytes .../classes/ru/molokoin/ConsoleReader.class | Bin 0 -> 336 bytes target/classes/ru/molokoin/InputReader.class | Bin 0 -> 2012 bytes target/classes/ru/molokoin/OutputWriter.class | Bin 0 -> 2162 bytes target/classes/ru/molokoin/Runner.class | Bin 859 -> 0 bytes target/classes/ru/molokoin/Server.class | Bin 0 -> 2002 bytes .../ru/molokoin/faces/console/Face.class | Bin 0 -> 3137 bytes 21 files changed, 409 insertions(+), 7 deletions(-) create mode 100644 content/exchange.http create mode 100644 content/j130-lab1.pdf create mode 100644 content/sample.http create mode 100644 src/main/docs/uml/class.puml create mode 100644 src/main/docs/uml/sequence.puml create mode 100644 src/main/docs/uml/usecase.puml create mode 100644 src/main/java/ru/molokoin/Connection.java create mode 100644 src/main/java/ru/molokoin/ConsoleReader.java create mode 100644 src/main/java/ru/molokoin/InputReader.java create mode 100644 src/main/java/ru/molokoin/OutputWriter.java delete mode 100644 src/main/java/ru/molokoin/Runner.java create mode 100644 src/main/java/ru/molokoin/Server.java create mode 100644 src/main/java/ru/molokoin/faces/console/Face.java create mode 100644 target/classes/ru/molokoin/Connection.class create mode 100644 target/classes/ru/molokoin/ConsoleReader.class create mode 100644 target/classes/ru/molokoin/InputReader.class create mode 100644 target/classes/ru/molokoin/OutputWriter.class delete mode 100644 target/classes/ru/molokoin/Runner.class create mode 100644 target/classes/ru/molokoin/Server.class create mode 100644 target/classes/ru/molokoin/faces/console/Face.class diff --git a/README.md b/README.md index 8b98fdd..5c93871 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,36 @@ # SERVER : попытки настройки многофункционального сервера java ## Назначение +1. реализация exchange-сервиса + - работа с HTTP протоколом (браузерным клиентом) + - передача файлов от сервера в браузер + - получение файлов от браузера на сервер +2. реализация браузерного многопользовательского чата/форума +3. реализация движка для управления динамическим контентом (лекции/презентации/графики обучения/) +4. реализация движка для управения статическим контентом +5. реализация интерфейса работы с базой данных (moodle) + - заведение пользователей на платформу + - выгрузка результатов тестирования пользователей +6. реализация сервиса авторизации + - на сервере + - в сторонних приложениях +7. +## Реализация +### Конфигурация сервера +#### class Server +Конструкторы: +- Конструктор принимает номер порта, на котором запускется сервер +Методы: +start() +down() + +Запускает ServerSocket на порту PORT + + +> Сервер запускается в отдельном потоке, чтобы избежать блокирования приложения при реализации графического интерфейса. + + +> Каждое соединение (Connection) запускается в отдельном потоке, чтобы обеспечить возможность многопользовательской реализации клиентского приложения + +> Каждый stream (поток пердачи данных) запускается в отдельном потоке, чтобы обеспечить возможность одновременно передавать, получать данные, а также сообщать серверу консольные команды. + +### Разбор HTTP запросов diff --git a/content/exchange.http b/content/exchange.http new file mode 100644 index 0000000..f2f8e95 --- /dev/null +++ b/content/exchange.http @@ -0,0 +1,21 @@ +HTTP/1.1 200 OK + + + + + + + molokoin.ru + + +
+ molokoin.ru +
+
+
  • gitea
  • +
  • apache
  • +
  • exchange
  • +
  • hello
  • +
    + + \ No newline at end of file diff --git a/content/j130-lab1.pdf b/content/j130-lab1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6fd587c56996b882a7c2b9e730e681696f4b4ec7 GIT binary patch literal 194609 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

    t@X?3*a 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 z zj!cmC$?9uoD$|imFOo%CxK!MG&fY7oT-$Zn_1~4+y>?G(ZZY^?ZA{R$0k~BLrO79| zg@z;`HyhCI!+M{J^mW|cuHiz4IO0C$ovB$W&wO=l_l^#&ScG8uaVGEg!{}>^x(@~f zvT8l&1!);Y%j#;ce(YbBiH?t~EwA-NPph}=s{I~Xev+4qUm9fgoCTeK`q@X_P#xmC zI5J-PZ~7uk@3@@pF{NS4_5^A`>ixZSmMV5UJKX}@zLhq5>$FJdM~_%IWv93-ynJa@ zIv20}ULvVGgy)gUwMO0>UCyyFcKl#t>u;-UZ?4^de=jI8UMQ%kkn$ZgtJUX*Y_k-y z4_yMjdk{UTAJc-J(tsN*^HnBF=8btZ9KoJY^kkj3f?$%2#W5Ts_;#6Koyf7g8Y4ls zR^vU!7n#PpHS)Ok?*>PmS=qwdSqOs$%#&CaRj^4{;S&WAl?fvY9CU}&S;Y0~-qsRv zuuvZ1%G|w}k4`S@Xt%M0xTpr|uqn&-_|fqb#}tZV{**!y(ww(7 z@FmKiToXbnoTT8w_Mp+e=*f&~6N!tHBtxwYy6MNZcWO92x`iuERTM4}aA4=&v6kYR z99GC+96;cEG$I5psubZ4dgTqmXHcE0TE{#6jYEQQW>y~0BOd!LKQ0S=Lt&T1rR$5` zthZM5?B&bQCYlcmJ}t?<-*eZ?c^>tze&!W%3S3Z^&OG-fn7oj`nXD0acy;_xgNAX8 zVUrAFvu^T*hnuZjoJUc*b>7oFhP?C)y@#sxfd}6Ec5hGo_O=Ah%8GM~S;Mn#$=x_T za@JQ=q;)46?D}?g6ceqa1 zHmQ%xwAJ`aBi9?DfaRf0Wpgl?CAu5c`2o9&$Vu=98yPvzUW zin?;g{F6~5)6!4(rdGZXrf04z3_V$x^*aLLM-d8>Sx6>DIFSq`&8X8PU40W6ElM#< zF`H1gbFt!f zC-iyzeXbXAl9FyWS?$d2*I&r(RMRx;qn#RjTXiAjLKRj$JIk1^GG-&BoVUsU{N)(n z{9hLrsjtl4{(fh(RTLe~>b4k$z$7;B;{Hln8%do)BwL|S@%RCaQV5xQ9?qwaGaErk zr`0%6kbHA#JJ&lkJ9D(RRXQQDpnO%EvaY_3^`+LU!50$Id;EmqZ7f`)CU|8XZ)ub; z73!oy+}$1a+qgcDnBd$A%ec#jFJ$XL(Dq4KKO{E)Z8VL&sm-#on{|H9Naa9~6xQUm zcMJlOCOA`<(1Uah82PWf6JG)a#cs%Sdd2Zz6#D0P*fJKB%|vh(724$-X5sx^0$l1B zEtp^i)i)d=mOc9in9Ax)7NV91Ffe9!8!fd--$j~;Rz|i-8v0({yhPzKHF4HkJw+xU zo}Rk^)tr(o3Ne3io`jpmwBvz+AoIEuPUybvl<%7eI59X++(yT(3bq=?5F)8UGr+44jdYL1_$k@b zQf6*$j<-^|6!{(`22r-Bz4M67b?ppSoQAX2jRpM?e-^hzQ@0_eGP3p?q{6|24h14| z1FVrA@lj-vQOt1mtgXI@{nJ%;qt`$O8t?WjwSwAzC=*y*4IWosO-Jb! zGmEfiopOq*$N;}!Z~efaHfXhW%<5^vv&Le}-h5Q+9=7Usq!Y{3lXmHqD zFf$f|7tAgj)>9uy#vP_h%`^^V?2GijnKjkBBa03;#jG zGj_jJa@(8IEw*)&NjA<5Hr4fqv0EFsGSak9wzC&jxSV+!dV(+BKWcllxPSL}8$z@8 z=(5l^?PJHhCzblc^%9cB8rMl$-)Ornl72NfAk==sZqFprknC42-Tij;!;OjBncJT> zZS4#YN;|P2g?5X>YBy9(KD}F@W?I$SNJ+?_%QPj5BRQxitX@|-4`vF^ zRa6iwW~uUP5^dBx8)cGQ{e&x`)3Y$%(lb@Wu7+2ws+yg?vS{cZp*mZ8P!+jdg)`y6 zJYE-O;%FI56L*9?k;iyubc>#FiC4YV65rb>LEnLS-%l`$QE7;_m&z!hgICMO>4c@= zcF+5=#6siTj^rCLcbm{#9Vk*K&Xy9BF`viCYKb;TbPl|pFT7?U|7le@RNvGH`r^R# z$_Q_PA8lZ#&sX=PNgr>B7J_7ei+zVPmgwOsSVK-SYDe$ebEpJSu0+SRUFamK3PirF zfo@`%K`%s4b7-~7m*;s$?dZ(L^CikuI}vUFR8?kbQ8xC(V2v;LWDgi_=gYpeQ-2F}s+jsp+iTXY&p&AI7T<2qJS>8RCL->7Ie`|N6jr`* zZnvkI3T_5c3~32zZ`w+a5skAG_N+S+YSighZ|51Ex6afP<+D`;sN%^0fAb@aMK5j>&X*-$PAYl-GM1902B{Q8 zoaHS!sXYlr*8&MSe&z#uQi_|*9)|Y$b=vm#u_>IlJ~cvdNepWJw$nrweb+hIp3Ht< zJ#up0#!?#}Khf0R_NW)y4iw6HSxHts8y~vri`&gwo)df5`*KR{IOStZ+vgP8-0m1` z_}Q;C`-t>y*U7304Plf?=IYF!X zYZkj=7cWu8vShx^F{EO^7DO#vJd<@C?N>DT%}*)hFlv34HQE(j1~>6ufL~8x3)HC; z^8C0;r$QyB%JtTimJ63ozC%Lh$XO38>5QE+!Tm08Pm^Yhx{lnVhOf3d`xnKRs-|j9 z=!M`kC08!%jb!Rolri9JgosmG20h{!#zSjH&+I`TFtO{V=Tnq1cjurQh<{|=ds!nkyj=E9U-Y^CK@D<#djdc(g ze!&U2o%7)Qrj*8&iN`MDV&hq+IE&jP^Rct3qt(eb0(Uv_y!z*lz*P zw=XB~l7DlvmFeQU-2GznbsSC!skqD201~QI6AEU!B7!!4OY@BpSaQ}(xLL7E@pxjk z=}cyRHWk+WA=4#_@gRD9U!DGr(dHrnscSOf0 zZRC#?pF$Wgcp{@TO9+CVnu#)pkmoZH5Rr2(F_{TM2p(U%9QuHaM3iw^O46P8wcH2c zXW~(u4|bQX;gyJUu#cfBqi1$#?k!8=Q76ScsH-5Ce|)@7RUXfh8-K%&ac_ccg^F$I z4NLx074-*74_)YP9o`#LLWeTHGfgwWRSO~x1L1{{JaR9(|KZjvO%AkR_FJ#>PR)elzu5($9Cw~-)g@+AF ziVsJhAd0{sK-09`VkA>1V%d*spJsZf$+mpM8;>ls0sW4mAbp~N zeI4U^$5rPyWV(-U%(!4fS74%BSOd}ZVRRG(ta~ekQ}$Q(Nf;JK^|XUM4ByROrU;-BD1>CcvWKVK9Q|Bx1SAf^qJk zM+dLQv!G+8QelThvqpJ{ovrI-V%%GG!BuUOIS=7ozAn?oY~U`8ABsjT_tfmF15*u~ zhJj}X%lm8hGsPVu7zaacV@Fw3>G#je(|AhdIx$k>-OniS&Z)BaXn-qVA`xmUA1qDQ z0wQf@rUKn&Rg+JT!R7)z&y)_)dFWx=gmrfVk38ub=mY~VzZk}GuBPeUhMD*=a|9HN z`zVEr^gQh0T`CSsGY~;A>5`(jY?sBe&>iwEqRGvkwv!VKt{uM#o| zy(V8XCD^w1$=}8cKf|xOCEg&-qob%!-DgySHpqg;hS6R~wBL$>7F%l~^qPqHgS3XO z+k^IS<~z&kF=#$$AH*#~YA|u5tek^8uL+VQw`W5H%hkL<(w5zlOaxYFxY<3@WgGTz z^1)y#Q_?H~p$&6Bo2*CZ1Xd&;h$q3F5{9Pt<*}p%mr456q@pCOb6$6BaOv^gy?sud zMWDiki)Z1S%<)!S{3)J{nl2p9W0$2_srBgnB@na!Han2P$aMMzJrk z&oO-eUHka3S_}n@On#{2Lr$37>k2A~b~+9LVgCC>Lg$;}kb*!C!?$=GGWfZW4tX^+ zSPZcF)DFYs($;F@dG`zpE^8{=x?(Xl*}=}K@MPi`{%OQBz6 zU%ykiCc#clVSiFhOKEPi!dC9Lsk%V}C_S)!V(fNVZisZ?lZ=yS25`oMJ8i%ajm z3$K4a8mymCB@Rq?zqkQdRq@T!ekpk~qq3+S2Sy={*{A7?mUe^Fy?4Q4{!83$cA8!{?Qc z@A*21VbOC%+-~=yK77viG<@yml#o#CEc!FInbwQBRbyYqQ)L@rV-A&3KX_81SR59w zet{ATn?x1=vv@4*H}T|T9QlPz1KAIqAR~o7#F0V zC!#Hb2`O?5Hy2yJQ;}c-%I@-JImMj4OM30lF|t~X;5D< zVc`RIQwmdGbo98+mAAuU#2y=WiLLfmq+iosIVQ26W8zl1+M5s+sqld11 z=i6% z^x(aR;-PhA6b6sTqcYW((fwnuOPMmhi+;blxdnFPy6a;HTOMe>h_aYBm2#WwjS(lz zQ>R;M|2T;TRtCw$y~KRy_F&NJl<0t%?&EvPrOmbXE3!FiIGrB0VMPJ?B>Mhs#D&f^ zGiWPr?w2_Yi0Ox&9_TDP3w`QoJo7ndE9IJ*>u4gW_3bS3^?%q5>vWnh_Dzj?N?cz# z(%H9pZ)PLS{i^g8T2ZXlldczHD+w)A&g{m~gww`iPbL%C{5AGJig%~!t3_}6 zNH!Z-)9c&q9=z6_$*wdt(l)|`@4Mdhn%r`mbR`e)whc z#8O{h`g>?HC}{*%%b=aCtsD5-pm*lsUG!Az{hGaF=Tr&~nBVG=ci;L~Cf@>)e&04a zw+?YLDmn}(UNGK^0Cxz{nOrnL6tWxvdr%8o}RlLl!#ZYLLz z9YTAZTT&uQBu5Y?*V(@1K$QVA=mf!F2XX`?)5dDrZC3eBA(8p`w(?{IEzxoqA6d;Q z4TK&A;&?K5y671y1r^IQsOq`SHg|5nh)d4}N8mdZ87_**1)dDl=$qkl@NSs)Po-EU zox2sKi#h92qy(W!kN#eF&k1Up)k$1A` zT~WvO9fj%W_?9bsp*eDzXEKM8zUhHyU(2DNniEs7KdU@9x-w#`880;U!Y|E&W=}f3 zHAw8$m+~8L187X;N=v6dS42ptt~>10!#=O1V4YTs*59x?kz-duwAj`LYvyqVHd!rF zzL-3J*qLppqFi>1IFuku{YJD_>W8H9t>&}zP|I>#hw&J3%G8t64|sC#jOh0J2_HHbviANKVW?h0L zhisRH?)}b7eh%GR{j<$=9Tq*PWkKC&kH^$|Bhw(< z)`o+^X~&zQoOMc)Vj29bOhoCeZzgv4+b*xq>Uwf1U$RcO_f3*^l&=gp>b*7H-Q;$t zD3z-&8$VXt-+H;PfmYe?(Z0RP#kaE3Y|vt5ZDHM9VwzD{_i3Xy+}**hs6{z;z@A6N zE>v?jy!DIq(aKVG>^irxpUbJfingqO2YrIyi}O%KKy%5-Tp2sn&~w#D1i#+9^jIr& z>6fp@-kR{wyOFP{VH(K2AgdbHiqxGGPyO60E4dfmB9&3=yykm&BdjO0^QCk=AN*1W z`XU7l@jF6?%@o3Wt`VkDvn1(=&ySWOoehQk$b=1q=jNIXo8}`L>UWw&u16Xm5UO#~ zMo9!zTx(*n!_6f#3se359<6sjVY7;^4?&lRuRN9J?0F2@p2iwwHR{z4nqQr~98 zQ-(-Huh*mIBf~l3)T567UQ00ZWXZTpt!-Yt{jGDIleBQro+1AgO|LYSJC1cd1GS?G zpBNU)2z0H5pk3cJcQb1)p;w0xC8V0~CZx6XPMkA~2% zIDk>`ZCp90J+5`x@>oS>_}eGVgCA6>PD@^kE$xkX`^KnxE!1ROz2M%g&Ut^1k$krS zw0Zl%`fCL^;Y9R-wQBETdB9h3_A|$q)!Uj=rGyinGxK$lRrZO4C&eo%r6iAr!q`SW zD{^~J7t@{<3Fmo6^}K)InG;gH;IDnyP_qT1u&gI%>0A2h$0FG5-E8+YKnc@PySl1sesWdP&IyG3V@IPDI-B4=Cq`qF#- zms+{o-n#ldr`$%*s7dU;Y_*A!jR={34LPdqp39vp``|6KJ~)@WK@li8dVa8gFQ?!! zi;2S@sDigJwP8GO-kzMCEiOD2VBgxeTbNRFszBS_o;3!wz4kaNDplDi=H11i&CLB% zPw+X5T!oAVqXamlRRotOQ2W%Ql(F2&MB2e~`Rf8Sg;)6W?e~BS)7LM+9~e^4T8=K@ zw%+hnsW&5E^ID1;2ftLx?j>Dwf3O*J^9ko6uC6iXRTa3HOu?g4?z>UY{Oqyl=M_fp zIkIu1pz0vQg8h97La*Wy^l*bc3u3MVeg8mA+Bi#%PRARcD|Kq(kLv=~u$E$<1~@PB zJf9azqo`XZai5_Ze+Jhj!|i?E=8hc+9Oi<=HFKGDnXhn+4$l$!wlkF7?0P#!e~4Z` z9~%stH?2BZYz+C{xZhH)cIR+OWe0D4^ZJK?gB}JE(Ppa{!`CG#zLWzJA}OVb288pu z_nF47o+1PU{izC1&r07tM=;b}XtC$sn<-D4J{4I=CD~iBFsAVu@gHtF;C4{Ze!)9N zv!*ZRWa7wKRAFv>=UZez{cHkmuFm1{m1t2%(h{YHRWC$*GyA7LjUMre&cUJ`dF>;1 ztkHFa{>1k8-o@oRr>an=wM4|shrw^oZ;K`}gSpMNa(HK{il9OqBjfGY@7aBM^2z5} zPPFLYbui(_dFASRgN41XT306Z-`afh{wvK}A9KH5>a;55 z`tbfppEk+gJEQfgjyY||$)S4fDT~E;`hq8#^sOZZdTP0=Z1DI;)}))3St5zxbC zqQaR_E(Cd9u-CrMXW)lT1bW>hDEsoPG1Etw$z-GXrGMk??eQ0}xSa`)D4z60Hl%Ll z3yL~yO1LHJ*jZr5@?P8U#$Ox1_JTpbLt&&>cR(c&Xb#jfwU+-MHvz=7gz z0!zV5`2Lfu^=S;|UxiJ-aqKmP4d=_9COR_ms>`Zo#ZWOrg^mn_-p?9HRbFBztXEu^ z6MA=q?YdkvmM+C+U*LDoE&S0%m0r!jOX?P93rPuYI##Lb%hp?lYG9^e!#P(5d*uUEPec)Gh9 za~_9q((+=kNKdz)>JNw-ah}Y6V~%Ol9G951jjJeBJ942fo1)wuF6wNS6IhCyxDJ0e zV~_860Kc)YrR5!3)$AxQ5BFlP4xa%dvSZlRSPz`P) z?XgV$Mf6_QbYkC@gp-d#3y<@aFX!j&$*$3#2iY0)okU8nGKzKN@_THyv%^)7w(Hww z5eYf^imY;<4XX3JK0f>!JaMak_Qu+?>kfwVH8cVy)7yr1`Q17(LdPx_4^j;xl*LQ1(5{J;MMI!z`DQmxh?#r_kQa>*SmdJ-lsF z@j2zRcD8j9+hXuS=XNqqja8b%eE+C!_Pw zja8*mp&Y~l`_#sk;JPd3RO^tVxYWEl=-+eXvR3LXG)^f4G+B8Dq_3GFAQFRR(7QrrZE}vx73%8FY_iEZYiJMPu zcKHpx(#P`>F(^4J{w>hU`D2uAb|5b*_#}7K`@xGK@1k|GZ{ke^aSf@0;lNw-nl|*;;!K)63Ke9@aVw zJHKfk@pVog+Q>@EODcZnV5w8Vz02yk^ukB3`}FuE4yVVk7MJ>sP_>xPIH)7FaC61L z>77Vo_W{+FWWDbadEYlwnmE4?MvAWXoKDGx^BJk#YL+WYU(Dz?teJ~__kM7Yirrj|<5P^qw5J=DKt#bPO} zAI}F1DE*YCKk}(t=cSNPi$80DhrunqkLwghT4D&$nP%Pt^$@eS{yKOHEo))h@$V}Ek!@%h}tMzrAtqPH)@{jMs88XAKhEjxD zfWPNJ8A)nEwi0C?_P5@f9(f@UMFYyioUU8~7*@6kf)|0>Yu|%gFb3xy;1QETU6%*6 zoY%e*#rI+fxWa`Cp3^f}fBEh?%heLfeklc4+CY~^m6M(QhIE;5NdFN!$sE zzd_LitOy}qf07X?<4D%!r`9Q5r~sAMrN)nJ)kqb-IPuNU80 zY4z!@uKLnn5bp)C`4C|{tu^v_F)q%QzlpC1a(DKnc00XMZn5<}M>>f0bWB(f=_B`f z9i>()YO@KUxj?2*ed(pwjgdoaN#f9Nc2T!IQ*b{4Ti0Usa-zAu* zmv)7CigCMpxvv@(Ds0m9%r)^nA(iFEnMPdFZqya_ah=JvnhWx@ z8nbjm;5kn}FN2IK{gU^Zp881lzT2#7yC9~gA5lfWSM9QthE#?>{5Mo}9*BX!Uhm>7S{b`F~; zvmakCPJ;JnQ49{nrPFm0yv*1U%Mi0nGnIAjo2rV{>XFV?Sl4xduIxWB=HPtKa7Shi zNX{$`q+NI{pYGb2tmixm9?-b^bwuDE0wcHa(Df=v#=8H38HQclVbGS)RkG`#YKL25 z>J?sH{_|72;LQl!^>qPh|7PsH>O{9Z>Gm{?^%%x;cRcw$Wtzw}Uy+TY2cvjfP@Hoc z3)j&Xk6Ea7Qqpkzby6ca(^Mpnd9NG0+Lc^AQx#g!)bv`OMyog|7Og7of3o(qSFw`q z5~+J!qY*)JSpvPcxqU3;*-*KNef8_PUC(X4qs&6w^%{R421DTw+*>wd@~8RzF)xnm z28MLwI{N3_QV1x&q}~M6TjBJ$6kQdrdh1rOQy^%z)%Nn9YaMrL>Ge@Z|5wRE%#Nlh zUa9u2=bOIlakaNJx{SLy9F!R540Jx5FQSZ#?z~A1{K;9 zJf?*NdJAn-^Ou=OeIz~IZ1InHVQd{J&a9LYwJ@P9x;u)+U>q-Kuh~|vX?EV1Ad=%b zID7x*@x1|=<_?9}Z9lq~+<3}{^L4Lh-`CbiQY?_pr4xLtdc+_TwvE}K1fDYZYCQYk z;#e>>QMJ3Ba)!rd{G^HGQnF{v#%-U>o?ddiF3iK7olLKo^ANf4&4K1FJ6F*O$SKJd zMd9+8l<2~8Blne$H`0}L5?(?b>F5ZS6|9d~>x;?8^G7Ssh~2Kks-3217ERV?Lt>)k zPM&RN>vOa^6?tkH!5Gu3YyzjL;#ob9YlRb5thDh?4hl!pD;FuhM!`e#N_IZdi?rYJ zG1oSquZ=jvmbv1|{^51ZeDUIo#qIZ3Pl8gRlhkRw#`b{$Pqy*bU&Nbz(`;?lDUhsq zeB?;$U6~i!pzvMckaSAhlq|reqnsOkZTBW4V{~zB>VEz0){H5hDeCoy>qR1WYL}~R zvf{+5&2-cIyxw84a$DXWVXDA%?e6kVy2bDTHdOEI+^1%0w0N&jOm9GbwZxA3Q_aI8 zAP1Q^5z z`lF~1;?oDg`S=V$An30G>{kH{{-gBgeeh5DkE>r2!N2bRlKxlkKm7lzroU={{j34F z3*-M)D;)k;N#Iur@s};)r{1r6087MAtzVMAzXNv#{u%YJyFY6Dms1!5@~bA;pYDDr z2>ewmOyFOw^QXr@6cB%y{c!r@Qt&S{aK4`oe^vMQcR&*k{^|Me;{UGv!wm8>ieIXK zi2l_Fh9E=G-#Z!duTK8aXaCi|Kl>B7|Eu)hz5mqwhJ&m<@qnYf1-!}LN6@LtLg1*$*XMXW@=&TX3DGKZsztwa7S5*SIN@R+U+hd zHU*%fqJ((AW{R+wm$Rw4ouwPd%+lJ%QG|KBv6UHQVLEG8=KCFJGc>;O~)@^Y|ubQSUvVK%jJGP4u{%0I-s%%DG1-0Vb{p*&!2 z1Rt1L6i?X2!b<42wCtZoz?BH|T{kypAzofjPfs3CD36niH7{6DP>`1o!V7_L0~*|} z-i~gjUfhnZ*M51BwsbXjv2k{@adHIx@Mvo0ftAe7$wl;! zM$@po_p@McBWma5Xyak&^)m$E`e)$}4c@=o{SQL~I`*#^|IvD0rp`coe1F6TC<#gZ z3{ca_$^QSS0e`m<{!3sfZR%zz3gLr*x%pt+5CKgHSP0B71OeaRg9`ES3G@D@`G=*l zlZB0y_y39I-!%WH{RRY}to*-k76*r4Eu*X~B<*DG{-Z|~q($A`Z7hT&B%yp@0hk0g zLIxts%@3BAx1F5afD1m*ZC(XOD<=@Y;LozOzA#Jz zECA(`kc7x0WPtq<_{U!9?^`9&|6T*AK-R|I&C-Qe)*jehN?V#cSy=u$1i``Zzn_7; z(qI$QI?C#FZM&{c-D;9|TWXi#i?WvF4vT?f6K4OvyXR+v2>rG~Mhkirn z7ST;y?TTKNAxJw}&^<@~e-l{y@u01^2Y7Wp>AGfxU&TDy2E|Y`Vf`2O9eo(t) z74AqyHW%H_>E+f=++L}>V@pCXNP?Y#m7~4`Z_8X7V?TZ=5wx^^xjr~D;badieo1SX z6RTT1mPC^itFeud=`{wo5IG9#urqI^Z^Jd$ZP>D}$fPTP}l$?ogg zRQGFlh)$O;299hED$Hm%#fd$J3Cv9iV#3v(sp(9FV?uCEh@Y4+3$$A}hd$$@czGYH z6hh5M-_%B7&_+Mkc15@iOP23Gu~!J=u_Oo9eK9NvP^dVcv=mh`6GjIU9y1e;RVP<6 z@jVj!UA{|e?FPU%zR2IVkPi+kLraw8FyBL zm*K$MeePVM1rfs~ML&mdmr>WWYrn(CE|U}4qh_svw$kI7vVXomUxt4x>+&J+Glyub zY6Nmie00IKW#ZJD;)0qItZAV+YM4FCRB8A11n~2g$FScOL2$G) zw%!t_LCB{abiHMqxlny)+L zVrfN)#|O*~IPmu83kIYBU@#~Q^yAi_FE9f1M+xNkmkbOSK$1bAz?}N=`kNk{515w! zl)(j2$zVwS5PX6_e&L_C2rvYx4g^F1SSWtegTjzvM!@-y{lQV_2_WMT;6ot!6M%q` z{0Tt#k!AdR$hQ0fNH_!#Q26gS1O&lA66T-S1i}1B{sbWcNbM&G1tZJ&1(0oFaHLoS z0dPq50@;z@WMDoB|L=NWJ}CV6IslmA{*Da{=l{Jwz+eFcQX4?{z$j!tIOQMx28KY8>xDoBk=g(PgCeyR zkWEI41tJJXiWv$KK&lrGq%?nv1qcjid!%^|gP@Q>QONjF$Y3aBa1=5G3Yh>3nIN(Z z=wGCmfw7A$LxBU10tXxg4mb)Na1=OzF^*g>3LJ10IDqktWD7hlK$fAvfk1%+fdU5t z1r7uX9KgDUTrUb7z_>@!6F`9jSl5vCP~Z?ifdg2_k!?}n5I}(gnCHm0C~yGt14&O1 z1rA_dBI}{R0dN$u9ts?SC~yd(zyYk2$o^2^0M_E)^}s*U_rGyBm=75Tuxg{wL&gE- zL&gCHxEr|+WE^0C^N{tBae(Z~*%kB!B!UZ~*%{WIYr(_)*{h_7TXoC~)wjzya(d zkZe)x(ZMMA9E^g`!7vm!U?_0FP~d=}zya)^k>f*w1BLO zHWYfl#|#Gcw!iO@`1rsm`25Ei2f1DpI8g987zLk$fjuUYKNNfpM#1M`6nqXw!RKHU zd=5sSz=49#!6^6~jDpX>0w{2x;BznvJ_jB}A-4evJ_k11DD+U^K*8r=6nqXw!RKH> z6gW`uIamQLyR=noWp4uPP+0r|b{fzblY%YU9F`S>6x_#A?Q&w&Fba(pQG{73Ev2`>sh zhoInd2owbl6nqW=@*Bu?py&@I?gl=Xft-^8au3LS{v#iOR0j$^|BW^N00n5~_gn!W133PlF+(8` zBs~ErKd?Xer=9>*09gNilkxMRkimet{|`Md7>WRR|96=nz+1n``1ydf>313Q_xvB2 zpAY_fo(qr(Ak_iLe$V>=Ss(E4xe=iCpugwve#m~$2?8>K-*aTZV*){dlm8jB06+il zIVgYx5x{!&n;t^o_x#_F%n~rC|I%}FF}1O`bRon8K3etXGYt6u^#>O}A5ECLxcy8G zgMn7$2Xe!#tTL*ygm}O5#e9T#|6iixRdccQ0R0S#_s7E>4L1ki@<+S<9=ISsKjc^7 F{|oW^T+9Ff literal 0 HcmV?d00001 diff --git a/content/sample.http b/content/sample.http new file mode 100644 index 0000000..b9d422b --- /dev/null +++ b/content/sample.http @@ -0,0 +1,23 @@ +HTTP/1.1 200 OK + + + + + send + + +

    +

    +

    + +
    + + + \ No newline at end of file diff --git a/src/main/docs/uml/class.puml b/src/main/docs/uml/class.puml new file mode 100644 index 0000000..82c454c --- /dev/null +++ b/src/main/docs/uml/class.puml @@ -0,0 +1,10 @@ +@startuml +title "Classes to: Server" +class Runner/'Инициализация и запуск компонентов программы'/ +class Face extends Server +class Server extends Thread +class Connection extends Thread +class ConsoleReader extends Thread +class InputReader extends Thread +class OutputWriter extends Thread +@enduml \ No newline at end of file diff --git a/src/main/docs/uml/sequence.puml b/src/main/docs/uml/sequence.puml new file mode 100644 index 0000000..aba8f7c --- /dev/null +++ b/src/main/docs/uml/sequence.puml @@ -0,0 +1,9 @@ +@startuml +title "Logic: Server" +participant "Клиент" as client +participant "Сервер" as server +client --> server : "запрос" +server --> server : "определение типа запроса\ntext, http ..." +server --> server : "инициация соответствующего\n режима работы с клиентом" +client <-- server : "ответ:\n- текст\n- http content\n- файл" +@enduml \ No newline at end of file diff --git a/src/main/docs/uml/usecase.puml b/src/main/docs/uml/usecase.puml new file mode 100644 index 0000000..e69de29 diff --git a/src/main/java/ru/molokoin/Connection.java b/src/main/java/ru/molokoin/Connection.java new file mode 100644 index 0000000..56c5639 --- /dev/null +++ b/src/main/java/ru/molokoin/Connection.java @@ -0,0 +1,69 @@ +package ru.molokoin; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.net.Socket; +import java.text.SimpleDateFormat; +import java.util.Date; +/** + * Класс рализующий обработку подключения клиента к серверу + * - Подключение вынесено в отдельный поток, чтобы обеспечить возможность подключения к серверу множества клиентов + */ +public class Connection extends Thread{ + public BufferedReader in; + public BufferedWriter out; + //public BufferedReader console; + + public Connection(Socket socket) throws IOException{ + System.out.println("Соединение с клиентом установлено ..."); + in = new BufferedReader(new InputStreamReader(socket.getInputStream())); + out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); + //console = new BufferedReader(new InputStreamReader(System.in)); + Thread threadConn = new Thread(this); + threadConn.start(); + } + + /** + * Запуск потоков: + * - получения сообщений, + * - отправки сообщений + */ + @Override + public void run(){ + //new InputReader(this).start();//Запустили нить чтения сообщений от клиента + Thread threadReader = new Thread(new InputReader(this)); + threadReader.start(); + //new OutputWriter(this).start();//Запуск нити записи ответа клиенту + Thread threadWriter = new Thread(new OutputWriter(this)); + threadWriter.start(); + //new ConsoleReader(this).start; консоль должна управлять всем сервером, а не отдельным подключением + + } + /** + * Отправка сообщений клиенту: + * - для отправки даты и времени получения сервером сообщения + * @param message + */ + public void send (String message){ + try { + out.write(message + "\n"); + out.flush(); + } catch (IOException e) { + System.out.println("Ошибка отправки сообщения: " + e.getMessage()); + } + } + /** + * Получение текущего времени на сервере + * @return + */ + public String getTime(){ + Date time; + SimpleDateFormat pattern; + time = new Date(); + pattern = new SimpleDateFormat("HH:mm:ss"); + return pattern.format(time); + } +} \ No newline at end of file diff --git a/src/main/java/ru/molokoin/ConsoleReader.java b/src/main/java/ru/molokoin/ConsoleReader.java new file mode 100644 index 0000000..c26f69a --- /dev/null +++ b/src/main/java/ru/molokoin/ConsoleReader.java @@ -0,0 +1,6 @@ +package ru.molokoin; + +public class ConsoleReader { + private Connection connection; + +} diff --git a/src/main/java/ru/molokoin/InputReader.java b/src/main/java/ru/molokoin/InputReader.java new file mode 100644 index 0000000..41d8713 --- /dev/null +++ b/src/main/java/ru/molokoin/InputReader.java @@ -0,0 +1,66 @@ +package ru.molokoin; + +import java.io.IOException; + +/** + * Нить чтения входящего от клиента потока данных + */ +public class InputReader extends Thread{ + static int index = 0;//порядковый номер обращения к серверу + private Connection connection; + public InputReader(Connection connection){ + this.connection = connection; + } + @Override + public void run(){ + String line; + + Boolean f = true; + try { + while (!connection.in.ready()) ; + index++; + System.out.println("Номер запроса: " + index); + StringBuilder header = new StringBuilder(); + StringBuilder body = new StringBuilder(); + Boolean isHeader = true; + //Boolean isBody = false; + while (connection.in.ready()) { + line = connection.in.readLine(); // ждем сообщения с сервера + if(isHeader){ + if (line != null){ + header.append(line); + System.out.println("header: " + line); + }else { + isHeader = false; + //isBody = true; + } + } + if(!isHeader){ + if (line != null){ + body.append(line); + System.out.println("body: " + line); + } + } + + /** + * тут происходит: + * - анализ поступающих от клиента сообщений + * - инициация событий (методов), запрошенных клиентом + */ + + + + // if (line.equals("stop")) { + // connection.down(); // харакири + // break; // выходим из цикла если пришло "stop" + // } + } + + + } catch (IOException | NullPointerException e) { + //connection.down(); + System.out.println("InputReader() : Ошибка получения сообщения: " + e.getMessage()); + } + } + +} diff --git a/src/main/java/ru/molokoin/OutputWriter.java b/src/main/java/ru/molokoin/OutputWriter.java new file mode 100644 index 0000000..2e27a6b --- /dev/null +++ b/src/main/java/ru/molokoin/OutputWriter.java @@ -0,0 +1,54 @@ +package ru.molokoin; + +import java.io.BufferedInputStream; +import java.io.FileInputStream; +import java.io.IOException; + +/** + * Обработка передачи данных клиенту + */ +public class OutputWriter extends Thread{ + private Connection connection; + public OutputWriter(Connection connection){ + this.connection = connection; + } + @Override + public void run(){ + //чтение из файла, формирование сообщения для клиента + //String message = ""; + try (FileInputStream fileInputStream = new FileInputStream("C:\\Users\\devuser\\Documents\\code\\Server\\content\\sample.http")) { + BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream, 10); + int i; + while((i = bufferedInputStream.read())!= -1){ + char c = (char)i; + connection.out.write(c); + connection.out.flush(); + String s = Character.toString(c); + + + //message = message + (char)i; + } + } catch (IOException e) { + e.printStackTrace(); + } + //send(message); + // while(true){ + + //System.out.println("message: " + message); + //send(message); + // } + + } + /** + * Отправка подготовленного сообщения-строки + * @param message + */ + public void send (String message){ + try { + connection.out.write(message + "\n"); + connection.out.flush(); + } catch (IOException e) { + System.out.println("Ошибка отправки сообщения: " + e.getMessage()); + } + } +} diff --git a/src/main/java/ru/molokoin/Runner.java b/src/main/java/ru/molokoin/Runner.java deleted file mode 100644 index cc99714..0000000 --- a/src/main/java/ru/molokoin/Runner.java +++ /dev/null @@ -1,7 +0,0 @@ -package ru.molokoin; - -public class Runner { - public static void main(String[] args) { - System.out.println("Запущен основной поток приложения: " + Thread.currentThread().getName()); - } -} diff --git a/src/main/java/ru/molokoin/Server.java b/src/main/java/ru/molokoin/Server.java new file mode 100644 index 0000000..98703d3 --- /dev/null +++ b/src/main/java/ru/molokoin/Server.java @@ -0,0 +1,50 @@ +package ru.molokoin; +import java.io.IOException; +import java.net.ServerSocket; +import java.net.Socket; +import java.util.LinkedList; + +/** + * реализация основного потока сервера + * - сервер вынесен в самостоятельный поток, чтобы не прерывать работу интерфейса + */ +public class Server extends Thread{ + private int port; + private ServerSocket serverSocket; + private LinkedList connections = new LinkedList(); + + public Server(int port){ + this.port = port; + } + public static void main(String[] args) { + new Server(10001).run(); + } + + @Override + public void run() { + try (ServerSocket ss = new ServerSocket(port)) { + serverSocket = ss; + System.out.println("Сервер запущен ..."); + while (true){ + System.out.println("Сервер ожидает подключение клиента ..."); + Socket socket = serverSocket.accept(); + connections.add(new Connection(socket)); + } + } catch (IOException e) { + System.out.println("Запуск сервера не удался ..."); + System.out.println("Сообщение об ошибке: " + e.getMessage()); + } + } + /** + * Остановка работы сервера + */ + public void down(){ + /** + * В каждом соединении (connection) вызвать метод down() + * - закрыть потоки in/out + * - закрыть сокет подключения socket.close() + * закрыть сервер + * - serverSocket.close() + */ + } +} \ No newline at end of file diff --git a/src/main/java/ru/molokoin/faces/console/Face.java b/src/main/java/ru/molokoin/faces/console/Face.java new file mode 100644 index 0000000..563a58c --- /dev/null +++ b/src/main/java/ru/molokoin/faces/console/Face.java @@ -0,0 +1,67 @@ +package ru.molokoin.faces.console; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +import ru.molokoin.Server; +/** + * Нить консольного интерфейса + */ +public class Face extends Thread{ + private Server server; + private BufferedReader console; // поток чтения с консоли + + public Face(Server server){ + System.out.println("Инициализация консольного интерфейса управления сервером ..."); + console = new BufferedReader(new InputStreamReader(System.in)); + this.server = server; + } + @Override + public void run(){ + System.out.println("Запуск консольного интерфейса управления сервером ..."); + hello(); + } + private void hello() { + System.out.println("Консольный интерфейс управления сервером запущен."); + System.out.println(">>> СВЕДЕНИЯ О ПРОГРАММЕ <<<"); + System.out.println("Для вызова помощи введите команду: \\help"); + System.out.println("----------------------------"); + help(); + } + private void help(){ + System.out.println("Перечень доступных команд:"); + System.out.println("перечень доступных команд: \\help"); + System.out.println("запуск сервера: \\start"); + System.out.println("остановка сервера: \\stop"); + System.out.println("сводка по работе сервера: \\status"); + listen(); + } + private void listen(){ + System.out.println("Для получения помощи введите \\help"); + System.out.println("Введите команду серверу:"); + + try{ + String s = console.readLine(); + switch (s) { + case ("\\start"): + Thread serverThread = new Thread(server); + serverThread.start(); + listen(); + break; + case ("\\stop"): + server.down(); + break; + case ("\\quit"): + System.exit(1); + break; + default: + System.out.println("Указана не верная команда, попробуйте еще раз ..."); + listen(); + break; + } + }catch(IOException e){ + System.out.println("Ошибка listen() чтения с консоли: " + e.getMessage()); + } + } +} diff --git a/target/classes/ru/molokoin/Connection.class b/target/classes/ru/molokoin/Connection.class new file mode 100644 index 0000000000000000000000000000000000000000..8936f8c979f3693944a5eb047d47e0126a365352 GIT binary patch literal 2467 zcmZ`*TUQfj6x|=76Q`qK6a=r)swIe|-W9AAP^vA6HHb}ZZ3h@&B$-K*885wh=|y|9 z?Q>VxYG3*)E=gRb()T_kf2gbbo0%lTlD=eSzH{cBz4y6H{`vRW5`bg)ML~l=Th2{n z?6f^^n^t1Twk%`HF>OmhlR(Qg{kon=>(*>yd@g6`(*g~qCD1n|sM^k1 zSvTO|>#t%r_A1yT(CqotrPc5XItA9v8cygfflZz9nj|4ZpNgI6lG5&DF$0(^ci1I9 zp<)O2OQ#+Zt~&+2AnPIUs)kiqt>EAaocx|pa9Ch-mD8B()JXYuN$RM^emzcF#2@yM z;OYdz7BV=5UI~s(*-;0#%tul#}(wve^cu=a5v*7tJf&Mc1#GcaA6MD{+&%t4nGiT=I;H*53 zB(Xa04T-?|7v_dj<9PEa=T|21)C|q79L$`{p?;g-!x_ASR-5Mnl9J%Kz?RPc!y)^V zQ`#O5;%i#1)+HnbG#`&2x%TM0aC-BGHLc)1f~h0*2Vl@O)7&H~uHr)lA1ohbZ$vcc znB*8;*VC>sHY2b%T#d2GYg}M`K~sb$OT`sTOMcrU;9EkK2Xh)sT%)*pHcLzb`@_Mi zGa1rz8A>+U6{Iy}K-D9T?HlE4TQUCuWHo#wcfhI}avjR%%WH7Fc9}`L`MC(L3mh!} zR=LlOv%t;sC{|wLuKBxioBQT551w)*aqTRX7b*|@Eme8g8&jd-riNP*hsqflHS&3V zmc6EAs(0b02zXHhy3}`KXv4B$)+QZ&YJODD1|6y}?zovT6x`t=@#^L}W;$_NmrQP> zMZuTVL3WIrTM6**v@5iCxWl3(%G}UnM`j!ui_r2<Zd;aYZSjvJ6u!!Kn6 zuiRn0V`xNpZQ|V;sI&JOGusE&T;;Bhd{&w5G{oG4pXzFd?yuvc$aj15Py)61kvC1L{h(! z+V>Ri7cmtz3YaZmz5rWV3dsG5ZKKpv`b1rNP@WrApN<8F1FN;0+BAB4`4A6Nog+Ly zO0dUp3MWDk`)fM&<70fn2zvQ5Ny@9Lo&dWVTKcuo^o7R zKhCkP)N|al9^JBqS^}q4dUWB!)nw&De}~KB^G-fU1e2V+Gxxpsx%WQzN)Um9YXiidF?J0*7{U@3(DJ*DMvs&?cbV*367PHY?B^zSbGvqZX?{2<-|^P+@;c zR6LK90v^Mq%>^**-u}$&te(=7dH!PoynwKRQ$*QcLq#XLSP)s46_?p-H8_nk3VJFk zH?gvu))!Uu;zerNnKVhsM@^^WDZ@%nq=~T@Q*f63u$vFXhBeopF--PDHC`5Iaei>N zou8eJ+})6~>8v?Vb9bHX+^5c3G!#GtuSnX@6F*!=OCBaB3lqU>Dxx6QRoc>$Zn2+Q z!^7nqR`?_b5xlPA0^VQ~rS1HsKvQ_H33cDZfP#L3#v)&3$*H&`15=h{z9!2YL8D~& zEfqs9x@1u{p=^M+RlFmqRcG>rpOOWaCL=QXQGuTQ^4pVgfw@>U#u@&+J66$9HLfuI z89TWmpC<(_m33jbGZYOuKj!W^Th6-k*jWoXPs#X`+~>J3oek#~XDj!0hhlM;1NLft$@Gy#3$@bDxnV=as^vOz zpSU!5dih_20Phd*t%Ilh_`N?tUFU-b2l-#+ifd5kO2D^z94eR$QpZDiplcHiUELdK z+O<3AIz0d%R6413?VI!3XvPs*(N1nJVsXC~!|>G6LI(M_ZwtYZu19EkgyUIs+~4`< zAynT@2KNx%PY}7<@X{vEQI^H4S@dObQ3^M4d9-jweG($-U&VY0W-uP~XEA&qr@Mbg zdrx;3@#!Mm7~!NK54MULuWRlaJitjBgo3^bi+3w5N=`Z+?0mb5W1~gj399vE@m>jg zojmxljbCxCaDGU(B-__rW*R7MLIVzST$^#0vM3oEKoG-dK^(1^=C;0pHY9Ky1~>92 zEc0h*$30H{H#mjw5XSdhq3hJ&Mjw9Tn)wSC-6{-`b@E%N!Zc&JPAu+P{E3^;7+Vxy zV20RU`urG4KKbZ51D&^iVg)gaIo{3_=LVD=3cU&u6vm5Z7*r5(e@Az44pqESVDPRa cW|QqOKzSo=%H%tYumnZ3sUTGr=*9!{Uz&mOasU7T literal 0 HcmV?d00001 diff --git a/target/classes/ru/molokoin/OutputWriter.class b/target/classes/ru/molokoin/OutputWriter.class new file mode 100644 index 0000000000000000000000000000000000000000..f6e979af552154798521dbb9215c66ad5e8360bf GIT binary patch literal 2162 zcmZ`*T~iZR7=BI&Y={deUlJ%4Z53kpP+P4fS}PHi8blk!(xx9vvcPJxn{IXyJMB!{ ztM;lh{Q;fcbm*lx8W^4GT|3jO<)VMai`wU86IhjIvzxQ;c|V``dC%nUe;+*o@D9FG z5EAII-Laxoux?w1IX2@uCD*xW8;))(2n+1JrLAaV1OO=k?#aNZN>8~Q(`_?$pEW##oK8n8!&0#%@4C_dK=fmRibXcA~k8>W8M zEiUNxthP|l1=`bAPAkl5wjtkZ!mzV!lm&WUh!w1dDK*%xsh~?>f3+;b8oOu|^eK}y zXB<{nj9|aOcxpU*qpaKIY+he+xyW9ya&A#KopLtEWV0FFUZIpYI22~fTCr5nN0%L^ z6h$XuvW{MXuA%e}cyw==OUd}0g4c*hJ^X~bxTxEDK9E8beRy5EI3N(KxnQCJjpURB z=pf!ua7dtg_XenV6Ng!`V==6p&hhaHOYoNAf|%`#3MqqUG}$w^XwAa#<&BdxGuQR%S<{ zNMTaJg}OHh_RQpJPA^G{tGFlwx0TpGl0?hho@G^pqHXa->abheD8IxiGOuId)lLia zZ(Hm_1X>A$_Z06O?-Xyw?b@~pWJ%qYYI4(BsXh;7-OMYPt&_bv!+rxMT%(ZJ?I`B( zk%F5qOu4V2Vjdq0C@WgQ)n^t3js(%0S-8ddPwv{n3}O*{%2cCKWbnC)FQD-(&`Kqy zBQO&5Qy+>~s8CCg^vob9=|juTp|!REl$cit0T>svp154}IU&8?rt z2PA7O6(yNkbV+xnNi%JU)U@F!;6db5lVl1+Q{l>!L8+3dz~fUX`eyP>+nJmiE_9r+ zTsx;rItlCx9%iFbn`ZzgoM*W}NS>8kHE^vU!e=wzE>a%iZ}jK}@5Dp2tn)2|Ha=Uc zmMX$%p>8YoQr7KjV;|c2M!Tw4HWM9CeV@XnMTC3bh_sk~jL!M??hW)@eT=^Ok-gCk z^pA(vaJZ}S=Tl8bAE4y{2D+LmI8s|zFx=I&iLr4d7Ovpr{Hey!uh0J(`4h)RDtLDd z@ifOsQ*w^7D>#5v4B%_TtL0xNbS$h^ek-oy5-!tUFOFjhA23os zeOy7Buw3GszdA(eG_DfCp-b+s?o=@b~`0M&8pW^Lec-p`r`aRLcW-vykk;xpg}-loSSR*1NuPOMsY Us9HDwRd5hfF>b8VRS0+g1CdS-@c;k- literal 0 HcmV?d00001 diff --git a/target/classes/ru/molokoin/Runner.class b/target/classes/ru/molokoin/Runner.class deleted file mode 100644 index 087a9ed35e86b47a72d802d64f02ee7e325c5842..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 859 zcmZuv$!-%t5Pj`98GAAz!A=|?2Fz{;l3|a85fUJAKvqCFvV=Ib?UvJF7Hcwt#Es>| zi6g%Ok#J0+ICoC%A3{`nEF}hCs=KPXUcG)*zyIv@0IXrnK!PC?M7HZY{###q_N&PA zL|`DvFt^3uaogcu%YISc5{-~y>Y?;x_=sVmSgJ83pZZNL-M{ZpN z8@%oa0Dw=TElhe_URk#23LBT{0OInaTu_%uFgNbt} z7&t%jhmB2Q*tBo~7a3+6Q4k0(jDsXqv2+Y5j+QmdWeZnumBDCMBZ)-ugS17j@+>}aqUnX>XyR|3oE)?D)i%|2^+Tz++@fOL>-me!fh>r(bf}i zXr@UXv}o|zF_UF5t9}$T#51Y)W;$NPRgFrL&{Sz-fdt)X)5sd+*>o~GCzp4T`Y}kG zWOW);FiqBqAJ92NUK%GbOA%fC9LYg0zk|7bWe=5?1PI}$|8x2EZR3+%csd7@Q3&SerG1JsWg){=gir+Z-0C5^VhQ{n*h$Dq@YWn z->xLrt)jJN8D=u8+qZOEK|r8yRlB7ni<((T&ac?ImKO+=EZY$fGXiSa)681AHJwK< zr9Ev^cUmrdK}uj>&N59s=NOh*78v&RDvnW1rVVpV&!>&DL$#i)Q7|>9V(S8Dc2$~8 zcLJUI&ui)e&G$|krr}&5#OTcE0+%T(uZPf$u!>&v3v@?E7ZeN%40=HS2Oxw2gnPg| zRP-PucZXE$!Crv_gsIO~)|YjAURy2_UVqxkX~hN2Hsp8fFyO2h%x`c9NS{r@3#@B~ z$?T&`erg`8S;scaLTYp&#Bj$Y&i!(CQpKwtV!J|)#lxZyX9{3yS%C@nmsVBoxKAR@JKOalB_ygEY2NdQY&7pQf0iUExXzaM>ebPaS1Lv^uiHV~ z5ID_ZZ1UOgEA5lb&xpI({DEH^WWIVn62d$dB~j->Si)xtK5gg4KA4%C{#x?S8$iY9 z_(C95(47o((h3}>!FEwPAf%*2O~o>DvV5hIZZiGx&h*>U^FklB;Cn7eYl8Z-rmz2VQRkwLJ+P=-HgTSx3vQWwcUz?DN)bwsR6(Zp2=ap`)LOB@x7mBVGQ!*2v3F?hQ@dqN4d(K49;s7ui#iK#3Vxq%Jw%P7Q-Xq zIwCck*!CUrd<+uQkmpnNwQ&lkX(i+><$Ds7jK7Cx_eEM{8W>rOJ;uR0MrUK=Rm2`) ztpBwd-jM5gt`x>fgX1IY%i-!VrT&ZFD#)Id7r^o+*GG4<>d@B?G6Tz|c1N6qn zenT)mRzo_zm6mQk_T4owzu3P}$0zX`Zr1Q+4S5PSm{%XJ@BwjU_{d+5&k`k)wS-6d zA!;4=ayv?vPLY`exw%NrrdYN-PN0aB_>L0EXv|~!ev8pQq)=cPyJ-`~3Jgl~v|7a) zIVn;<3gsD&D#&>Mkvx}w5WLK#r{_6!gyO%JxU9FCM4XngCStn`vTVRaM+rm=gn&s& H7p#8)^?wM= literal 0 HcmV?d00001 diff --git a/target/classes/ru/molokoin/faces/console/Face.class b/target/classes/ru/molokoin/faces/console/Face.class new file mode 100644 index 0000000000000000000000000000000000000000..ccbdfb1648585d550dbf56d1cc10792ea7864017 GIT binary patch literal 3137 zcmcIm>w6UC75}}t?PeJ+t{N_qFd}F+$!2S*ph*M@k~SK^5{!o8WwRNQAbNQX$IcNU) z?*|J2cHwpiRSHeHV&asOc19gLlQ@w~S@}fD$>g21mFVVE2sH}pPA1PJ6X|4TIB|3& zXC;Re>hf0ZjFnS(qPJW@pZB&?ArvT4*wE{pww=Vj;)xSh&Kf#G4OWgqbzOGGF6>rV z-~1>ov3`Y`{mzgTK{ZwzsK*+G>gHH~J=P%_!ebSl^?i^pSf>m;jwdMP6blMZE}4Ek zXJ-n11^RxfGmHj>to~BZ>sj}*p4Ah2j@KDIAy4j2Q$NrPdfq+H>zsRoVhj2odcma3 zyn8`UyXV}G^t8TDfeF*Ss2{rLsA7srrahH6P3};NujIO*zc<_4+auV3O(ASlczh9$ zGN%kYh0R1QD}JUkbiLX4-2gMfXw1+%RN zp20SSDqAcpfm0^i8Nn7jD^Nej%mqF$b>$+l{s!gzD{$$RU=ip^cVZ_cWm=%mzNlenGI#d*CUeT)C!khy<1^<7hctN)_!>MwZxOyA+}ZL_PZD-71t0ZPsZlc(s< z3_YA8RrN#RqF!*X=~?awJ@q{jo|N`6`<}+<^*#4uhk2YKX2aO4usQw{KM|&PpMm{? zN{xTyfWq_iOqf6IUXd`|8z${6xaZvqQZ0OO-Mv&{u_KIMDZI$N|LvH$=x2{YVhKCp zKt%;kbeQEo$Mc0`t`Np+;;HAB7q@`)Kq|Vtc*~FSoI^|w(o@Pz5zKqu0m0Q|xD$Gk z>IBV|D#T`?m>0Yb8+cvts!Q8!SS0Wfh0eu%Ns8vkV-GmL8T~}of-D_Xh?5@wIiD2{ zF}+g1{RZB|TMA+J#389nw({oK%BB;+F&q!!x0SutYe)v(#yiw7lFW}toA#P>PZ;kp zI3Hv=JZK;VnHbjTVlvIju4rwC2Txk5LTBt)7$;a+$4?h+re;KL1#ap5C#BPjdPBnN zZeB|~Qp{weX|O4Z4Euh@D@`xA5oD1I;WRtU%Hd=n@6mP0c|Q|jQ!E-dgZIf_>#WV0 zQPbQL>ks1tg*Wwgl3$Nk^HM+aQYd~?=kwyA2&zU;wD}b#<6uEglIr*U(wb($krP6Y z8JPqje8^yyL-D)&zM`GxR1D+y3On^(_bSKDq{lCxC(SX_y&?*iW=ut+)3Y6B1Y`K4 zfVDY-^SBtog|cDObNIm7l$9;mPR77TlKIH6RXAwn^T}Zj*fCr-a0OSHr(`y3Wtgz| zqejpQf&_kZaE#$&1J^xH6&yb(1;vC%R~%yVHvA8W#qWu78UGz+6e(3Urj{e%-s-+W zGBtWInGME9q|YhlQdYMugQZ?RUD^d=Jk64;=J!q&e>sM{I}RqUwcM$Pl;kQtjdHJw z>vJtLFs86J`eX^~TjtO>Fo!JzQ+Rp?+h@=`jnB4W zv-}GAnYZVu#Pj$$pQzk(fq`KM)&z$4(5&L#YBBl?FxsWtoq zf!ZpWN`bOeplrJ+dx^?q?F`nJgLRK@^CdCAkc9%_VRfSV*}CO&EOAo>RbtzO1MUWNk*{_U*c;PYc+&Q-J}l? zBN{E-i4%=>3=xAYV=s_GXGxn6@d7SjCoVDT*YFZ?v1EvWw&_J(kbf2&rlYN)UKL2wRno0sz&xqd;h HD%|=JcXu!J literal 0 HcmV?d00001