annotate rep/handler/REPNode.java @ 450:21cb16b7f3df

block message in Editor.write()
author one
date Thu, 23 Sep 2010 18:15:37 +0900
parents 1bb59652d89c
children c83af820eb62
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
1 package rep.handler;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
2
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
3 import java.io.IOException;
431
1bb59652d89c fixing merge...
one
parents: 399
diff changeset
4 import java.util.List;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
5
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
6 import rep.REP;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
7 import rep.REPCommand;
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
8 import rep.Session;
387
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
9 import rep.SessionManager;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
10 import rep.channel.REPSelectionKey;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
11 import rep.channel.REPSocketChannel;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
12
384
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
13 /**
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
14 * @author kono
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
15 * Abstract class for all REP node
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
16 * Sub classes:
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
17 * FirstConnector waiting first connection and determines its type.
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
18 * Editor editor direct connect or no connection (master/slave)
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
19 * Forwarder send command to the other session manager
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
20 * base class for other communication node
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
21 * Dispatcher Session Manager entry, dispatch commands to editors.
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
22 * NullForwarder REP node with no connection
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
23 */
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
24 public abstract class REPNode {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
25
384
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
26 public int eid; // globally unique (contains SessionManagerID)
bcdf5476b8e4 restructured-version
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 382
diff changeset
27 public int sid=-1; // globally unique
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
28 public String host;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
29 public String file;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
30 public REP mode;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
31 public REPSocketChannel<REPCommand> channel;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
32 public REPNode next;
387
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
33 public SessionManager manager;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
34
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
35 public REPNode() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
36
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
37 }
387
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
38
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
39 public REPNode(int eid, SessionManager manager, REPSocketChannel<REPCommand> channel) {
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
40 this.eid = eid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
41 this.channel = channel;
387
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
42 this.manager = manager;
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
43 }
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
44
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
45 public REPNode(SessionManager manager, REPSocketChannel<REPCommand> channel) {
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
46 this.channel = channel;
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
47 this.manager = manager;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
48 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
49
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
50 public String getName() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
51 return file;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
52 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
53
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
54 public void setName(String string) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
55 file = string;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
56 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
57
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
58
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
59 public void setSID(int sid) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
60 this.sid = sid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
61 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
62
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
63 public int getSID() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
64 return sid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
65 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
66
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
67 public boolean hasSession() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
68 return sid != -1;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
69 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
70
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
71 public String toString(){
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
72 return ("Editor:" + eid);
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
73 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
74
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
75 public void setEID(int eid) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
76 this.eid = eid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
77 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
78
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
79 public int getEID(){
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
80 return eid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
81 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
82
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
83 public void setHost(String host){
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
84 if (channel!=null)
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
85 this.host = host;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
86 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
87
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
88
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
89 public String getHost(){
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
90 return host;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
91 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
92 public REPSocketChannel<REPCommand> getChannel(){
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
93 return channel;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
94
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
95 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
96 public void setChannel(REPSocketChannel<REPCommand> channel) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
97 this.channel = channel;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
98 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
99
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
100 public void merge(REPNode editor) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
101 if (sid==-1) sid = editor.sid;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
102 if (file==null) file = editor.file;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
103 if (host==null) host = editor.host;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
104 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
105
387
6f356d160e58 IPv6 any address
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 386
diff changeset
106 public abstract void handle(REPCommand command, REPSelectionKey<REPCommand> key) throws IOException;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
107
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
108
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
109 public abstract void cancel(REPSocketChannel<REPCommand> channel1) ;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
110
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
111 public abstract String getLocalHostName();
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
112
450
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
113 /**
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
114 * Send to the next REPNode (with possible blocking)
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
115 * @param command
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
116 */
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
117 public abstract void send(REPCommand command) ;
450
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
118
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
119 /**
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
120 * write command to the socket channel
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
121 * @param command
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
122 */
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
123 public abstract void write(REPCommand command) ;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
124
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
125 public abstract void sendWithSeq(REPCommand command) ;
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
126
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
127 public abstract void setQuit2(REPCommand receivedCommand) ;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
128
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
129 public abstract int seq() ;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
130
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
131 public abstract boolean manage(REPCommand command) ;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
132
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
133
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
134 public abstract void selectSession(REPCommand sendCommand,Session session) ;
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
135
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
136 public void setMode(REP cmd) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
137 mode = cmd;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
138 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
139
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
140 public boolean isEditor() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
141 return mode==REP.SMCMD_JOIN||mode==REP.SMCMD_PUT;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
142 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
143
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
144 public boolean isForwarder() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
145 return mode==REP.SMCMD_SM_JOIN||mode==REP.SMCMD_SM_JOIN_ACK;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
146 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
147
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
148 public boolean isDirect() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
149 return isEditor();
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
150 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
151
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
152 public REPNode getNextForwarder() {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
153 return next;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
154 }
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
155 public void setNext(REPNode f) {
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
156 next = f;
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
157 }
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
158
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
159
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
160 public void sendSync(REPCommand sync) {
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
161 next.sendWithSeq(sync);
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
162 }
389
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 387
diff changeset
163
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 387
diff changeset
164 public abstract void joinAck(REPCommand sendCommand, int sid) ;
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 387
diff changeset
165
399
19705f4b8015 waitingCommandInMerge
one
parents: 389
diff changeset
166 public abstract void forwardedCommandManage(REPCommand command) ;
19705f4b8015 waitingCommandInMerge
one
parents: 389
diff changeset
167
19705f4b8015 waitingCommandInMerge
one
parents: 389
diff changeset
168 public abstract void checkWaitingCommandInMerge();
431
1bb59652d89c fixing merge...
one
parents: 399
diff changeset
169
1bb59652d89c fixing merge...
one
parents: 399
diff changeset
170 public abstract List<REPCommand> getSentList() ;
1bb59652d89c fixing merge...
one
parents: 399
diff changeset
171
450
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
172 public void sendToEditor(REPCommand m) {
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
173 send(m);
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
174 }
21cb16b7f3df block message in Editor.write()
one
parents: 431
diff changeset
175
399
19705f4b8015 waitingCommandInMerge
one
parents: 389
diff changeset
176
19705f4b8015 waitingCommandInMerge
one
parents: 389
diff changeset
177
386
bba62c4ac323 sync-option
one@firefly.cr.ie.u-ryukyu.ac.jp
parents: 384
diff changeset
178
382
4b87f89b3afd REP Session Manager (Java version)
one@firefly.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
179 }