Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
KGregPFerenc
AndroidOnlabKviz2018
Commits
b349963a
Commit
b349963a
authored
Apr 07, 2018
by
KGreg
Browse files
ConnectionLost mechanism
parent
b7b8e32e
Changes
2
Hide whitespace changes
Inline
Side-by-side
KvizClient/app/src/main/java/onlab/kvizclient/LobbyActivity.java
View file @
b349963a
...
...
@@ -87,7 +87,7 @@ public class LobbyActivity extends AppCompatActivity implements ServerConnection
discovering
=
false
;
for
(
ServerModel
server
:
servers
)
{
Send
Disc
onnect
(
server
);
Send
C
onnect
ionLost
(
server
);
}
for
(
Thread
thread
:
threads
)
{
...
...
@@ -318,7 +318,7 @@ public class LobbyActivity extends AppCompatActivity implements ServerConnection
//nem sikerült
}
break
;
case
"
Disc
onnect"
:
case
"
C
onnect
ionLost
"
:
for
(
ServerModel
server:
servers
)
{
if
(
server
.
getSocket
()
==
serverModel
.
getSocket
())
{
...
...
@@ -332,18 +332,8 @@ public class LobbyActivity extends AppCompatActivity implements ServerConnection
}
break
;
case
"-1"
:
for
(
ServerModel
server:
servers
)
{
if
(
server
.
getSocket
()
==
serverModel
.
getSocket
())
{
int
position
=
servers
.
indexOf
(
serverModel
);
updateConversationHandler
.
post
(
new
updateUIThread
(
Operation
.
REMOVE_SERVER
,
serverModel
));
servers
.
remove
(
serverModel
);
serverModel
.
getSocket
().
close
();
threads
.
remove
(
Thread
.
currentThread
());
Thread
.
currentThread
().
interrupt
();
}
}
case
"Disconnect"
:
//
break
;
default
:
break
;
...
...
@@ -405,13 +395,13 @@ public class LobbyActivity extends AppCompatActivity implements ServerConnection
recyclerView
.
setAdapter
(
adapter
);
}
private
void
Send
Disc
onnect
(
ServerModel
server
)
private
void
Send
C
onnect
ionLost
(
ServerModel
server
)
{
try
{
PrintWriter
out
=
new
PrintWriter
(
new
BufferedWriter
(
new
OutputStreamWriter
(
server
.
getSocket
().
getOutputStream
())),
true
);
out
.
println
(
"
Disc
onnect"
);
out
.
println
(
"
C
onnect
ionLost
"
);
out
.
close
();
}
catch
(
IOException
e
)
{
...
...
KvizServer/app/src/main/java/onlab/kvizserver/LobbyActivity.java
View file @
b349963a
...
...
@@ -119,14 +119,14 @@ public class LobbyActivity extends AppCompatActivity {
registred
=
false
;
for
(
ClientModel
client
:
allclients
)
{
Send
Disc
onnect
(
client
);
Send
C
onnect
ionLost
(
client
);
}
/*
for
(
Thread
thread
:
threads
)
{
thread
.
interrupt
();
}
*/
}
super
.
onPause
();
...
...
@@ -266,7 +266,7 @@ public class LobbyActivity extends AppCompatActivity {
}
else
{
params
[
0
]
=
"
Disc
onnect"
;
params
[
0
]
=
"
C
onnect
ionLost
"
;
}
switch
(
params
[
0
])
{
...
...
@@ -293,12 +293,13 @@ public class LobbyActivity extends AppCompatActivity {
}
out
.
println
(
"Connect##Ok!"
);
break
;
case
"
Disc
onnect"
:
case
"
C
onnect
ionLost
"
:
for
(
ClientModel
client
:
clients
)
{
if
(
client
.
getClientsocket
()
==
clientSocket
)
{
int
position
=
clients
.
indexOf
(
client
);
updateConversationHandler
.
post
(
new
updateUIThread
(
Operation
.
REMOVE_CLIENT
,
Integer
.
toString
(
position
)));
clients
.
remove
(
client
);
allclients
.
remove
(
client
);
clientSocket
.
close
();
threads
.
remove
(
Thread
.
currentThread
());
Thread
.
currentThread
().
interrupt
();
...
...
@@ -307,6 +308,16 @@ public class LobbyActivity extends AppCompatActivity {
}
};
break
;
case
"Disconnect"
:
for
(
ClientModel
client
:
clients
)
{
if
(
client
.
getClientsocket
()
==
clientSocket
)
{
int
position
=
clients
.
indexOf
(
client
);
clients
.
remove
(
client
);
updateConversationHandler
.
post
(
new
updateUIThread
(
Operation
.
REMOVE_CLIENT
,
Integer
.
toString
(
position
)));
break
;
}
};
break
;
default
:
out
.
println
(
"Unknown Message!"
);
...
...
@@ -366,13 +377,13 @@ public class LobbyActivity extends AppCompatActivity {
recyclerView
.
setAdapter
(
adapter
);
}
private
void
Send
Disc
onnect
(
ClientModel
client
)
private
void
Send
C
onnect
ionLost
(
ClientModel
client
)
{
try
{
PrintWriter
out
=
new
PrintWriter
(
new
BufferedWriter
(
new
OutputStreamWriter
(
client
.
getClientsocket
().
getOutputStream
())),
true
);
out
.
println
(
"
Disc
onnect"
);
out
.
println
(
"
C
onnect
ionLost
"
);
out
.
close
();
}
catch
(
IOException
e
)
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment