annotate rep/EditorList.java @ 76:97ca5f5447cd

*** empty log message ***
author pin
date Tue, 04 Dec 2007 10:33:06 +0900
parents 593f915dd6ff
children d5cd4d103eea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
1 package rep;
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
2
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
3 import java.nio.channels.SocketChannel;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
4 import java.util.LinkedList;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
5
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
6 public class EditorList {
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
7
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
8 private int numberOfEditor;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
9 private LinkedList<Editor> editorList = new LinkedList<Editor>();
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
10
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
11 public void sendJoinAck(REPCommand repCmd) {
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
12 Editor editor = null;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
13 for(Editor editor2 : editorList){
24
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
14 error(String.valueOf(editor2.getEID()), String.valueOf(repCmd.eid));
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
15 if(editor2.getEID() == repCmd.eid){
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
16 editor = editor2;
24
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
17 break;
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
18 }
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
19 }
24
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
20 error(editor);
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
21 REPPacketSend send = new REPPacketSend(editor.getChannel());
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
22 send.send(repCmd);
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
23 }
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
24
24
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
25
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
26 public void sendJoinAck(SocketChannel channel, REPCommand repCmd) {
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
27 REPCommand command = repCmd;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
28 command.setCMD(REP.SMCMD_JOIN_ACK);
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
29
23
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
30 REPPacketSend send = new REPPacketSend(channel);
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
31 send.send(command);
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
32 }
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
33
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
34 public int addEditor(SocketChannel channel, REPCommand repCmd) {
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
35 numberOfEditor++;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
36 editorList.add(new Editor(numberOfEditor, channel));
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
37 return numberOfEditor;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
38 }
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
39
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
40 public void addEditor(SocketChannel channel) {
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
41 editorList.add(new Editor(0, channel));
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
42 }
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
43
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
44 public void setEID(REPCommand repCmd) {
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
45 for(Editor editor : editorList){
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
46 if(editor.getEID() == 0){
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
47 editor.setEID(repCmd.eid);
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
48 break;
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
49 }
01657c033761 *** empty log message ***
pin
parents: 22
diff changeset
50 }
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
51 }
24
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
52
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
53 private void error(Object obj) {
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
54 if(obj == null){
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
55 System.out.println("null!");
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
56 }
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
57 }
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
58 private void error(String str1, String str2){
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
59 if(str1.equals(str2)){
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
60 return;
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
61 }else{
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
62 System.out.println("Not equals! str1:str2");
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
63 }
7012a944e58f *** empty log message ***
pin
parents: 23
diff changeset
64 }
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
65
31
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
66
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
67 public void sendPutAck(SocketChannel channel, REPCommand repCmd) {
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
68 REPPacketSend send = new REPPacketSend(channel);
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
69 send.send(repCmd);
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
70 }
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
71
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
72 public void send(SocketChannel channel, REPCommand command){
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
73 REPPacketSend send = new REPPacketSend(channel);
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
74 send.send(command);
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
75 }
593f915dd6ff for JOIN and PUT Testing
pin
parents: 24
diff changeset
76
76
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
77
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
78 public void setHost(String myHost) {
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
79 // TODO Auto-generated method stub
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
80 for(Editor editor : editorList) {
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
81 editor.setHost(myHost);
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
82 }
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
83 }
97ca5f5447cd *** empty log message ***
pin
parents: 31
diff changeset
84
22
850a9cc4963a *** empty log message ***
pin
parents:
diff changeset
85 }