def end_game(self, context):
        white_count, black_count = context.boardmodel.count_disks()

        winner_pdu = GameClientPDUCodec.winner_pdu(Player.EMPTY)

        if white_count > black_count:
            winner_pdu = GameClientPDUCodec.winner_pdu(Player.WHITE)
        elif black_count > white_count:
            winner_pdu = GameClientPDUCodec.winner_pdu(Player.BLACK)

        context.request.send_req(context.socket_player_white, winner_pdu)
        context.request.send_req(context.socket_player_black, winner_pdu)
        context.request.shutdown_req()
 def disconnection_ind(self, context, client):
     print "[Game Instance] Got a disconnection"
     winner = None
     if client == context.socket_player_white:
         other_player = context.socket_player_black
         winner = Player.BLACK
     else:
         other_player = context.socket_player_white
         winner = Player.WHITE
     context.request.send_req(other_player, GameClientPDUCodec.winner_pdu(winner))
     context.request.shutdown_req()