-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathClientObserver.java
78 lines (65 loc) · 1.59 KB
/
ClientObserver.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package assignment7;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
//import java.util.Observable;
//import java.util.Observer;
import java.net.Socket;
import java.util.ArrayList;
public class ClientObserver {
private int clientNum;
private String clientName;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
private Socket socket;
private ObjectOutputStream obj;
private ArrayList<ServerObservable> chat = new ArrayList<ServerObservable>();
public ClientObserver(int clientNum, Socket socket, ObjectOutputStream obj, ServerObservable chat) {
//super(out);
this.clientNum = clientNum;
this.socket = socket;
this.obj = obj;
// this.chat.add(chat);
}
public ArrayList<ServerObservable> getChatList(){
return chat;
}
public ServerObservable getChat(String ChatName) {
for(int i = 0; i <chat.size(); i++){
if((chat.get(i).toString()).equals(ChatName)){
return chat.get(i);
}
}
return null;
}
public void setChat(ServerObservable chat) {
this.chat.add(chat);
}
public void setSocket(Socket socket) {
this.socket = socket;
}
public int getClientNum() {
return clientNum;
}
public Socket getSocket() {
return socket;
}
public void update(Object arg) {
try {
obj.writeObject(arg);
obj.reset();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public String toString() {
return "Client " + clientNum;
}
}