From 352d4b6c2a8a56c14ced94a9ac87159eb230f352 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Wed, 29 Jul 2009 20:17:40 +0200 Subject: [PATCH] Switched to JerseyBroadcaster --- deploy/akka-samples-java-0.5.jar | Bin 4254 -> 4254 bytes deploy/akka-samples-scala-0.5.jar | Bin 23130 -> 24588 bytes deploy/root/page.html | 10 ++++++ .../src/main/scala/jersey/AkkaServlet.scala | 2 +- lib/akka-kernel-0.5.jar | Bin 554158 -> 554157 bytes lib/akka-util-java-0.5.jar | Bin 7246 -> 7245 bytes .../src/main/scala/SimpleService.scala | 33 +++++++++++++++--- 7 files changed, 39 insertions(+), 6 deletions(-) create mode 100644 deploy/root/page.html diff --git a/deploy/akka-samples-java-0.5.jar b/deploy/akka-samples-java-0.5.jar index db28f594b789d41ebc85e3d5e8e6eada06f4b234..62656411d132f225b2f4d1b29724fdad78907a7e 100644 GIT binary patch delta 290 zcmbQII8Tu$z?+$civa{!7fs|*Wnx)0(Re0^Jf{pIKWi|tEZQu~_>>7mv#=azVPai0 z`7DPvi2B9h%EY>8vm>VjGY9LUzgACK7fVe}b`XK4a zlV-EjR6qVv=y!GU;s%fIIs1xS)YMnGU!1TerzfYR+G6Xi6Q7@!>0fe7;o4JmJ+o9~ z{e#POu~uqFjdj$#-{f{J-F#@9qr#D|otD#HzMu8+=IN0A6BX+MycwB9m|-6HYX$NM z!(<0uJtme#lM8qqK-4B)V-WS6*8)T-@;QO1R6cKz7dG)(gQ)j>p&-hQ|2o1Wssfb& Dl0|6} delta 290 zcmbQII8Tu$z?+$civa{|7EI((WwKr{(Re0^Jf{pIKWi{qFW4;0_>>7mv#=azVX|2; z`7DPvi2B9h%4D-(vm>VjGl%tpzgB;D{=7OlktdY zo-~`Kruy-ZLch|a~FcKg#V|+I?)7lj4!5oto2LzK{BF^Hj+Gi3{rjycwB9m|-6HYX$NM z!(<0uJtpe~lM8qqK-4B)V-WS6*8)T-@;QO1R6cKz7dG)(gQ)j>p&-hQ|2o1Wssfb& Dnl5nQ diff --git a/deploy/akka-samples-scala-0.5.jar b/deploy/akka-samples-scala-0.5.jar index 457e012a0e37b92e550c7316b2b8c6529cb96a39..ade3b767ee73c5a8917e59a2357f36034d30a2b6 100644 GIT binary patch delta 20991 zcmcb$g|X)VBTs-gGYc032(T=g$fL@{ylA5FOeUs96VEAw$j_QWOpE?nefD3hsm9E} zz{APFpujLWFjRQ5SSWw}+R)tK%MJo{ecLZYR8AEa6kO=R?ZqN;kcp|)%QQfx;qY-~ z837JYbEj&v?ZAqBcG_ zUY4sa&Ecnd#W+MgIJ)qP!!*IevRsd4CG?!X`-*h#y`VEuZ3pM>7o6?;UYTb|Mup7Y z7JbLCCSbZn^!L{AgA+EcwN0L%XgRY!=>IRqss(FUc5?9wU$+gsa`gX0_d~XAJ|h0F z4}IP7ICI`%+l~G=bJJ(^KGMkVT=Q1I*W*RXgs@NDvtI=@CF%t&(|UKQu;ig5&-aV5 zzNWiQPw;jtn)$SCroCX_GWm|=iRYdklB!Z!%)FP!c>7Kc#fAL~e|klx^6gMpR7^gg zf3e=fGql%sqUBXz`<2as!I6bRON>OFg`5Q$*K$6e5q; z#krno9$ubtef7(-#yrzohjpHJ2=pfTEEDN97Wv2Md1KkL+FAQjUu=+zKlS1`%h!h+ zy25xT7ulW^2-j{>$X}m4gQ;{vh0}K5+gzH?`9ZezPt;=!cWzz(q@1tSZ|#puVWu(t zIq3%4liy0W^=9nccg^(D{$2e0lj7W@#W-TlZEBfpxbrpFs|&#s^TQ4a9j;(0=FD&I zbhT5m`}B#|v*Ngbc7A4T-G3hL?e9H>!X%~Eoyw?)J8kBC`E2Kvug_1aJARH1E)Y1v z*X?vjZR#&J-ui$x-K;gCN3sLFxAc_-A6eaToo}kZe<2xfm)9OVTNcgCs9w>qJAO7OtKlS%5cV6ZUWCg&h+Oht zV&RD-$(^%A?g@uaTy%YFkLaVyN7*Xx75+7T%RO>^;xA5EM&n=rWvKAFQ?p{285nM{ zGBAjPGL&Tf)R5?W=}>`xX?yN{o%dtYw&KF*+rHAvx861Jn-$kEg@KpXWy#tVfvR%m z@2(XkS1YfNeQ=h)?#1~B>>n6}csW$$DjXmE|IjsKbD5q6)5@rqZ*E%N|C#n|_RPPZ z-^bT6Z|K|268fEeZ`=0ES=B8$d#_sNRF|&*zUu0Su;#YgWt{aV#q$=w|GrPN^v`o< z-qY_{*B!g+=H}va{#CJ@C48 zZ<+3%$kp>>gt$J}t-k##Ur_1kDdVP%Z|%kRuiP7Uz1rr*o9ey#Cb9=BU+yc)&fR`{ zjqT0)m!`kO(jILP2<}jJ^r)ZDeZ{FO!FQ3W$myy7z18|mjJWtVwRHdQ-E83QQL=aa zt8}CNi&x&a`fedMA$Z2|R*OXjxgTpi-xpbRF(v+8tEn3!_OfZ;?bq|A9`9J>8g=BV zg_6OR*+Pl?YT|m%o-$th!c_Khsiy17_hyH8y%7>SwqaM?@n6%Wa?Lq(?nq4bt(VUa zD|@`+!LmbKVVpZR)a>fl)zewd= zsxMcsnqhzgm+M9^Sv3{b%IrxQU)`VVx8Ipm-*&8NORvc}mR(}M*o&BA|1qz8wSLC` zpqlCT6C!6X%TG^TyFe@O-|dU%SJaxbo_%mlW$#zdAf5AV4gZW@tdvxi<8612$axW@ z)h8jsdo@@@wK(QA$0oreGVO0unx;IOX(3s)NJRC-1=dZLOK-?%zb&wuy`X1N$Jx!2 z^DKi~B1-Dzlyxqol%;Dv|G+Bgv~AJ!53@d(*p%{#cNxu2dt;=s>-wG($JK9oeC%Q= z`kK}>O=S8sO{rU=@w@$=?bs_iT|4DPU3ko1$Ct&M7i6?re8`E5ee@;s@cSNHj|oQw zucc|qci+?M6EoMi{pH-5qucJ+Ud%doF}MAF&7>#0<<)=QYtB>I|2c5d{l5k$-`7rf za&|4t-S9vAG-rNuxvD!mET{A6v=cdWrSs~`wKINN?vs`3&v+)X>jyt_7Tg@b(a9tT%8DO+ zHecakV_^8o!@!_5Ii5pqG6%Oz{Sy5+#)BG+led_Nu&6L@ozi}Fi%n1zw^q*O+agjLAo1YMnwfd!+D`C8`P5lRj`@Z}LY?YEU`opu(NP6LfMbf_#{P<_uoV{u& z7p0%rC@&ZCE1=t|ZI^V}w=evkx9Bc(bX(jIUH|04n^P|{6E~Soxh8UY(gu$?(K0$m zHca3v+Z^WfV+)ISs*YPj;!fpzt7mLmm2o-ha=>ZHX}-#5f;1nknNX-67PR1v;?<;x zU^(~c#z8NnC$VLI(O9PSD3T{@s*%+yUm-6G%ilLTJ$|ZlHO^N0xs_{mYS(?KHq}1m zG{5avb^3Gb&DDM!VC?E`F|e#%uzK-q#R+qqH6OZ*_}aN#@VPmMV=LGG*gF$MY8O;@ zyq=OYy<&Q;=F+?{57jm49p`!tteNZ99IiFJ(a_8DRWB?nB%57c&6rkHSeRMbNz>cw0}X{R=$!9s^-Xb z%C%maG{@}M#=}21Oy03TQZn>=lKIA&@@F+?J#}Z_#_`VH>Fb+_;)ZR{LvkBt3r#Yz za!tLmR84nwdh^^no2KyC*WBo~WpRG<=of?Yk*RTd9Zw$Gy%Ara$yQ(Bv9alJTSt1g zIJ?B2Z4X!czNr1@-I3%e^&OiEJQiqN@0-=;+xCNDs$=7m#O?DQ`#nGYv8BhkV$va# ztcY#m?h+4N?VVdKq-9S|-g=_jQN2pCEtDx;$t>@vkM_0Gzi+SDaAk|q48z6lE9DyI zs$VH+zr4~!^6&|xHCwyl0wbf^rU}0a^O2McOj5pcWvAF;|0tcz6b*Mt&MEbY{7=10 zx;=uPo6S`azATgJxLV-!VuNf0t}NlNSGYp#jx}4>x|kpPT5+L!&VuMlS*yehW8c)E zLpw6Aw%=(EY4wy8ws6yWC+ATyt8dk-<|nxZF@DE0**+|0-IM-tPEUHlpJ%i5UkL@A z2s3JxyC3+2n?$MbGJ|FZuD2DQ@CNqqx+FD1(Hwt2gTAsm?od;^J$Q z7hdZ{tTb~|I$5shnole5iq5dBn{y<3(a-&7H{4o#eaDnceZNlG_eNXJn)2qY&fKft zc8on_V%yGOVfRS$=M!c=wm$ss|Hmg`6aQHB8Xub9ui0B1wc5*4oU6WlUGe7FC)1)I zRXNnVdb4QC7cLS!Uv^dC}d);Zo` zda+Kq`OM;3VV(EBEpGbPFxB^ZpfT&t_eSq_h~@5T`Sl`Irzh^9(XYE-Z8Jjx+8q+* zSCrpzew~!A-n2tn8+0?uO=r zd|llVC;w%>%K69JY5ZgF&v2Db6$ZbQU!8wEsp56iZ1?Itldi>nT;-6u$0|T{I#bXc z=?`W$GT*<(w(mEufAE``TQ8yZ!1Uvb(*;CtAI;~QJEePF+uq6&_EnjgFBYoy@3Y~H zKTzlt@Mu%Bg1EpomM2V3uX9>TI2$iJo#Q#naLcCk;l8$sr!TDUv<-LsGW(u|Th-aV zcOq)PZ0r|*G@5tn@lWZJ49z1C1P+-5Uwg>$&EcSgt^Y##`xn34*siZv?6uFF_9wO{ zZ$gGsp|+cOPqE21|A0TU3#UE%%Gss2IP9BJq`=N7$9yH@&?AShyX?B*`?6|s*dv*H z3+|s33Vr0dD#U&Ex(9QAb_B(G6_rlZ@Zq_ybk67T`&b?0b4OZFo_*53J^Pc1UD4s6 zPp%c(sqS39K>6Ez-J1VBb-Z7uEs(99KRHj=cK?d(zbMtlUn`e$LbE5E32N8p7GHJ~ zsMG6H4qz#}*Z3i5#lmTGAGB#7yATzYg&1t)nHK+SsV??i zP=4h;W-Ws<`4MQN{mBo9Z5{f@Y(`X@IQwkgUUzI50l#p?d2oKB<3 zn_q`*u3woL5;QfYi0SZ?P2sC`4qLPwwmMeOGUt%*cFlqvvx`LdgpDIUR_;h+U6&#q z>=zv!{nef&@2U1&!D;qSkG!$F<-ARbZQb^T50@PHl-KcM&mT?oXYLkLdFLFMZuR*z z%hGwzmZ=_X$*3sxJ8QhAGbLP#i)reTs-I^jgm(J8&`6q8f5G4E@7|3^vud`fvn+I5 zyi;+();&K=&#ANs6`DP^TJejw{oAkhxo!C@JsJCNEqdG2mY@1`#@z#KUNfd%j5WDY z=d~;4L5#}A(lq<+QX=oOt@IvPaa$ksUShcXu}$6z_nAT#Uko>$@z>j87IInlL|FHU zQF_l4%U-n~~DYbIXL^QWP!PyVBDVTg(2VcoSBy!It!rr(5ucWzFVU-~vo;Dch@ zr!@D+zQ(I!oXpEsN=6)9_2%4drr%EXr}i9psdBr8eOL4DOFNF4$9}L;pE21-w$1Fq zR2|;^r~G|GgO(lM+17q(iLtTNnl~oa=@Pa-cwYL<#s;F+D~<(PWIB$!L<@Uodf0meV9+M<%a zsr>$!J7<0FW2d!0WK#Q1%Y@(lv95Ra$%ep7$I2&}^;OoKuRbUh_h4>GozL4wlj8k9 z)LAzkKYM;owWfaYngvqsTW)8(jhsF)VdGh~7583;`K}DT=Hk`*gS-9QW+mZ24C?n8 z1H75}!NV4i-qe4~*Sjab6tS%L%1ynRA}n>VON?vk^et|Oy`{ZW_dS@Tb24dD_sM0x zvj1D;e_x$>s^>EQRlyfGB(wM5ko@0Tf8^tx-QEpp%OB4;b8ma`JKOW0?-aj_|NrNk zbwlABE{pdx4pLEGEywrJn8taosde2Mp z{_AUZmU3-Mn8s0^?`OW{Xh&w5d(I}fi_A1ts#0Nj@ZODMuaHai74?JZ{pYwW z>SZ!^My_2qYnLNaN|bBv^-I3aM;In{sb5nqd0f9$fz43mAhZ5$TOEa(J=Lk%?%F{| ziXD3rIz+Z?TyyPg(B_PjM_1j-=%|>RdFIGOPj{i`OU|2g7YXLG6f!P$xwh&BFQfBZ zu2bhqU5eD!u3cR^cjW_*huYJRJuPGmfAl~2c~ir`iba9Nk+`?L~n*zLb(qO*6|(&uNV zUE6Wh)D0bt6yKMo!7bL#$%mz*S6;FJ$kBX3r9laA@&`IRN|%zxHt9Y z&DFcUO={z1mCrfPCQNa?Bc`CYR_ETiR1IJEqV*qC=aqlRG{3e{aY6Ox4vmv{C*H}E z{3>b3f9amS$KtMAD{ef!ySK95=G~f!Yg*PX*c2OmBxc){P0xSt-0zthf3NQFk~N7L zUs=QQrBXBE-LG}5*pO=Xyt>b;ynTtSsISY^uExjL&YJ9Y4;a)|6y?Te5<^s=dJQ0m%YDV_}A|{ zFmt)Y9SfH)Gbi0~_pv-u`IPg?{FA%6g|^mNF-IJ`eI;(2|H0W6+z*u7oE|8PZSU@v z5aO3N%(++4qT12?g#DA?O8p*9b`Rf5^EiiH!e9S&UXaUk*~?z>oN?XK6J~}_H|N^r zdArr#F`K1w`>E#s+|R|)`B%>8E-L4bJFgsG|AZ@i^#!-M1J!+d8$8)78Q&W}No-uY zt+~9V>eBem|4g}Q_9wFGzhV0~&LY1*iR@X^|4-yTr#k7tw{FY2 zc_+H06|3rfWsm<}A{neZxu#EWmze5LfypPAUMX&oQ<(URc_H&1l{4n`EhTY;+ZFl~_-_mTU}f$4wp9AX*==0a!C>u9w=SZ@D!$cI}Z@jTN(5!#2rza7%39m0)J-+2GKSl5=4F z#jFWzZ_lksOB4L0oYpzXV&mf@eZtQls+0+-Z%kG{#>k^q_vGr9yjgaamif*$%e}Sb zrE>1AEt!|yFBQL^8@skle*?E~{hKrA_CBwBey8}H?e{y?>G%E|)n3n7f57XHY0HI% zsT+lVl_{@OHsO<4SrR0F;q78Kr}t$-Q9;ftyrPsjihuju?N#48(ZaS*;+e;u{&&0f z$~j&YT2~k%Z_^fV{kZhe-=kwsWhsNo?+-KJ#yo@I~i@khs%bPpx^`6W-!3Xa3%)98hBwPFO zjCvEk*S3>6mtC-&ckg?~w(JShjM5GnJN(!%&2yKvNwLMs+bP}_ zF^yB5x7bJi+23*jtCsyArg5J3Ny&*ezgy8ib>18E`kiadZ*McRT(H|murH7A^|x<5 zvp1Hi#i^bBb7!N+o~Vc1v)kKqUx^o*%{l0_-Z>(6W~R`*1ERk!taxfA93{1IS$aru zvZgoB^vc@4V{FSVB+R+~k-PNt{(}a*<;uL5w|)C-GO21!VwU0R^9En<&b%@qkKgDX z$HbQluiBTm`0rq>kC1CK%iwnuFHw#Op4a&6$b){>NwXfaB(QP{Br_d3aV$4g>gM5y z`}^#9RzH{}u%_iI$85cuHwuG4GHrfy$>-Ankw_c$vr#S5rv)B0SG7{^0yz!6XPQzXMa>k~?EW*4C4sxQRIEPqeb>v!A}+VR zoVAm8i*CE>z@OtD5!ZQw@rI+J`qJK)tarY@d@OnRTKnM*!nd*)i08RQT)0*zcz><_ zO0EO%47MD)>iDAF_Q)fqT;>h@3wN#+nN_}um(AILVS7N2e|p=bHse|IGp=#i%5?i% z6y9FAAo2CbSP}W&#Zg9!`QKlg0gUF%uYM6q;v7d4)d|IP}Onf&BsBrc)j7 z^2~GE52a);3_Y@9&cS=yT!&)|%6ac_-s(xzY2kKgI<{a#1J{+K4d#zmIec91zija( zzG=ZqCfO|y6l4~Dkd$6zRp%I?_4as=j{=XUhv9MqK`Za6l9zqDW=I;FT~63ImC>WV zJz>sGqnHkHhOSGFms0lc)qNSTKKhnT-OiQytud1&Eu@&l)lTHRTj8kCE5sW3H1V{b zqR!4G+czvZx@g*O(^)$*UQ}HCc0u)Tj8Sf& z-k?{Jxh!+1)Me+I?%d47oM#j7X3bL+J-f=UZBKox)~cN`R}yvS`blwK{1kEh$PpLu z%P!%^{9dIsEt^&|Z5s2<%k~BlO?!?no2h+pV)MGXGrj%0G-tVlPtnzWx>)Z#<1|t8 zhsGyznVGFQ4E;^(mkE|zO`CZx{M_O-eW_}{d5>= zy?4&oJ*Ai3<$A=A`45fFbCc^rCU29OK8;H+vu}+)r;hPsuG5uSwyBrzES6uk^P%&S z1F?Uj^IzT;OP+b5CyI+vzEQpTL*fsO-r7LbExS~cRW$8+4jgy>Aac4x%GPj(Sldja zwWWcgb_W;bMoBFHt5lfJR-sRxhs^ASkWkI$2xyG-?EiQd}p}^SNm~vUDZEyQlRv+>ZIwD%A^F1uZPR2UVT<{ zHCumaPUr8uCu}oZ@45Rue|6YI=F&;ePfgxutSc=wzkEZarMN!mY4 zMOh!sSl#>K$+qcBnVq)2(Gn<%yguF4Dj;U>zP;u=>ko%Je-Qm4wKj1lL)od0_m6+p zHU7F8Wbyw56Z6_4*H>E>ymiu!U-ne%!^W7W=9+95J@!5js+_p?@`8&qMKeD>HJGn; zVot?>zPQ3qRR%owo9-u`eEojXjU3P7Ee7`WuWfBImj3>-xXOsHjCHn_8G&p3B#lFV2w&V@zwBiDXD-zQoR4FPdI%-~K;I=#Tl+%$;`? z%xVq=@Yb0*)SbM>y)@dfN$o&pfMW648xlfWSFKpf=Pcm#rar!5Pqo#fDO)u1WkmH3 zc*UxO8XlVZfje0sJL6}2V#~Wz3$*SfZ743z_Fo!1<*bnfx3bTNsuta;>#DpzOU-() zVd6p4ia(2^Y(T9_W%Fljgo&3?U0zh!B1!JoV6#I zG-m0X5D-qApV-H#tDK{ECa)^u+JTaYn*p2k>QBUo9XHta;Hr;e?#`5*0zKEle#W(J z3=Ys+E;4I+S6%zY=qblFFFtyj7^CSGW~jR{AYjGP-E~U~`)5{|u1mag-RNa~@twmJ zb2awP+hd-rR(Y{1a7$y6L*Rx$kvk{8O}~*QnYV0C?_0;GE%9$=&PYw%TOzqZD0$cG z+*i|VKTntX;8cNyWy@Puvrn@k6gD`uNsMiC0=S^KE22A!FBbcu|W@ zSgD)wyA4O(o_1)+sLuDhT~)_g^VDg&nzVaC&ql9F9XYSQ&7hl)dlCm~DOTU+J>j^yxeq5gC5N6RaC1IQj)NMOPT8IPAW4%3d}pA^czx zTbcg(W2)+XOr^m)7oF;tm0T>vVeH0VA?+Go(s9$^vp}%QnXOF+qcsJd^qaJP*|)9P zr^#x@QI30!1+|t!9{$>g1sbc`KIvVmdnmbh!a`4#xApIreRX(uBrxQR*q-~RKTSyt zyrOgI*Y}C(KJ(qWR#_TM53Oxb^_c2y^|)lyG3&W!GLzIVAF-Kn{)7FY@CVj{VbgOb zN~%xobyc70^uyJO-Ct4X{M$!U%R?kJZB~gy1U7!vG`g88>)jo5%lF$WP zIHp`yt-d|W`jpx6$DM(_NgGd+)!Z<^S(Q$K(4%Vz!|T9y#L=djp;^%Ld4IE#lk>eq?x_j9g)#d2GenW0tp z-%r~IcSGO%aaYzY4><9D>%F;5!ux|W7FILQHvUmO`Fh^A@cVDJF8|>0T{lOfxN4R_ z#ZM)_`v;P&>ia%D*FBT`vvy^9{IiEgZT^Ur^=rIgnKZAR;U=SHto4hRZmZmP>A$Ox zd?cHm$ou!&#rMbh+Ri?IpvG!-&aqzpkf)O4izV5zD;YJydk>sdNsC`1XLeAJKZjMb zqw(xp3)brWjGL{_9X`Owbgy3O+onb0pEc_Iw$EO-{ZMYpiKyF4JX+sLue^DXS#~b( z_W8|Zae`)n+%ZYv-#jvlFNs%9UtT$*z&>_1tC7zkTZTXP z>-QGOU$sB5@;=l1qcpikM7BR+Oc=~Jh|56d(yaHbY2ZJwTZj)z)Ua9_~E|!@8mUv zSRZo!SioMSe$imFOMFxR-1g;sdwBfKYd-PREc?t`U-6B{#{d7h1LEfni2I9art63M zg={&it@P zoPNn_zLY=dv0q#Dudw9H?@KoQo9T1yy|?FoC%0eBnlIx|dem!7{hFV$=^w|xZC9qG zKa@XZzI6WP9~)(!&(}KovvbSz|4Of)`Y+x4$2?NMUQP8czvRpF5A9X!m;6`$d@}yT zuNo&C^NmbsK6W?_85JP2#am^oG#3 z%W-ppV_^w9^dKLw|QOAoUcW5 zq_vLT)Hr@KM3JxBIpEQzXca}d>VnlhPko-wS{}Yi%lB0S=S*fkZ%_Wy9_~w)wDo-9(Dh6Sj#yPwKIdBR zj6*&<^Da$&l_ryWv*q2i{>vu{jVeOgir3W4X_ZMAs((N6;hk{1b4h*0_WNAhiucsa zG1#8Po2J@%s_~ z?rSR6t_ayxmC?|yx@6rNW&YE_H{G>-Q)e$(`9|4j+WU#G-(B=7HIH7k+g)|n;p0zk zettYP?fltGZ+50EuW#8{vp?sSRj+@DRqok?{9X}uipf6}{}jwy+EMne@96T6CqG4= zd#>~Bq5Ef@sWzw8<0n`=W%@J2WmmG%OFO;qTb65o-QpVLUmdkAV;7gbqT*hEwY%z1 zFWCmKED2m$a{fd_os_+D^3Q;uIufHyuD52?6y#Uiwd#xj6Znf)2#n$X$2qemv3)4w0}02W~kkoXUjzt*SPJk z;M~b2wc4>aMzmYw;I1g1)+w_Le%+{7tmMePc)YKs>C~DDkHpiZ1eew&>YBAoIi|Me z*>X3<)H35=M^}1y%rq9SeKSL4$(h;xUsc^T6k{5?7PC)v<@GYP&+F3Yo_;OKWQk6u zle~2Zr`G93UI(lrJ2iB}uP0@5tZwp(UL6!%uxn9R`2mrVMc*gJ3+wf3#7^PSxRRex z|M#9q{+H6#8%0|-8m(B970UGJGIw}rc=`N_&p$-g99-2Im~FPMSL6D+)xlBgxV5ft zUlhNGPd?;Ye!!ncu9F0&u6}jwoiM*$>7DIjwO6!Ot(sk=@nwzRt7$Q{rqyaqYb(t( z(_KQhKfirBdCHUb^O|IR_ubo??b$H*?pBUfx32rvFYeDR#Tb-n+_5<5b?kKes>l?g$Ib7d^UtVZ8kL4A14BmIc-eWqGvPJ;bAR zv{z=UiQW+md8hK@?6W1S?&;pjh?p(5ODR^ytnchG#iD+el`2bC?OI^jlh~iOId{k8 z&4t@n^>t}6zpmf2D%bO$U(V#B-|x(pR`=|fSR1_7%i{Yi=Ffc&2b$h|WS?qMWUm_A zQ!Ks7X!k|)bygcY_8(O>{mM4gXSL9oz1D@iFAHk8)Mgp1Wm7x8`S^0Pw+ichmQS9X z^&swFjXax?nto=`yZ606qV7#5q@U3b>`ZXbmN(`^3VTT`FBoOYS_isN>|e4m}m97 z-hXcz%9|?g^5IxqVMOEp; zS#?XKzobTQ?w+!1W_+UHYO`ajWV`n#W~@3@rj!54u=RnqNd2@R8!L{#8#t#unEt`E zX704Aeh2$~f{~n$Oa2$7JpIpvI{LSJi~HtKRtAP}E(QiU28Mcu;>6s7oK*edcw@1)kG(Oo}cy@5p_da60*ahuxQr{8qsiGt;f+`pvhxT)*=2`!~xpJTs2B&-py} zea&<0{qH|n-?ab#?`Jqe{p1@70Yz7L&Ah%|LUry!_4Fy(sTkcYTaY^mJn5&Yry=wP)v^T{hKI6(`lM$jwUe3A4Pd zlDvuQylzZv%&qk2=OsiB&s(Vds8f{fea%(}ja{4ET;o?wzg|)t87;hHk)(EgzLcqT zmi@Yymlto_m%929Te!8=;u9P~PTs;VLfN-fom~}{B{FU8Y$2=W2@m)ea3^wEF5bm{ zbf<@aUHS6q3j5k>lix0!w_WuMyQ1=f1cr8rb5XqSTTZQ-_G(+;+K5%#HZEK#y({vf zx7JE8za))k5&M=zPHS=GGErmdHJsC#e!u>dyVXXaBLZ!rG6w@cZGOjcq(Ez4?y*^Z zTULE*eG=w$$m8-yw^pIGs}vS>Xik|uIYj1nW1=BX8viMy*k?DpeBZ7AC)ek(&5J$E z7`9CW^ZZg(WuGa^R|%FSjl?&3WKP%%fh*M zI=8iEKAzKeKFROL{B(&*myO}_zE@0w*WVC+lCvmIJ7b&Nf1{|2r+$T$xEy10&PdUT zx~A)`y-Vxh!ig^?yUenx3@q8y{G6HX=DJJn7r5`tt59@3bFGVy zSzMA$%HimXrvKYJ^Sf=*qqoi7^rXQ3AlEw~*10#%Zd!Qn(&^CX_#3BQn_hevl&cco-DS2{L!Ej5*G1v*f4rME|Pa%8#xVr=6UcYVh&g#T6G`$yj(g#2X1!HNHz( z@|^Xgexb!ruH*AAvpKW(&V9nOVsf)DOJZC4%bgbY3JiVqEY3EjyfUA2qyFg1^eqq0 z8Sa04+okJR-F1$|9n5`G94396Sy3sq?w`UDrq6e;d_D0aNNdr%M{Az5^DMPlx2K!? zdhogzyZ3jmTpB-N=XasYCu8?)?>;?I+oXr{VXf4$)`DKPTW2qA>6TtUQFZQbxy!G( zPn{2+vRnPjyE@++WeXl@UYfH1^p9y8TOZdi@ZYuL+lBi_&$^YAe^B&PV%=WYt-_z# zIk&f?Z7v66{3rD zew_REZEn5Cp2xlQ!mZVN&OHCJ(Q4Lu@nJEhHbbEALs|*_l|Ua_eM! zU)zlhhin+@a%TL@pH<};&;Q}E@}2i~5?n72+bnCl;n_N0sy;RDpik>@;WO`pLLZ(K z`ONiBt0reo>Gls%iNZb6RSom)PA+9zdbs9=Ps4oKXR`SMQQzh+K4yJhYQFE@H%>F+ zT{;RQXB~Qf+uCFEwEi`A(-y|~3MaXKi$C=J_C220d1hUwF6A6{yu5wRoB8GEOWt00 zPrc8Sxbu)yyvkl1;~)G1Qr^r+6UXA#RSR6185r8x7#IvE>l&(0_6_Hqd`_36o_pGs zjb55vUHk#f+gvq5KZeeC2;4HoUGT{DGiEu4ezUHaBwo1xg#9bCfzf0B5AK%te7V1< z8vCj3K6!8V_j%Rd?)?4x{JB1Z=AQI`&)c5ANV;Xf>YRU1W2)~&@pEkpyDxT~^F4Q= z^!^5(?}~>VbfO<#QhXUbiTB>iA4Z2KdRF(=KPpM*^?tG^$kD=kkAkwh-6!68COfyz zo1;oo3ngoU8reokUk7m(6Bt^^1>B zn0oaT_lKhTn}2i;9^HI)>ZN%P|2Hgpz@xg*BJ}y$Ni)yPSTu$2vB9-S43ix0@9u@i%T;;lHkAXq~AtUp4I}%aEZRq-p_pz!mhWZ zCLh1K;n{9=r;g-^OJNt^8U+@tV*E5I_T1^xmo`m-Q|C-}@sF)f5<1lquEXW-=ykNT z@=s~1Zl~|06TU)zZqrONBAV^&o3!@0I(1&XIHz3paFl=e(h~Qh7VnH&Ocupx&zAF4 z6wJ1rQni6Sf+JVzyXqWvo>nu@TWe&F%oNp||446r{OOOAR!rHcr^b`L_ME-G-Bkhm zAj5{^OQP345S9FOi+OTc{q*&}ZH=9Ct}i;VG3sL6dY|Bqy<#hkmp?X6^m#b5Yx#n| z%l}%)m!CScXS`tO}h(^cA@rQN*#t1gXoy~jh{r`i?1A8LKte4hl@f1h1QwdV$sHKABBTo zFWv|*brRXz@V}Hv{h$)}l^x5o7oNMUQ_dn3ZSlX?F2Z?++|9?P;e1#5EjD#GhHg8w zNWA{REB=_StTc7vXt*k=)@#>4WZ|?}*-rBBx_;$sow*o23rYV75Mvb2GCq;}> zvR$?{KaY=|aQ2eM&l8tsACB?1w2sKpU4D7K^^23gdvq?Yz7%CYZKIIqUslw1kVulu ztH~;cPW9n3p<@5yGBkE&@G5$#%-S(ka8?F;xuV-<0rp&lWwTut9kW>_AFy!Os$lOU zwX-GN=N3v{f6;U9MbFGa-$iCBD+<5M)HmB7l7H~AB0lt@L%v%3W!J0K-)qZ%zT5l$ z-;dXw`V3zlu(O#a|L)Vw0ZB!mQnYO zNn6e3JBiX_E8oq(=6cXL$J=qv!iAf&!Xp7MnJq?+9x!d|B{*JS|rV4$3BT%qA|7B2l|FYS4N=4`BIxEFql{lvq zKHcl9=i{)4GNNx^Bv_c=xpz?Z{DWtEuGn1J$+P;o;3*fSIi_0Y4o7v(FwfkyhdJ9>V#3rl5CEzsuNtwWnv@z|M+FwUV5jMrg7&~s(S0u z1)-cZN4+`^Z@Qtiqe(GRdf}Wd7PAMd#9}&EONND9yp*)#_7RJxMR}XUmBXq#Uf#N* z`C_R;DsQb<)wR(66wM_QU8M_~yXEG_>PHqB1tj>}0cz8`m%JlVOWEAgt2 zZvywWRX2Kamp;10BpVgE&$r0@ao`#kzo^s*VaLKtKi}?%l={xz*8O^Jx$W(T!c+Qd zFFijI?-g*}tX4AG{OIy!6&#^_J|4pD_m$k-Wu`>1*zkNB}561GGy~0&qcv;+W0=v)->E9u5 zSW90-Ja@PuRJwD*V!zmjF898tq&TM^<6QJ$vT^v_sCu_4yUjTlvkKohUy!!Lc&>Ty z-(@GX4OV)@#$RuJZPxs%v$?N^+)^)L&y!(ycs5sX>SE=h zq&a`a%dEy#&tF3m6JxqJ+|MK;aA>; z>@2s^m8>a`Cs%k$eKb)$Kf`wJ*2O9b8S1kxi=K2;|JRnDveWLgLD%(p(mj-lN8nmmbIGXW*oDBQOAE);>kR_o9`{m0{^sqX;`<` z{G-0mwcPt$%cRX5B5uv_KYB54uGG%=A3HC_PM>)GLjOjMafBjYVPyEsU zAM_4eI!eshGx3(@Cy@iLpU?g_sh>2}?(TtoH3!QySFT^TXT9G;E}sX=G7~qS2z;e5 zPgafLurZXid2LQn)b9Y+}@c5Tz)(e(+akE&0_s{Dakbc^8L2imu_mc1w*tc-EQF32`PDgBPx!8{t-e;MP0&3r6gvC2Z+) ze9G#(L{Cc2nL6ia)~~tsQ&grcoH_54Oo6Q4qV(ztA@K)J3Kf&3B3|d3?93GW$17N8 zb2IkH(⋙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 D4i%J9 delta 19618 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 diff --git a/deploy/root/page.html b/deploy/root/page.html new file mode 100644 index 0000000000..ea13c3f710 --- /dev/null +++ b/deploy/root/page.html @@ -0,0 +1,10 @@ + +blah + +
+ + + + +
+ \ No newline at end of file diff --git a/kernel/src/main/scala/jersey/AkkaServlet.scala b/kernel/src/main/scala/jersey/AkkaServlet.scala index 79b565b669..9d67def133 100644 --- a/kernel/src/main/scala/jersey/AkkaServlet.scala +++ b/kernel/src/main/scala/jersey/AkkaServlet.scala @@ -94,7 +94,7 @@ class AkkaCometServlet extends org.atmosphere.cpr.AtmosphereServlet val servlet = new AkkaServlet this.config = new AtmosphereConfig { ah = servlet } - atmosphereHandlers.put("", new AtmosphereHandlerWrapper(servlet,new DefaultBroadcaster)) + atmosphereHandlers.put("", new AtmosphereHandlerWrapper(servlet,new JerseyBroadcaster)) setCometSupport(new GrizzlyCometSupport(config)) getCometSupport.init(sconf) diff --git a/lib/akka-kernel-0.5.jar b/lib/akka-kernel-0.5.jar index b03f1b8b8e0a63ff114fb4bbf24d5fbdbc22ba40..ff3a7c5acb99d2b2f776cad7844ab988f4bf7aa7 100644 GIT binary patch delta 14661 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 g23eaeWeuWMNQHu^|56t@;h{A7rgT2rbPTt-_E zb%)V~DSQ5AB_>Zs5S`2H45l}+ID+Y~tPpVrc6TtplfxEFpWqAw(+b>j%piRZe0La` za^_E#6VL`x-U6;nIrBG960l$v%$fh!%Iau}NeKf3Lp1{fgWKeV0@jl?W%%kvPuX%G zG7xBZ__yw;&-ML6Za98k zQF^xN*rS7ddu4svk6(V<=a$Xg>U?L9^ww7oMQi@WTr=F%#m#y4&_!>*tBV)asxO$Z zOi25gWkrN(FlW$1pv&|3zMJ524cD3{X diff --git a/samples-scala/src/main/scala/SimpleService.scala b/samples-scala/src/main/scala/SimpleService.scala index 76ce120b09..a766bccb0f 100644 --- a/samples-scala/src/main/scala/SimpleService.scala +++ b/samples-scala/src/main/scala/SimpleService.scala @@ -21,9 +21,6 @@ class Boot { SupervisorConfig( RestartStrategy(OneForOne, 3, 100), Supervise( - new SimpleService, - LifeCycle(Permanent, 100)) - :: Supervise( new Chat, LifeCycle(Permanent, 100)) :: Nil) @@ -93,6 +90,9 @@ class Chat extends Actor with Logging{ override def receive: PartialFunction[Any, Unit] = { case Chat(who,what,msg) => { + + //log.info("Chat(" + who + ", " + what + ", " + msg + ")") + what match { case "login" => reply("System Message__"+who+" has joined.") case "post" => reply("" + who + "__" + msg) @@ -106,6 +106,29 @@ class Chat extends Actor with Logging{ @Consumes(Array("application/x-www-form-urlencoded")) @POST @Produces(Array("text/html")) - @FilterBroadcast(Array(classOf[XSSHtmlFilter])) + @FilterBroadcast(Array(classOf[XSSHtmlFilter],classOf[JsonpFilter])) def publishMessage(form: MultivaluedMap[String, String]) = (this !! Chat(form.getFirst("name"),form.getFirst("action"),form.getFirst("message"))).getOrElse("System__error") - } \ No newline at end of file + } + + + class JsonpFilter extends BroadcastFilter[String] with Logging + { + + val BEGIN_SCRIPT_TAG = "\n" + + def filter(m : String) = { + var name = m + var message = "" + + if (m.indexOf("__") > 0) { + name = m.substring(0, m.indexOf("__")) + message = m.substring(m.indexOf("__") + 2) + } + + (BEGIN_SCRIPT_TAG + "window.parent.app.update({ name: \"" + + name + "\", message: \"" + + message + "\" });\n" + + END_SCRIPT_TAG) + } + } \ No newline at end of file