From 78573fa837863fdb286416b33df165f773402ec8 Mon Sep 17 00:00:00 2001 From: Alistair McIntyre Date: Mon, 22 May 2017 15:10:05 +1200 Subject: [PATCH] Made start/finish lines a different color. #story[923] --- src/main/java/seng302/App.java | 2 +- .../seng302/controllers/CanvasController.java | 5 ++--- .../java/seng302/models/stream/XMLParser.java | 18 ++++++++++-------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/seng302/App.java b/src/main/java/seng302/App.java index c7a764c0..28d7e923 100644 --- a/src/main/java/seng302/App.java +++ b/src/main/java/seng302/App.java @@ -63,7 +63,7 @@ public class App extends Application { //Change the StreamReceiver in this else block to change the default data source. else{ // sr = new StreamReceiver("localhost", 4949, "RaceStream"); - sr = new StreamReceiver("localhost", 4949, "RaceStream"); + sr = new StreamReceiver("csse-s302staff.canterbury.ac.nz", 4941, "RaceStream"); } sr.start(); diff --git a/src/main/java/seng302/controllers/CanvasController.java b/src/main/java/seng302/controllers/CanvasController.java index 43c4b40a..398cc712 100644 --- a/src/main/java/seng302/controllers/CanvasController.java +++ b/src/main/java/seng302/controllers/CanvasController.java @@ -254,9 +254,9 @@ public class CanvasController { } private void initializeMarks() { - Map allMarks = StreamParser.getXmlObject().getRaceXML().getCompoundMarks(); + ArrayList allMarks = StreamParser.getXmlObject().getRaceXML().getCompoundMarks(); System.out.println(allMarks); - for (Mark mark : allMarks.values()) { + for (Mark mark : allMarks) { if (mark.getMarkType() == MarkType.SINGLE_MARK) { SingleMark sMark = (SingleMark) mark; @@ -270,7 +270,6 @@ public class CanvasController { } } group.getChildren().addAll(markGroups); - System.out.println(group.getChildren()); } class ResizableCanvas extends Canvas { diff --git a/src/main/java/seng302/models/stream/XMLParser.java b/src/main/java/seng302/models/stream/XMLParser.java index 19f9b9db..97dfe37a 100644 --- a/src/main/java/seng302/models/stream/XMLParser.java +++ b/src/main/java/seng302/models/stream/XMLParser.java @@ -235,7 +235,7 @@ public class XMLParser { //Non atomic race attributes private ArrayList participants; - private Map course; + private ArrayList course; private ArrayList compoundMarkSequence; private ArrayList courseLimit; @@ -312,22 +312,24 @@ public class XMLParser { } - private Map createCompoundMarks(Element docEle) { - Map cMarks = new HashMap<>(); - + private ArrayList createCompoundMarks(Element docEle) { + ArrayList cMarks = new ArrayList<>(); NodeList cMarkList = docEle.getElementsByTagName("Course").item(0).getChildNodes(); for (int i = 0; i < cMarkList.getLength(); i++) { Node cMarkNode = cMarkList.item(i); - if (cMarkNode.getNodeName().equals("CompoundMark")) { - Integer markID = getNodeAttributeInt(cMarkNode, "CompoundMarkID"); Mark mark = createMark(cMarkNode); if (mark != null) { - cMarks.put(markID, mark); + cMarks.add(mark); } } } + + // This is awful but it works. + cMarks.get(0).setName("Start"); + cMarks.get(cMarks.size()-1).setName("Finish"); + return cMarks; } @@ -397,7 +399,7 @@ public class XMLParser { return participants; } - public Map getCompoundMarks() { + public ArrayList getCompoundMarks() { return course; }