gameServer2/src/server/client.rs
changeset 12853 a9d105dc5c95
parent 12852 bd35cb2302b3
child 13119 1e39b8749072
equal deleted inserted replaced
12852:bd35cb2302b3 12853:a9d105dc5c95
    40             is_joined_mid_game: false,
    40             is_joined_mid_game: false,
    41         }
    41         }
    42     }
    42     }
    43 
    43 
    44     pub fn register(&mut self, poll: &Poll, token: Token) {
    44     pub fn register(&mut self, poll: &Poll, token: Token) {
    45         poll.register(&self.sock, token, Ready::all(),
    45         poll.register(&self.sock, token, Ready::readable() | Ready::writable(),
    46                       PollOpt::edge())
    46                       PollOpt::edge())
    47             .ok().expect("could not register socket with event loop");
    47             .ok().expect("could not register socket with event loop");
    48 
    48 
    49         self.send_msg(HWServerMessage::Connected(utils::PROTOCOL_VERSION));
    49         self.send_msg(HWServerMessage::Connected(utils::PROTOCOL_VERSION));
    50     }
    50     }
    70     fn flush(&mut self) {
    70     fn flush(&mut self) {
    71         self.buf_out.write_to(&mut self.sock).unwrap();
    71         self.buf_out.write_to(&mut self.sock).unwrap();
    72         self.sock.flush();
    72         self.sock.flush();
    73     }
    73     }
    74 
    74 
    75     pub fn readable(&mut self, poll: &Poll) -> Vec<Action> {
    75     pub fn readable(&mut self, _poll: &Poll) -> Vec<Action> {
    76         let v = self.decoder.read_from(&mut self.sock).unwrap();
    76         let v = self.decoder.read_from(&mut self.sock).unwrap();
    77         debug!("Read {} bytes", v);
    77         debug!("Read {} bytes", v);
    78         let mut response = Vec::new();
    78         let mut response = Vec::new();
    79         {
    79         {
    80             for msg in self.decoder.extract_messages() {
    80             for msg in self.decoder.extract_messages() {
    83         }
    83         }
    84         self.decoder.sweep();
    84         self.decoder.sweep();
    85         response
    85         response
    86     }
    86     }
    87 
    87 
    88     pub fn writable(&mut self, poll: &Poll) -> io::Result<()> {
    88     pub fn writable(&mut self, _poll: &Poll) -> io::Result<()> {
    89         self.buf_out.write_to(&mut self.sock)?;
    89         self.buf_out.write_to(&mut self.sock)?;
    90 
    90 
    91         Ok(())
    91         Ok(())
    92     }
    92     }
    93 
    93 
    94     pub fn error(&mut self, poll: &Poll) -> Vec<Action> {
    94     pub fn error(&mut self, _poll: &Poll) -> Vec<Action> {
    95         return vec![ByeClient("Connection reset".to_string())]
    95         return vec![ByeClient("Connection reset".to_string())]
    96     }
    96     }
    97 }
    97 }