Created RegattaDataSource and regattaTest.xml.

-Event regattaData will now get data from the XML instead of having static data.

#story[778]
main
zwu18 9 years ago
parent 5304f7df7d
commit c5df90d276

@ -4,6 +4,8 @@ package seng302;
import javafx.application.Application;
import javafx.stage.Stage;
import org.xml.sax.SAXException;
import seng302.Mock.RegattaDataSource;
import seng302.Mock.RegattaXMLReader;
import seng302.Model.Event;
import javax.xml.parsers.ParserConfigurationException;
@ -24,7 +26,8 @@ public class App extends Application {
public void start(Stage primaryStage) {
try {
RaceDataSource raceData = new RaceXMLReader("raceXML/bermuda_AC35.xml");
Event raceEvent = new Event(raceData);
RegattaDataSource regattaData = new RegattaXMLReader("mockXML/regattaTest.xml");
Event raceEvent = new Event(raceData, regattaData);
raceEvent.start();
} catch (IOException e) {
e.printStackTrace();

@ -11,7 +11,7 @@ import java.io.IOException;
/**
* Created by jjg64 on 19/04/17.
*/
public class RegattaXMLReader extends XMLReader {
public class RegattaXMLReader extends XMLReader implements RegattaDataSource {
private Regatta regatta;
/**

@ -4,6 +4,8 @@ import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import seng302.Data.RaceData;
import seng302.Mock.Regatta;
import seng302.Mock.RegattaDataSource;
import seng302.Model.Race;
import seng302.RaceDataSource;
@ -21,9 +23,11 @@ import java.util.List;
public class Event {
RaceDataSource raceDataSource;
RegattaDataSource regattaDataSource;
public Event(RaceDataSource raceData) {
public Event(RaceDataSource raceData, RegattaDataSource regattaData) {
this.raceDataSource = raceData;
this.regattaDataSource = regattaData;
}
public void start() {
@ -39,6 +43,8 @@ public class Event {
public void sendRegattaData() {
try {
Regatta regatta = regattaDataSource.getRegatta();
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
@ -49,42 +55,42 @@ public class Event {
//regattaID element
Element regattaID = doc.createElement("RegattaID");
regattaID.appendChild(doc.createTextNode("3"));
regattaID.appendChild(doc.createTextNode(Integer.toString(regatta.getRegattaID())));
rootElement.appendChild(regattaID);
//regattaName element
Element regattaName = doc.createElement("RegattaName");
regattaName.appendChild(doc.createTextNode("New Zealand Test"));
regattaName.appendChild(doc.createTextNode(regatta.getRegattaName()));
rootElement.appendChild(regattaName);
//courseName element
Element courseName = doc.createElement("CourseName");
courseName.appendChild(doc.createTextNode("North Head"));
courseName.appendChild(doc.createTextNode(regatta.getCourseName()));
rootElement.appendChild(courseName);
//centralLatitude element
Element centralLat = doc.createElement("CentralLatitude");
centralLat.appendChild(doc.createTextNode(Double.toString(32.293039)));
centralLat.appendChild(doc.createTextNode(Double.toString(regatta.getCentralLatitude())));
rootElement.appendChild(centralLat);
//centralLongitude element
Element centralLong = doc.createElement("CentralLongitude");
centralLong.appendChild(doc.createTextNode(Double.toString(-64.843983)));
centralLong.appendChild(doc.createTextNode(Double.toString(regatta.getCentralLongitude())));
rootElement.appendChild(centralLong);
//centralAltitude element
Element centralAlt = doc.createElement("CentralAltitude");
centralAlt.appendChild(doc.createTextNode(Double.toString(0)));
centralAlt.appendChild(doc.createTextNode(Double.toString(regatta.getCentralAltitude())));
rootElement.appendChild(centralAlt);
//utcOffset element
Element utcOffset = doc.createElement("UtcOffset");
utcOffset.appendChild(doc.createTextNode(Double.toString(-3)));
utcOffset.appendChild(doc.createTextNode(Double.toString(regatta.getUtcOffset())));
rootElement.appendChild(utcOffset);
//magneticVariation element
Element magneticVariation = doc.createElement("MagneticVariation");
magneticVariation.appendChild(doc.createTextNode(Double.toString(14.76)));
magneticVariation.appendChild(doc.createTextNode(Double.toString(regatta.getMagneticVariation())));
rootElement.appendChild(magneticVariation);
TransformerFactory trasformerFactory = TransformerFactory.newInstance();

@ -0,0 +1,10 @@
<RegattaConfig>
<RegattaID>3</RegattaID>
<RegattaName>New Zealand Test</RegattaName>
<CourseName>North Head</CourseName>
<CentralLatitude>-36.82791529</CentralLatitude>
<CentralLongitude>174.81218919</CentralLongitude>
<CentralAltitude>0.00</CentralAltitude>
<UtcOffset>12</UtcOffset>
<MagneticVariation>14.1</MagneticVariation>
</RegattaConfig>

@ -16,7 +16,7 @@ public class RegattaXMLTest {
@Before
public void findFile(){
try {
regattaXMLReader = new RegattaXMLReader("mockXML/regattaXML/regattaTest.xml", false);
regattaXMLReader = new RegattaXMLReader("mockXML/regattaTest.xml", false);
} catch (Exception e) {
fail("Cannot find mockXML/regattaXML/regattaTest.xml in the resources folder");
}
@ -25,7 +25,7 @@ public class RegattaXMLTest {
@Test
public void makeRegattaTest() {
try {
regattaXMLReader = new RegattaXMLReader("mockXML/regattaXML/regattaTest.xml");
regattaXMLReader = new RegattaXMLReader("mockXML/regattaTest.xml");
assertNotEquals(regattaXMLReader.getRegatta(), null);
} catch (Exception e) {
fail("Did not make a Regatta object");
@ -35,7 +35,7 @@ public class RegattaXMLTest {
@Test
public void correctValuesTest() {
try {
regattaXMLReader = new RegattaXMLReader("mockXML/regattaXML/regattaTest.xml");
regattaXMLReader = new RegattaXMLReader("mockXML/regattaTest.xml");
Regatta regatta = regattaXMLReader.getRegatta();
assertEquals(regatta.getRegattaID(), 3);
assertEquals(regatta.getRegattaName(), "New Zealand Test");

Loading…
Cancel
Save