[jgroups-dev] ReplicatedHashMap with ForkChannel

Development issues <[email protected]> Thu, 25 Apr 2019 15:37:20 +0200
Newsgroups gmane.comp.java.javagroups.devel
Message-ID <mailman.37738.1556199487.1332.javagroups-development@lists.sourceforge.net>
--0000000000000f87b805875aed7e
Content-Type: multipart/alternative; boundary="0000000000000f87b505875aed7c"

--0000000000000f87b505875aed7c
Content-Type: text/plain; charset="UTF-8"

Hello,

I am using ReplicatedHashMap with ForkChannel. PFA configuration file
(*config.xml*).

ForkChannel forkChannel = new ForkChannel(channel, "myForkStack",
"myForkChannel");
forkChannel.connect(CLUSTER_NAME);

logger.info("ViewAsString :: " + forkChannel.getViewAsString());

wordCounter = new ReplicatedHashMap<>(forkChannel);
wordCounter.start(10_000);


Here, I am using Fork channel to make private communication between main
channel and Fork channel. Now, my JGroup Cluster initialized properly on
Main channel and Fork Channel. The values in ReplicatedHashMap are visible
to all running nodes, but as soon as I start new node in cluster, the
ReplicatedHashMap initialized again and the existing values in
ReplicatedHashMap are not visible to newly started Node.

PFA sample test program.

Note : Before I was using two channels with "Shared Transport" (<UDP
singleton_name="tp_one"), but Upgrading JGROUP to 3.6.16 gives warning to
use Fork Channel instead of Shared Transport.

Regards,
Tarana Desai

--0000000000000f87b505875aed7c
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div di=
r=3D"ltr"><pre style=3D"color:rgb(0,0,0);font-size:5.3pt;background-color:r=
gb(255,255,255)"><span style=3D"color:rgb(0,0,128)"><div style=3D"margin:0p=
x;padding:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);=
text-transform:none;text-indent:0px;letter-spacing:normal;font-size:13px;fo=
nt-style:normal;font-variant:normal;font-weight:400;text-decoration:none;wo=
rd-spacing:0px;white-space:normal;background-color:transparent"><pre style=
=3D"margin:0px;padding:0px;border:0px rgb(0,0,0);color:rgb(0,0,0);font-size=
:7.06px;background-color:rgb(255,255,255)"><font style=3D"margin:0px;paddin=
g:0px;border:0px rgb(0,0,0)"><div style=3D"margin:0px;padding:0px;border:0p=
x rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-transform:none;tex=
t-indent:0px;letter-spacing:normal;font-size:13px;font-style:normal;font-va=
riant:normal;font-weight:400;text-decoration:none;word-spacing:0px;white-sp=
ace:normal;background-color:transparent"><font face=3D"verdana,sans-serif">=
Hello,</font></div><div style=3D"margin:0px;padding:0px;border:0px rgb(34,3=
4,34);text-align:left;color:rgb(34,34,34);text-transform:none;text-indent:0=
px;letter-spacing:normal;font-size:13px;font-style:normal;font-variant:norm=
al;font-weight:400;text-decoration:none;word-spacing:0px;white-space:normal=
;background-color:transparent"><font face=3D"verdana,sans-serif"></font><br=
 style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34);color:rgb(34,34,3=
4);line-height:normal"></div><div style=3D"margin:0px;padding:0px;border:0p=
x rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-transform:none;tex=
t-indent:0px;letter-spacing:normal;font-size:13px;font-style:normal;font-va=
riant:normal;font-weight:400;text-decoration:none;word-spacing:0px;white-sp=
ace:normal;background-color:transparent"><font face=3D"verdana,sans-serif">=
I am using=C2=A0ReplicatedHashMap with ForkChannel. PFA configuration file =
(<b style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34);color:rgb(34,3=
4,34);line-height:normal">config.xml</b>).</font></div><div style=3D"margin=
:0px;padding:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,3=
4);text-transform:none;text-indent:0px;letter-spacing:normal;font-size:13px=
;font-style:normal;font-variant:normal;font-weight:400;text-decoration:none=
;word-spacing:0px;white-space:normal;background-color:transparent"><font fa=
ce=3D"verdana,sans-serif"><br></font></div><div style=3D"margin:0px;padding=
:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-tran=
sform:none;text-indent:0px;letter-spacing:normal;font-size:13px;font-varian=
t:normal;word-spacing:0px;white-space:normal;background-color:transparent">=
<pre style=3D"color:rgb(0,0,0);background-color:rgb(255,255,255)"><font fac=
e=3D"monospace,monospace">ForkChannel forkChannel =3D <span style=3D"color:=
rgb(0,0,128);font-weight:bold">new </span>ForkChannel(<span style=3D"color:=
rgb(25,72,166);font-weight:bold">channel</span>, <span style=3D"color:rgb(1=
01,138,186);font-weight:bold">&quot;myForkStack&quot;</span>, <span style=
=3D"color:rgb(101,138,186);font-weight:bold">&quot;myForkChannel&quot;</spa=
n>);<br>forkChannel.connect(<span style=3D"color:rgb(25,72,166);font-style:=
italic;font-weight:bold">CLUSTER_NAME</span>);<br><br><span style=3D"color:=
rgb(25,72,166);font-style:italic;font-weight:bold">logger</span>.info(<span=
 style=3D"color:rgb(101,138,186);font-weight:bold">&quot;ViewAsString :: &q=
uot; </span>+ forkChannel.getViewAsString());<br><br><span style=3D"color:r=
gb(25,72,166);font-weight:bold">wordCounter </span>=3D <span style=3D"color=
:rgb(0,0,128);font-weight:bold">new </span>ReplicatedHashMap&lt;&gt;(forkCh=
annel);<br><span style=3D"color:rgb(25,72,166);font-weight:bold">wordCounte=
r</span>.start(<span style=3D"color:rgb(0,0,255)">10_000</span>);</font><b>=
<i><u><sub><sup><strike><font face=3D"verdana,sans-serif"><br style=3D"marg=
in:0px;padding:0px;border:0px rgb(0,0,0)"></font></strike></sup></sub></u><=
/i></b></pre></div></font><br style=3D"margin:0px;padding:0px;border:0px rg=
b(0,0,0)"></pre></div><div style=3D"margin:0px;padding:0px;border:0px rgb(3=
4,34,34);text-align:left;color:rgb(34,34,34);text-transform:none;text-inden=
t:0px;letter-spacing:normal;font-size:13px;font-style:normal;font-variant:n=
ormal;font-weight:400;text-decoration:none;word-spacing:0px;white-space:nor=
mal;background-color:transparent"><font face=3D"verdana,sans-serif">Here, I=
 am using Fork channel to make private communication between main channel a=
nd Fork channel. Now, my JGroup Cluster initialized properly on Main channe=
l and Fork Channel. The values in ReplicatedHashMap are visible to all runn=
ing nodes, but as soon as I start new node in cluster, the ReplicatedHashMa=
p initialized again and the existing values in ReplicatedHashMap are not vi=
sible to newly started Node.</font></div><div style=3D"margin:0px;padding:0=
px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-transf=
orm:none;text-indent:0px;letter-spacing:normal;font-size:13px;font-style:no=
rmal;font-variant:normal;font-weight:400;text-decoration:none;word-spacing:=
0px;white-space:normal;background-color:transparent"><font face=3D"verdana,=
sans-serif"></font><br style=3D"margin:0px;padding:0px;border:0px rgb(34,34=
,34);color:rgb(34,34,34);line-height:normal"></div><div style=3D"margin:0px=
;padding:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);t=
ext-transform:none;text-indent:0px;letter-spacing:normal;font-size:13px;fon=
t-style:normal;font-variant:normal;font-weight:400;text-decoration:none;wor=
d-spacing:0px;white-space:normal;background-color:transparent"><font face=
=3D"verdana,sans-serif">PFA sample test program.</font></div><div style=3D"=
margin:0px;padding:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(3=
4,34,34);text-transform:none;text-indent:0px;letter-spacing:normal;font-siz=
e:13px;font-style:normal;font-variant:normal;font-weight:400;text-decoratio=
n:none;word-spacing:0px;white-space:normal;background-color:transparent"><f=
ont face=3D"verdana,sans-serif"></font><br style=3D"margin:0px;padding:0px;=
border:0px rgb(34,34,34);color:rgb(34,34,34);line-height:normal"></div><div=
 style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34);text-align:left;c=
olor:rgb(34,34,34);text-transform:none;text-indent:0px;letter-spacing:norma=
l;font-size:13px;font-style:normal;font-variant:normal;font-weight:400;text=
-decoration:none;word-spacing:0px;white-space:normal;background-color:trans=
parent"><font face=3D"verdana,sans-serif"><span style=3D"margin:0px;padding=
:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-tran=
sform:none;text-indent:0px;letter-spacing:normal;font-size:13px;font-style:=
normal;font-variant:normal;font-weight:400;text-decoration:none;word-spacin=
g:0px;display:inline;white-space:normal;float:none;background-color:transpa=
rent">Note : Before I was using two channels with &quot;Shared Transport&qu=
ot; (</span><span style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34)"=
>&lt;</span><span style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34)"=
>UDP </span><span style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34)"=
>singleton_name</span><span style=3D"margin:0px;padding:0px;border:0px rgb(=
34,34,34)">=3D</span><span style=3D"margin:0px;padding:0px;border:0px rgb(3=
4,34,34)">&quot;tp_one&quot;),=C2=A0<span style=3D"margin:0px;padding:0px;b=
order:0px rgb(34,34,34)">but Upgrading JGROUP to 3.6.16 gives warning to us=
e Fork Channel instead of Shared Transport.<br style=3D"margin:0px;padding:=
0px;border:0px rgb(34,34,34);color:rgb(34,34,34);line-height:normal"></span=
></span></font><b style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34);=
color:rgb(34,34,34);line-height:normal"></b><i style=3D"margin:0px;padding:=
0px;border:0px rgb(34,34,34);color:rgb(34,34,34);line-height:normal"></i><u=
 style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34);color:rgb(34,34,3=
4);line-height:normal"></u><sub style=3D"margin:0px;padding:0px;border:0px =
rgb(34,34,34)"></sub><sup style=3D"margin:0px;padding:0px;border:0px rgb(34=
,34,34)"></sup><strike style=3D"margin:0px;padding:0px;border:0px rgb(34,34=
,34)"></strike><br style=3D"margin:0px;padding:0px;border:0px rgb(34,34,34)=
;color:rgb(34,34,34);line-height:normal"></div><div style=3D"margin:0px;pad=
ding:0px;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-=
transform:none;text-indent:0px;letter-spacing:normal;font-size:13px;font-st=
yle:normal;font-variant:normal;font-weight:400;text-decoration:none;word-sp=
acing:0px;white-space:normal;background-color:transparent"><font face=3D"ve=
rdana,sans-serif">Regards,</font></div><div style=3D"margin:0px;padding:0px=
;border:0px rgb(34,34,34);text-align:left;color:rgb(34,34,34);text-transfor=
m:none;text-indent:0px;letter-spacing:normal;font-size:13px;font-style:norm=
al;font-variant:normal;font-weight:400;text-decoration:none;word-spacing:0p=
x;white-space:normal;background-color:transparent"><font face=3D"verdana,sa=
ns-serif">Tarana Desai=C2=A0</font></div></span></pre></div></div></div></d=
iv></div>

--0000000000000f87b505875aed7c--
--0000000000000f87b805875aed7e
Content-Type: application/octet-stream; 
	name="Demo2_SimpleChatClientWithViews.java"
Content-Disposition: attachment; 
	filename="Demo2_SimpleChatClientWithViews.java"
Content-Transfer-Encoding: base64
Content-ID: <f_juwoy9sp0>
X-Attachment-Id: f_juwoy9sp0

LyoqDQogKiBKQm9zcywgSG9tZSBvZiBQcm9mZXNzaW9uYWwgT3BlbiBTb3VyY2UuDQogKiBDb3B5
cmlnaHQgMjAxNCBSZWQgSGF0LCBJbmMuLCBhbmQgaW5kaXZpZHVhbCBjb250cmlidXRvcnMNCiAq
IGFzIGluZGljYXRlZCBieSB0aGUgQGF1dGhvciB0YWdzLg0KICogPHAvPg0KICogTGljZW5zZWQg
dW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7DQog
KiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhl
IExpY2Vuc2UuDQogKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQNCiAq
IDxwLz4NCiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMA0KICog
PHAvPg0KICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBp
biB3cml0aW5nLCBzb2Z0d2FyZQ0KICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMg
ZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywNCiAqIFdJVEhPVVQgV0FSUkFOVElFUyBP
UiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLg0KICog
U2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1p
c3Npb25zIGFuZA0KICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuDQogKiA8cC8+DQog
KiBKQm9zcywgSG9tZSBvZiBQcm9mZXNzaW9uYWwgT3BlbiBTb3VyY2UuDQogKiBDb3B5cmlnaHQg
MjAxNCBSZWQgSGF0LCBJbmMuLCBhbmQgaW5kaXZpZHVhbCBjb250cmlidXRvcnMNCiAqIGFzIGlu
ZGljYXRlZCBieSB0aGUgQGF1dGhvciB0YWdzLg0KICogPHAvPg0KICogTGljZW5zZWQgdW5kZXIg
dGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7DQogKiB5b3Ug
bWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vu
c2UuDQogKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQNCiAqIDxwLz4N
CiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMA0KICogPHAvPg0K
ICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0
aW5nLCBzb2Z0d2FyZQ0KICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJp
YnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywNCiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05E
SVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLg0KICogU2VlIHRo
ZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25z
IGFuZA0KICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuDQogKi8NCg0KLyoqDQogKiBK
Qm9zcywgSG9tZSBvZiBQcm9mZXNzaW9uYWwgT3BlbiBTb3VyY2UuDQogKiBDb3B5cmlnaHQgMjAx
NCBSZWQgSGF0LCBJbmMuLCBhbmQgaW5kaXZpZHVhbCBjb250cmlidXRvcnMNCiAqIGFzIGluZGlj
YXRlZCBieSB0aGUgQGF1dGhvciB0YWdzLg0KICoNCiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFj
aGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOw0KICogeW91IG1heSBub3Qg
dXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLg0KICog
WW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0DQogKg0KICogaHR0cDovL3d3
dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wDQogKg0KICogVW5sZXNzIHJlcXVpcmVk
IGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQ0KICog
ZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElT
IiBCQVNJUywNCiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5E
LCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLg0KICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUg
c3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZA0KICogbGltaXRhdGlv
bnMgdW5kZXIgdGhlIExpY2Vuc2UuDQogKi8NCg0KcGFja2FnZSBvcmcuamdyb3Vwcy5wcmVzZW50
YXRpb24uY2hhdDsNCg0KaW1wb3J0IG9yZy5qZ3JvdXBzLkpDaGFubmVsOw0KaW1wb3J0IG9yZy5q
Z3JvdXBzLk1lc3NhZ2U7DQppbXBvcnQgb3JnLmpncm91cHMuUmVjZWl2ZXJBZGFwdGVyOw0KaW1w
b3J0IG9yZy5qZ3JvdXBzLlZpZXc7DQppbXBvcnQgb3JnLmpncm91cHMuYmxvY2tzLlJlcGxpY2F0
ZWRIYXNoTWFwOw0KaW1wb3J0IG9yZy5qZ3JvdXBzLmZvcmsuRm9ya0NoYW5uZWw7DQppbXBvcnQg
b3JnLmpncm91cHMucHJlc2VudGF0aW9uLmNoYXQudXRpbHMuQXBwbGljYXRpb25FeGl0RXhjZXB0
aW9uOw0KaW1wb3J0IG9yZy5zbGY0ai5Mb2dnZXI7DQppbXBvcnQgb3JnLnNsZjRqLkxvZ2dlckZh
Y3Rvcnk7DQoNCmltcG9ydCBqYXZhLmxhbmcuaW52b2tlLk1ldGhvZEhhbmRsZXM7DQoNCmltcG9y
dCBzdGF0aWMgb3JnLmpncm91cHMucHJlc2VudGF0aW9uLmNoYXQudXRpbHMuQ29uc29sZUhlbHBl
ci5nZXRUZXh0RnJvbUNvbnNvbGU7DQoNCi8qKg0KICogQmVmb3JlIHJ1bm5pbmcgdGhpcyBkZW1v
LCBwbGVhc2UgbWFrZSBzdXJlOg0KICogPHVsPg0KICogPGxpPi1EamF2YS5uZXQucHJlZmVySVB2
NFN0YWNrPXRydWU8L2xpPg0KICogPC91bD4NCiAqLw0KcHVibGljIGNsYXNzIERlbW8yX1NpbXBs
ZUNoYXRDbGllbnRXaXRoVmlld3Mgew0KDQogICAgcHJpdmF0ZSBzdGF0aWMgZmluYWwgTG9nZ2Vy
IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKE1ldGhvZEhhbmRsZXMubG9va3VwKCku
bG9va3VwQ2xhc3MoKSk7DQoNCiAgICBwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgQ09ORklH
X1BBVEggPSAiY29uZmlnLnhtbCI7DQogICAgcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIENM
VVNURVJfTkFNRSA9ICJDaGF0RGVtbyI7DQoNCiAgICBwcml2YXRlIEpDaGFubmVsIGNoYW5uZWw7
DQoNCiAgICBwcml2YXRlIFJlcGxpY2F0ZWRIYXNoTWFwPFN0cmluZywgSW50ZWdlcj4gd29yZENv
dW50ZXI7DQoNCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB0aHJv
d3MgRXhjZXB0aW9uIHsNCiAgICAgICAgbmV3IERlbW8yX1NpbXBsZUNoYXRDbGllbnRXaXRoVmll
d3MoKS5ydW5DbGllbnQoKTsNCiAgICB9DQoNCiAgICBwcml2YXRlIHZvaWQgcnVuQ2xpZW50KCkg
dGhyb3dzIEV4Y2VwdGlvbiB7DQogICAgICAgIGNoYW5uZWwgPSBuZXcgSkNoYW5uZWwoTWV0aG9k
SGFuZGxlcy5sb29rdXAoKS5sb29rdXBDbGFzcygpLmdldENsYXNzTG9hZGVyKCkuZ2V0UmVzb3Vy
Y2UoQ09ORklHX1BBVEgpKTsNCiAgICAgICAgY2hhbm5lbC5jb25uZWN0KENMVVNURVJfTkFNRSk7
DQogICAgICAgIGNoYW5uZWwuc2V0UmVjZWl2ZXIobmV3IFJlY2VpdmVyQWRhcHRlcigpIHsNCiAg
ICAgICAgICAgIEBPdmVycmlkZQ0KICAgICAgICAgICAgcHVibGljIHZvaWQgcmVjZWl2ZShNZXNz
YWdlIG1zZykgew0KICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJOZXcgTWVzc2FnZSA6OiBb
e31dIC0+IFt7fV0gOjoge30iLCBtc2cuc3JjKCksIG1zZy5kZXN0KCksIG1zZy5nZXRPYmplY3Qo
KSk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIEBPdmVycmlkZQ0KICAgICAgICAgICAg
cHVibGljIHZvaWQgdmlld0FjY2VwdGVkKFZpZXcgdmlldykgew0KICAgICAgICAgICAgICAgIGxv
Z2dlci5pbmZvKCJOZXcgVmlldyA6OiB7fSIsIHZpZXcpOw0KICAgICAgICAgICAgfQ0KICAgICAg
ICB9KTsNCg0KICAgICAgICBGb3JrQ2hhbm5lbCBmb3JrQ2hhbm5lbCA9IG5ldyBGb3JrQ2hhbm5l
bChjaGFubmVsLCAibXlGb3JrU3RhY2siLCAibXlGb3JrQ2hhbm5lbCIpOw0KICAgICAgICBmb3Jr
Q2hhbm5lbC5jb25uZWN0KENMVVNURVJfTkFNRSk7DQoNCiAgICAgICAgbG9nZ2VyLmluZm8oIlZp
ZXdBc1N0cmluZyA6OiAiICsgZm9ya0NoYW5uZWwuZ2V0Vmlld0FzU3RyaW5nKCkpOw0KDQogICAg
ICAgIHdvcmRDb3VudGVyID0gbmV3IFJlcGxpY2F0ZWRIYXNoTWFwPD4oZm9ya0NoYW5uZWwpOw0K
ICAgICAgICB3b3JkQ291bnRlci5zdGFydCgxMF8wMDApOw0KDQogICAgICAgIHdoaWxlICh0cnVl
KSB7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIFN0cmluZyBpbnB1dCA9IGdl
dFRleHRGcm9tQ29uc29sZSgpOw0KDQogICAgICAgICAgICAgICAgc3dpdGNoIChpbnB1dCkgew0K
ICAgICAgICAgICAgICAgICAgICBjYXNlICJjb3VudCI6DQogICAgICAgICAgICAgICAgICAgICAg
ICBsb2dnZXIuaW5mbygid29yZCBjb3VudGVyIHt9Iiwgd29yZENvdW50ZXIpOw0KICAgICAgICAg
ICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgICAgICAgIGNhc2UgImZvcmsiOg0K
ICAgICAgICAgICAgICAgICAgICAgICAgaW5jcmVtZW50SW5SZXBsaWNhdGlvbk1hcChpbnB1dCk7
DQogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICAgICAgZGVm
YXVsdDoNCiAgICAgICAgICAgICAgICAgICAgICAgIE1lc3NhZ2UgbXNnID0gbmV3IE1lc3NhZ2Uo
bnVsbCwgbnVsbCwgaW5wdXQpOw0KICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbC5zZW5k
KG1zZyk7DQogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgIH0gY2F0Y2ggKEFwcGxpY2F0aW9uRXhpdEV4Y2VwdGlvbiBlKSB7DQog
ICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJCeWUhIik7DQogICAgICAgICAgICAg
ICAgY2hhbm5lbC5jbG9zZSgpOw0KICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAg
fQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgcHVibGljIHZvaWQgaW5jcmVtZW50SW5SZXBsaWNh
dGlvbk1hcChTdHJpbmcgaW5wdXQpIHsNCiAgICAgICAgbG9nZ2VyLmluZm8oIkZvcmsgbWVzc2Fn
ZSByZWNlaXZlZCIpOw0KICAgICAgICBJbnRlZ2VyIHZhbHVlRnJvbVRoZUNhY2hlID0gd29yZENv
dW50ZXIuZ2V0KGlucHV0KTsNCiAgICAgICAgaW50IGN1cnJlbnRDb3VudCA9IHZhbHVlRnJvbVRo
ZUNhY2hlID09IG51bGwgPyAwIDogdmFsdWVGcm9tVGhlQ2FjaGU7DQogICAgICAgIHdvcmRDb3Vu
dGVyLnB1dChpbnB1dCwgKytjdXJyZW50Q291bnQpOw0KICAgIH0NCn0NCg==
--0000000000000f87b805875aed7e
Content-Type: text/xml; charset="US-ASCII"; name="config.xml"
Content-Disposition: attachment; filename="config.xml"
Content-Transfer-Encoding: base64
Content-ID: <f_juwoyo221>
X-Attachment-Id: f_juwoyo221

PCEtLQ0KICBEZWZhdWx0IHN0YWNrIHVzaW5nIElQIG11bHRpY2FzdGluZy4gSXQgaXMgc2ltaWxh
ciB0byB0aGUgInVkcCINCiAgc3RhY2sgaW4gc3RhY2tzLnhtbCwgYnV0IGRvZXNuJ3QgdXNlIHN0
cmVhbWluZyBzdGF0ZSB0cmFuc2ZlciBhbmQgZmx1c2hpbmcNCiAgYXV0aG9yOiBCZWxhIEJhbg0K
LS0+DQoNCjxjb25maWcgeG1sbnM9InVybjpvcmc6amdyb3VwcyINCiAgICAgICAgeG1sbnM6eHNp
PSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSINCiAgICAgICAgeHNp
OnNjaGVtYUxvY2F0aW9uPSJ1cm46b3JnOmpncm91cHMgaHR0cDovL3d3dy5qZ3JvdXBzLm9yZy9z
Y2hlbWEvamdyb3Vwcy54c2QiDQogICAgICAgID4NCiAgPFVEUA0KICAgICAgYmluZF9hZGRyPSJM
T09QQkFDSyINCiAgICAgIG1jYXN0X2FkZHI9IjIyOC41LjUuNSINCiAgICAgIG1jYXN0X3BvcnQ9
IiR7amdyb3Vwcy51ZHAubWNhc3RfcG9ydDo0NTU4OH0iDQogICAgICBpcF90dGw9IjgiDQogICAg
ICB0b3M9IjgiDQogICAgICB1Y2FzdF9yZWN2X2J1Zl9zaXplPSI1TSINCiAgICAgIHVjYXN0X3Nl
bmRfYnVmX3NpemU9IjVNIg0KICAgICAgbWNhc3RfcmVjdl9idWZfc2l6ZT0iNU0iDQogICAgICBt
Y2FzdF9zZW5kX2J1Zl9zaXplPSI1TSINCiAgICAgIG1heF9idW5kbGVfc2l6ZT0iNjRLIg0KICAg
ICAgbWF4X2J1bmRsZV90aW1lb3V0PSIzMCINCiAgICAgIGVuYWJsZV9kaWFnbm9zdGljcz0idHJ1
ZSINCiAgICAgIHRocmVhZF9uYW1pbmdfcGF0dGVybj0iY2wiDQoNCiAgICAgIHRpbWVyX3R5cGU9
Im5ldzMiDQogICAgICB0aW1lci5taW5fdGhyZWFkcz0iMiINCiAgICAgIHRpbWVyLm1heF90aHJl
YWRzPSI0Ig0KICAgICAgdGltZXIua2VlcF9hbGl2ZV90aW1lPSIzMDAwIg0KICAgICAgdGltZXIu
cXVldWVfbWF4X3NpemU9IjUwMCINCg0KICAgICAgdGhyZWFkX3Bvb2wuZW5hYmxlZD0idHJ1ZSIN
CiAgICAgIHRocmVhZF9wb29sLm1pbl90aHJlYWRzPSI0Ig0KICAgICAgdGhyZWFkX3Bvb2wubWF4
X3RocmVhZHM9IjgiDQogICAgICB0aHJlYWRfcG9vbC5rZWVwX2FsaXZlX3RpbWU9IjUwMDAiDQog
ICAgICB0aHJlYWRfcG9vbC5xdWV1ZV9lbmFibGVkPSJ0cnVlIg0KICAgICAgdGhyZWFkX3Bvb2wu
cXVldWVfbWF4X3NpemU9IjEwMDAwIg0KICAgICAgdGhyZWFkX3Bvb2wucmVqZWN0aW9uX3BvbGlj
eT0iZGlzY2FyZCINCg0KICAgICAgb29iX3RocmVhZF9wb29sLmVuYWJsZWQ9InRydWUiDQogICAg
ICBvb2JfdGhyZWFkX3Bvb2wubWluX3RocmVhZHM9IjEiDQogICAgICBvb2JfdGhyZWFkX3Bvb2wu
bWF4X3RocmVhZHM9IjgiDQogICAgICBvb2JfdGhyZWFkX3Bvb2wua2VlcF9hbGl2ZV90aW1lPSI1
MDAwIg0KICAgICAgb29iX3RocmVhZF9wb29sLnF1ZXVlX2VuYWJsZWQ9ImZhbHNlIg0KICAgICAg
b29iX3RocmVhZF9wb29sLnF1ZXVlX21heF9zaXplPSIxMDAiDQogICAgICBvb2JfdGhyZWFkX3Bv
b2wucmVqZWN0aW9uX3BvbGljeT0iZGlzY2FyZCIvPg0KDQogIDwhLS08RElTQ0FSRCBndWk9InRy
dWUiLz4tLT4NCg0KICA8UElORy8+DQogIDxNRVJHRTMgbWF4X2ludGVydmFsPSIzMDAwMCINCiAg
ICAgICAgICBtaW5faW50ZXJ2YWw9IjEwMDAwIi8+DQogIDxGRF9TT0NLLz4NCiAgPEZEX0FMTC8+
DQogIDxWRVJJRllfU1VTUEVDVCB0aW1lb3V0PSIxNTAwIi8+DQogIDxCQVJSSUVSLz4NCiAgPHBi
Y2FzdC5OQUtBQ0syIHhtaXRfaW50ZXJ2YWw9IjUwMCINCiAgICAgICAgICAgICAgICAgIHhtaXRf
dGFibGVfbnVtX3Jvd3M9IjEwMCINCiAgICAgICAgICAgICAgICAgIHhtaXRfdGFibGVfbXNnc19w
ZXJfcm93PSIyMDAwIg0KICAgICAgICAgICAgICAgICAgeG1pdF90YWJsZV9tYXhfY29tcGFjdGlv
bl90aW1lPSIzMDAwMCINCiAgICAgICAgICAgICAgICAgIG1heF9tc2dfYmF0Y2hfc2l6ZT0iNTAw
Ig0KICAgICAgICAgICAgICAgICAgdXNlX21jYXN0X3htaXQ9ImZhbHNlIg0KICAgICAgICAgICAg
ICAgICAgZGlzY2FyZF9kZWxpdmVyZWRfbXNncz0idHJ1ZSIvPg0KICA8VU5JQ0FTVDMgeG1pdF9p
bnRlcnZhbD0iNTAwIg0KICAgICAgICAgICAgeG1pdF90YWJsZV9udW1fcm93cz0iMTAwIg0KICAg
ICAgICAgICAgeG1pdF90YWJsZV9tc2dzX3Blcl9yb3c9IjIwMDAiDQogICAgICAgICAgICB4bWl0
X3RhYmxlX21heF9jb21wYWN0aW9uX3RpbWU9IjYwMDAwIg0KICAgICAgICAgICAgY29ubl9leHBp
cnlfdGltZW91dD0iMCINCiAgICAgICAgICAgIG1heF9tc2dfYmF0Y2hfc2l6ZT0iNTAwIi8+DQog
IDxwYmNhc3QuU1RBQkxFIHN0YWJpbGl0eV9kZWxheT0iMTAwMCIgZGVzaXJlZF9hdmdfZ29zc2lw
PSI1MDAwMCINCiAgICAgICAgICAgICAgICAgbWF4X2J5dGVzPSI0TSIvPg0KICA8cGJjYXN0LkdN
UyBwcmludF9sb2NhbF9hZGRyPSJ0cnVlIiBqb2luX3RpbWVvdXQ9IjIwMDAiDQogICAgICAgICAg
ICAgIHZpZXdfYnVuZGxpbmc9InRydWUiIHN0YXRzPSJ0cnVlIi8+DQogIDxVRkMgbWF4X2NyZWRp
dHM9IjJNIg0KICAgICAgIG1pbl90aHJlc2hvbGQ9IjAuNCIvPg0KICA8TUZDIG1heF9jcmVkaXRz
PSIyTSINCiAgICAgICBtaW5fdGhyZXNob2xkPSIwLjQiLz4NCiAgPEZSQUcyIGZyYWdfc2l6ZT0i
NjBLIi8+DQoNCiAgPHBiY2FzdC5TVEFURV9UUkFOU0ZFUiAvPg0KICA8UlNWUCByZXNlbmRfaW50
ZXJ2YWw9IjIwMDAiIHRpbWVvdXQ9IjEwMDAwIi8+DQogIDxDT1VOVEVSIG51bV9iYWNrdXBzPSIx
Ii8+DQogIDxDRU5UUkFMX0xPQ0sgbnVtX2JhY2t1cHM9IjEiLz4NCiAgPEZPUks+DQogICAgPGZv
cmstc3RhY2tzPg0KDQogICAgICA8Zm9yay1zdGFjayBpZD0ibXlGb3JrU3RhY2siPg0KICAgICAg
PC9mb3JrLXN0YWNrPg0KDQogICAgPC9mb3JrLXN0YWNrcz4NCiAgPC9GT1JLPg0KPC9jb25maWc+
DQo=
--0000000000000f87b805875aed7e
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--0000000000000f87b805875aed7e
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Javagroups-development mailing list


--0000000000000f87b805875aed7e--