Set race to send out status messages (including boat location details)
- Untested, so not sure of accuracy yet #story[778]
This commit is contained in:
@@ -26,11 +26,6 @@ public class Event {
|
|||||||
RaceDataSource raceDataSource;
|
RaceDataSource raceDataSource;
|
||||||
RegattaDataSource regattaDataSource;
|
RegattaDataSource regattaDataSource;
|
||||||
|
|
||||||
|
|
||||||
//Sequence numbers for XML messages.
|
|
||||||
private short regattaXMLSequenceNumber = 0;
|
|
||||||
private short raceXMLSequenceNumber = 0;
|
|
||||||
private short boatXMLSequenceNumber = 0;
|
|
||||||
MockOutput mockOutput;
|
MockOutput mockOutput;
|
||||||
|
|
||||||
public Event(RaceDataSource raceData, RegattaDataSource regattaData) {
|
public Event(RaceDataSource raceData, RegattaDataSource regattaData) {
|
||||||
@@ -45,14 +40,10 @@ public class Event {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void start() {
|
public void start() {
|
||||||
System.out.println("\nREGATTA DATA\n");//TEMP REMOVE debug
|
|
||||||
sendRegattaData();
|
|
||||||
System.out.println("\nRACE DATA\n");//TEMP REMOVE debug
|
|
||||||
sendRaceData();
|
|
||||||
//System.out.println("\nBOAT DATA\n");//TEMP REMOVE debug
|
|
||||||
sendBoatData();
|
|
||||||
|
|
||||||
//System.out.println("RACE STARTING!!\n\n");//TEMP REMOVE debug
|
sendRegattaData();
|
||||||
|
sendRaceData();
|
||||||
|
sendBoatData();
|
||||||
|
|
||||||
Race newRace = new Race(raceDataSource, 15, mockOutput);
|
Race newRace = new Race(raceDataSource, 15, mockOutput);
|
||||||
new Thread((newRace)).start();
|
new Thread((newRace)).start();
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ public class Race implements Runnable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
RaceStatus raceStatus = new RaceStatus(totalTimeElapsed, raceId, 3, 2, boatStatusMessages);
|
RaceStatus raceStatus = new RaceStatus(totalTimeElapsed, raceId, 3, 2, boatStatusMessages);
|
||||||
mockOutput.parseRaceStatus();
|
mockOutput.parseRaceStatus(raceStatus);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}.start();
|
}.start();
|
||||||
|
|||||||
@@ -101,11 +101,23 @@ public class MockOutput implements Runnable
|
|||||||
addMessageToBufferToSend(binaryMessageEncoder.getFullMessage());
|
addMessageToBufferToSend(binaryMessageEncoder.getFullMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public synchronized void parseRaceStatus(RaceStatus raceStatus){
|
public synchronized void parseRaceStatus(RaceStatus raceStatus){
|
||||||
|
|
||||||
|
//iterates the sequence number
|
||||||
|
raceStatusSequenceNumber++;
|
||||||
|
|
||||||
|
//encodeds the messages
|
||||||
|
byte[] encodedRaceStatus = messageEncoder.raceStatus(raceStatus);
|
||||||
|
|
||||||
|
//encodeds the full message with header
|
||||||
|
BinaryMessageEncoder binaryMessageEncoder = new BinaryMessageEncoder(MessageType.RACESTATUS, System.currentTimeMillis(), messageNumber, (short)encodedRaceStatus.length,
|
||||||
|
encodedRaceStatus);
|
||||||
|
|
||||||
|
//iterates the message number
|
||||||
|
messageNumber++;
|
||||||
|
|
||||||
|
addMessageToBufferToSend(binaryMessageEncoder.getFullMessage());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user