Refactored MainServer Class in prep for better sending out of XML messages

All messages are now created through MessageFactory class
Minor tweaks to improve code base server side
Removed observer from Server to Client threads

#story[1250]
This commit is contained in:
William Muir
2017-08-29 21:23:46 +12:00
parent 201405d070
commit ace48a8404
7 changed files with 211 additions and 188 deletions
+12 -10
View File
@@ -9,6 +9,7 @@ import org.slf4j.LoggerFactory;
import seng302.gameServer.GameState;
import seng302.gameServer.messages.BoatStatus;
import seng302.model.mark.Mark;
import seng302.model.token.TokenType;
import seng302.utilities.GeoUtility;
/**
@@ -16,7 +17,7 @@ import seng302.utilities.GeoUtility;
* compared to the XMLParser boat class, also done outside Boat class because some old variables are
* not used anymore.
*/
public class ServerYacht extends Observable {
public class ServerYacht {
private Logger logger = LoggerFactory.getLogger(ClientYacht.class);
@@ -30,10 +31,8 @@ public class ServerYacht extends Observable {
private String boatName;
private String country;
private BoatStatus boatStatus;
private Color boatColor;
//Location
private Double lastHeading;
private Boolean sailIn;
@@ -52,6 +51,9 @@ public class ServerYacht extends Observable {
private Boolean hasPassedLine;
private Boolean hasPassedThroughGate;
//PowerUp
private TokenType powerUp;
public ServerYacht(String boatType, Integer sourceId, String hullID, String shortName,
String boatName, String country) {
@@ -71,6 +73,7 @@ public class ServerYacht extends Observable {
this.currentMarkSeqID = 0;
this.legNumber = 0;
this.boatColor = Colors.getColor(sourceId - 1);
this.powerUp = null;
this.hasEnteredRoundingZone = false;
this.hasPassedLine = false;
@@ -101,13 +104,12 @@ public class ServerYacht extends Observable {
location = geoPoint;
}
/**
* Add ServerToClientThread as the observer, this observer pattern mainly server for the boat
* rounding package.
*/
@Override
public void addObserver(Observer o) {
super.addObserver(o);
public void setPowerUp(TokenType powerUp) {
this.powerUp = powerUp;
}
public TokenType getPowerUp() {
return powerUp;
}
/**