mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-16 09:11:02 +00:00
formatted according to guidelines
Change-Id: Ia51586bbb7056426a9a04a5a04aef4fc057b0aef
This commit is contained in:
1 parent
87de492a1b
commit
02896f1993
1 file changed
+58
-56
+58
-56
@@ -59,94 +59,96 @@ public class SwissTimingAdapterImpl implements SwissTimingAdapter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<com.sap.sailing.domain.swisstimingadapter.RaceRecord> getSwissTimingRaceRecords(String hostname,
|
public List<com.sap.sailing.domain.swisstimingadapter.RaceRecord> getSwissTimingRaceRecords(String hostname,
|
||||||
int port) throws InterruptedException, UnknownHostException, IOException,
|
int port) throws InterruptedException, UnknownHostException, IOException, ParseException {
|
||||||
ParseException {
|
|
||||||
List<com.sap.sailing.domain.swisstimingadapter.RaceRecord> result = new ArrayList<com.sap.sailing.domain.swisstimingadapter.RaceRecord>();
|
List<com.sap.sailing.domain.swisstimingadapter.RaceRecord> result = new ArrayList<com.sap.sailing.domain.swisstimingadapter.RaceRecord>();
|
||||||
// TODO --> Frank: this needs to come from Manage2Sail and its JSON document somehow...
|
// TODO --> Frank: this needs to come from Manage2Sail and its JSON document somehow...
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RaceHandle addSwissTimingRace(TrackerManager trackerManager, RegattaIdentifier regattaToAddTo,
|
public RaceHandle addSwissTimingRace(TrackerManager trackerManager, RegattaIdentifier regattaToAddTo, String raceID,
|
||||||
String raceID, String raceName, String raceDescription, BoatClass boatClass, String hostname, int port,
|
String raceName, String raceDescription, BoatClass boatClass, String hostname, int port,
|
||||||
StartList startList, RaceLogStore raceLogStore, RegattaLogStore regattaLogStore, long timeoutInMilliseconds,
|
StartList startList, RaceLogStore raceLogStore, RegattaLogStore regattaLogStore, long timeoutInMilliseconds,
|
||||||
boolean useInternalMarkPassingAlgorithm)
|
boolean useInternalMarkPassingAlgorithm) throws Exception {
|
||||||
throws Exception {
|
return trackerManager.addRace(regattaToAddTo,
|
||||||
return trackerManager.addRace(regattaToAddTo, swissTimingDomainFactory.createTrackingConnectivityParameters(
|
swissTimingDomainFactory.createTrackingConnectivityParameters(hostname, port, raceID, raceName,
|
||||||
hostname, port, raceID, raceName, raceDescription, boatClass, startList,
|
raceDescription, boatClass, startList, DEFAULT_SWISSTIMING_LIVE_DELAY_IN_MILLISECONDS,
|
||||||
DEFAULT_SWISSTIMING_LIVE_DELAY_IN_MILLISECONDS, swissTimingFactory, swissTimingDomainFactory,
|
swissTimingFactory, swissTimingDomainFactory, raceLogStore, regattaLogStore,
|
||||||
raceLogStore, regattaLogStore, useInternalMarkPassingAlgorithm), timeoutInMilliseconds);
|
useInternalMarkPassingAlgorithm),
|
||||||
|
timeoutInMilliseconds);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public StartList readStartListForRace(String raceId, RegattaResults regattaResults) {
|
public StartList readStartListForRace(String raceId, RegattaResults regattaResults) {
|
||||||
StartList result = null;
|
StartList result = null;
|
||||||
List<Competitor> competitors = new ArrayList<Competitor>();
|
List<Competitor> competitors = new ArrayList<Competitor>();
|
||||||
|
|
||||||
Map<String, Person> persons = new HashMap<String, Person>();
|
Map<String, Person> persons = new HashMap<String, Person>();
|
||||||
Map<String, Boat> boats = new HashMap<String, Boat>();
|
Map<String, Boat> boats = new HashMap<String, Boat>();
|
||||||
Map<String, Team> teams = new HashMap<String, Team>();
|
Map<String, Team> teams = new HashMap<String, Team>();
|
||||||
// collect boats, persons and teams
|
// collect boats, persons and teams
|
||||||
for (Object o : regattaResults.getPersonOrBoatOrTeam()) {
|
for (Object o : regattaResults.getPersonOrBoatOrTeam()) {
|
||||||
if(o instanceof Person) {
|
if (o instanceof Person) {
|
||||||
Person p = (Person) o;
|
Person p = (Person) o;
|
||||||
persons.put(p.getPersonID(), p);
|
persons.put(p.getPersonID(), p);
|
||||||
} else if (o instanceof Boat) {
|
} else if (o instanceof Boat) {
|
||||||
Boat b = (Boat) o;
|
Boat b = (Boat) o;
|
||||||
boats.put(b.getBoatID(), b);
|
boats.put(b.getBoatID(), b);
|
||||||
} else if (o instanceof Team) {
|
} else if (o instanceof Team) {
|
||||||
Team t = (Team) o;
|
Team t = (Team) o;
|
||||||
teams.put(t.getTeamID(), t);
|
teams.put(t.getTeamID(), t);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (Object o : regattaResults.getPersonOrBoatOrTeam()) {
|
for (Object o : regattaResults.getPersonOrBoatOrTeam()) {
|
||||||
if (o instanceof Event) {
|
if (o instanceof Event) {
|
||||||
Event event = (Event) o;
|
Event event = (Event) o;
|
||||||
for (Object eventO : event.getRaceOrDivisionOrRegattaSeriesResult()) {
|
for (Object eventO : event.getRaceOrDivisionOrRegattaSeriesResult()) {
|
||||||
if (eventO instanceof Division) {
|
if (eventO instanceof Division) {
|
||||||
Division division = (Division) eventO;
|
Division division = (Division) eventO;
|
||||||
for(Object seriesResultOrRaceResultOrTRResult: division.getSeriesResultOrRaceResultOrTRResult()) {
|
for (Object seriesResultOrRaceResultOrTRResult : division.getSeriesResultOrRaceResultOrTRResult()) {
|
||||||
if(seriesResultOrRaceResultOrTRResult instanceof RaceResult) {
|
if (seriesResultOrRaceResultOrTRResult instanceof RaceResult) {
|
||||||
RaceResult raceResult = (RaceResult) seriesResultOrRaceResultOrTRResult;
|
RaceResult raceResult = (RaceResult) seriesResultOrRaceResultOrTRResult;
|
||||||
if(raceResult.getRaceID().equals(raceId)) {
|
if (raceResult.getRaceID().equals(raceId)) {
|
||||||
Team team = teams.get(raceResult.getTeamID());
|
Team team = teams.get(raceResult.getTeamID());
|
||||||
if(team != null) {
|
if (team != null) {
|
||||||
Boat boat = boats.get(team.getBoatID());
|
Boat boat = boats.get(team.getBoatID());
|
||||||
if(boat != null) {
|
if (boat != null) {
|
||||||
List<CrewMember> crew = new ArrayList<CrewMember>();
|
List<CrewMember> crew = new ArrayList<CrewMember>();
|
||||||
for(Crew crewMember: team.getCrew()) {
|
for (Crew crewMember : team.getCrew()) {
|
||||||
Person person = persons.get(crewMember.getPersonID());
|
Person person = persons.get(crewMember.getPersonID());
|
||||||
crew.add(new CrewMemberImpl(person.getGivenName() + " " + person.getFamilyName(),
|
crew.add(new CrewMemberImpl(
|
||||||
person.getNOC().name(), crewMember.getPosition().name()));
|
person.getGivenName() + " " + person.getFamilyName(),
|
||||||
}
|
person.getNOC().name(), crewMember.getPosition().name()));
|
||||||
Crew firstCrewMember = team.getCrew().get(0);
|
}
|
||||||
Person person = persons.get(firstCrewMember.getPersonID());
|
Crew firstCrewMember = team.getCrew().get(0);
|
||||||
String nationality = person.getNOC().name();
|
Person person = persons.get(firstCrewMember.getPersonID());
|
||||||
CompetitorWithID competitor = new CompetitorWithID(team.getTeamID(), boat.getSailNumber(), nationality, team.getTeamName(), crew);
|
String nationality = person.getNOC().name();
|
||||||
competitors.add(competitor);
|
CompetitorWithID competitor = new CompetitorWithID(team.getTeamID(),
|
||||||
}
|
boat.getSailNumber(), nationality, team.getTeamName(), crew);
|
||||||
}
|
competitors.add(competitor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!competitors.isEmpty()) {
|
if (!competitors.isEmpty()) {
|
||||||
result = new StartListImpl(raceId, competitors);
|
result = new StartListImpl(raceId, competitors);
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RegattaResults readRegattaEntryListFromXrrUrl(String xrrEntryListUrl) throws IOException, JAXBException {
|
public RegattaResults readRegattaEntryListFromXrrUrl(String xrrEntryListUrl) throws IOException, JAXBException {
|
||||||
// try to read the entry list from manage2sail
|
// try to read the entry list from manage2sail
|
||||||
URL regattaEntryListUrl = new URL(xrrEntryListUrl);
|
URL regattaEntryListUrl = new URL(xrrEntryListUrl);
|
||||||
URLConnection regattaEntryListConn = regattaEntryListUrl.openConnection();
|
URLConnection regattaEntryListConn = regattaEntryListUrl.openConnection();
|
||||||
RegattaResults regattaResults = ParserFactory.INSTANCE.createParser((InputStream) regattaEntryListConn.getContent(), xrrEntryListUrl).parse();
|
RegattaResults regattaResults = ParserFactory.INSTANCE
|
||||||
|
.createParser((InputStream) regattaEntryListConn.getContent(), xrrEntryListUrl).parse();
|
||||||
return regattaResults;
|
return regattaResults;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user