muehle.player
Class NetServerPlayer

java.lang.Object
  extended by muehle.player.Player
      extended by muehle.player.NetPlayer
          extended by muehle.player.NetServerPlayer
All Implemented Interfaces:
java.lang.Runnable

public class NetServerPlayer
extends NetPlayer
implements java.lang.Runnable

Diese Klasse implementiert den Netzwerk-Serverspieler, der, wenn er zum Zug aufgefordert wird, auf eine TCP-Antowrt wartet, und den entsprechenden Zug ausführt.

Since:
28.04.2004
Version:
2.03
Author:
Bastian Späth, Florian Lemmerich

Field Summary
 
Fields inherited from class muehle.player.NetPlayer
destination, drop, input, output, port, rcvThread, source, statusPanel
 
Fields inherited from class muehle.player.Player
actions, clip, gestoppt, initStones, name, numberOfStones, opponent, play, s, stopSleeping, time
 
Constructor Summary
NetServerPlayer(java.lang.String name, Stone s, int port, muehle.thinking.Heuristic evalHeuristic)
           
NetServerPlayer(java.lang.String name, Stone s, int port, java.lang.String filenameOfEvalHeuristik)
          Der Konstruktor erstellt den NetServerPlayer mit angegebenem Namen und Stein und setzt den Port, an dem der Server auf einen anderen Computer warten soll
 
Method Summary
 int connect()
          erzeugt einen Server-Socket auf dem gespeichertet Port, horcht an diesem, wartet bis ein Client sich verbindet und tauscht Namen der Spieler aus
 void disconnect()
          beendet die Verbindung.
 Player getClone()
          Diese Methode clont den NetServer-Spieler, indem ein neuer Spieler gleichen Namens und gleichen Steines mit gleichem Port erstellt wird und die Steinanzahl entsprechend gesetzt wird.
 
Methods inherited from class muehle.player.NetPlayer
acceptDraw, deleteStone, getStatusPanel, getThread, makeMove, notice, run, setPort
 
Methods inherited from class muehle.player.Player
appendLastAction, calcSituationValue, canJump, canSet, clearFeatures, decrementInitStones, decrementStones, flipSound, getAllLastActions, getDeleteAction, getDepthToThink, getEvalHeuristic, getLastAction, getMoveAction, getName, getNumberOfInitStones, getNumberOfStones, getOpponent, getProposalAction, getProposalDrop, getSetAction, getSituationValue, getStone, getTimeToThink, getTimeUsedByPlayer, getType, hasLostByStones, incrementInitStones, incrementStones, informOpponent, isUseTimeToBreak, learningPhase, pressedAt, receiveMsg, releasedAt, reset, saveFeatures, setAudio, setDepthToThink, setHost, setName, setNumberOfInitStones, setNumberOfStones, setOpponent, setStone, setTimeToThink, setUseTimeToBreak, setVerbose, softSleeping, soundPlayback, stopGameThread, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.lang.Runnable
run
 

Constructor Detail

NetServerPlayer

public NetServerPlayer(java.lang.String name,
                       Stone s,
                       int port,
                       java.lang.String filenameOfEvalHeuristik)
Der Konstruktor erstellt den NetServerPlayer mit angegebenem Namen und Stein und setzt den Port, an dem der Server auf einen anderen Computer warten soll

Parameters:
name - Spielername
s - Stein
port - Port
Since:
20.04.2004

NetServerPlayer

public NetServerPlayer(java.lang.String name,
                       Stone s,
                       int port,
                       muehle.thinking.Heuristic evalHeuristic)
Method Detail

connect

public int connect()
erzeugt einen Server-Socket auf dem gespeichertet Port, horcht an diesem, wartet bis ein Client sich verbindet und tauscht Namen der Spieler aus

Overrides:
connect in class NetPlayer
Returns:
1 für verbunden, 0 für nicht verbunden
Since:
20.04.2004

disconnect

public void disconnect()
beendet die Verbindung. Wenn Verbindung noch besteht, wird an den Client ein Quit geschickt und der Server geschlossen. Wenn der Client bereits die Verbindung beendet hat wird sofort der Server geschlossen.

Overrides:
disconnect in class NetPlayer
Since:
20.04.2004

getClone

public Player getClone()
Diese Methode clont den NetServer-Spieler, indem ein neuer Spieler gleichen Namens und gleichen Steines mit gleichem Port erstellt wird und die Steinanzahl entsprechend gesetzt wird.

Overrides:
getClone in class NetPlayer
Returns:
geclonter NetServer-Spieler
Since:
20.04.2004