mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-20 04:35:32 +00:00
Cleaned the sailing data mining domain
This commit is contained in:
+1
-1
@@ -16,7 +16,7 @@ Race=Race
|
||||
Competitor=Competitor
|
||||
Boat=Boat
|
||||
Team=Team
|
||||
CompetitorSearchTag=Competitor Search Tag
|
||||
SearchTag=Search Tag
|
||||
LeaderboardSailingDomainRetrieverChain=Leaderboards
|
||||
RaceSailingDomainRetrieverChain=Races
|
||||
LegSailingDomainRetrieverChain=Legs
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ DistanceTraveled=zur
|
||||
Boat=Boot
|
||||
Team=Team
|
||||
Name=Name
|
||||
CompetitorSearchTag=Teilnehmer Such-Tag
|
||||
CompetitorSearchTag=Such-Tag
|
||||
Nationality=Nationalitäts
|
||||
Acronym=Abkürzung
|
||||
SailID=Segelnummer
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ Race=レース
|
||||
Competitor=競技者
|
||||
Boat=艇
|
||||
Team=チーム
|
||||
CompetitorSearchTag=競技者検索タグ
|
||||
SearchTag=競技者検索タグ
|
||||
LeaderboardSailingDomainRetrieverChain=リーダーボード
|
||||
RaceSailingDomainRetrieverChain=レース
|
||||
LegSailingDomainRetrieverChain=レグ
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ Race=Гонка
|
||||
Competitor=Участник
|
||||
Boat=Лодка
|
||||
Team=Команда
|
||||
CompetitorSearchTag=Тег поиска участника
|
||||
SearchTag=Тег поиска участника
|
||||
LeaderboardSailingDomainRetrieverChain=Таблицы лидеров
|
||||
RaceSailingDomainRetrieverChain=Гонки
|
||||
LegSailingDomainRetrieverChain=Отрезки
|
||||
|
||||
+2
-2
@@ -65,8 +65,8 @@
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
|
||||
<source>Team</source>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
|
||||
<source>Competitor Search Tag</source>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
|
||||
<source>Search Tag</source>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
|
||||
<source>Leaderboards</source>
|
||||
|
||||
+2
-2
@@ -83,8 +83,8 @@
|
||||
<source>Team</source>
|
||||
<target state="signed-off">チーム</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
|
||||
<source>Competitor Search Tag</source>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
|
||||
<source>Search Tag</source>
|
||||
<target>競技者検索タグ</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
|
||||
|
||||
+2
-2
@@ -83,8 +83,8 @@
|
||||
<source>Team</source>
|
||||
<target state="signed-off">Команда</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
|
||||
<source>Competitor Search Tag</source>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
|
||||
<source>Search Tag</source>
|
||||
<target state="signed-off">Тег поиска участника</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
|
||||
|
||||
+2
-2
@@ -83,8 +83,8 @@
|
||||
<source>Team</source>
|
||||
<target state="signed-off">团队</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
|
||||
<source>Competitor Search Tag</source>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
|
||||
<source>Search Tag</source>
|
||||
<target>参赛队搜索标记</target>
|
||||
</trans-unit>
|
||||
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
|
||||
|
||||
@@ -5,8 +5,11 @@ import com.sap.sailing.domain.common.Positioned;
|
||||
import com.sap.sailing.domain.tracking.Maneuver;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
import com.sap.sse.common.Timed;
|
||||
import com.sap.sse.datamining.annotations.Connector;
|
||||
|
||||
public interface HasManeuver extends Positioned, Timed {
|
||||
|
||||
@Connector
|
||||
Maneuver getManeuver();
|
||||
|
||||
@Override
|
||||
|
||||
+2
-16
@@ -3,8 +3,6 @@ package com.sap.sailing.datamining.data;
|
||||
import com.sap.sailing.domain.common.Distance;
|
||||
import com.sap.sailing.domain.common.ManeuverType;
|
||||
import com.sap.sailing.domain.common.NauticalSide;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sse.datamining.annotations.Connector;
|
||||
import com.sap.sse.datamining.annotations.Dimension;
|
||||
import com.sap.sse.datamining.annotations.Statistic;
|
||||
@@ -13,27 +11,15 @@ public interface HasManeuverContext extends HasWindOnTrackedLeg, HasManeuver, Ha
|
||||
@Connector(scanForStatistics=false)
|
||||
HasTrackedLegOfCompetitorContext getTrackedLegOfCompetitorContext();
|
||||
|
||||
//TODO Clean-Up:
|
||||
// Move Dimensions and Statistics to Maneuver and connect to it
|
||||
@Dimension(messageKey="ManeuverType", ordinal=12)
|
||||
ManeuverType getManeuverType();
|
||||
|
||||
@Dimension(messageKey="Tack", ordinal=13)
|
||||
Tack getTack();
|
||||
|
||||
@Dimension(messageKey="ToSide")
|
||||
@Dimension(messageKey="ToSide", ordinal=16)
|
||||
NauticalSide getToSide();
|
||||
|
||||
@Connector(messageKey="SpeedBefore", ordinal=0)
|
||||
SpeedWithBearing getSpeedBefore();
|
||||
@Connector(messageKey="SpeedAfter", ordinal=1)
|
||||
SpeedWithBearing getSpeedAfter();
|
||||
|
||||
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
|
||||
Double getDirectionChangeInDegrees();
|
||||
@Statistic(messageKey="AbsoluteDirectionChange", resultDecimals=2, ordinal=3)
|
||||
Double getAbsoluteDirectionChangeInDegrees();
|
||||
|
||||
|
||||
@Statistic(messageKey="ManeuverLoss", resultDecimals=0, ordinal=4)
|
||||
Distance getManeuverLoss();
|
||||
|
||||
|
||||
+3
-19
@@ -2,8 +2,6 @@ package com.sap.sailing.datamining.data;
|
||||
|
||||
import com.sap.sailing.domain.base.Waypoint;
|
||||
import com.sap.sailing.domain.common.NauticalSide;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sse.datamining.annotations.Connector;
|
||||
import com.sap.sse.datamining.annotations.Dimension;
|
||||
import com.sap.sse.datamining.annotations.Statistic;
|
||||
@@ -11,27 +9,13 @@ import com.sap.sse.datamining.annotations.Statistic;
|
||||
public interface HasMarkPassingContext extends HasWindOnTrackedLeg, HasManeuver, HasTrackedLegOfCompetitor {
|
||||
@Connector(scanForStatistics=false)
|
||||
HasTrackedLegOfCompetitorContext getTrackedLegOfCompetitorContext();
|
||||
|
||||
//TODO Clean-Up:
|
||||
// Move Dimensions and Statistics to Maneuver/MarkPassingManeuver and connect to it
|
||||
// Find a way to implement HasManeuverContext and HasMarkPassingManeuver with a base class
|
||||
@Dimension(messageKey="Tack", ordinal=12)
|
||||
Tack getTack();
|
||||
|
||||
@Connector(messageKey="Waypoint", ordinal=13)
|
||||
@Connector(messageKey="Waypoint", ordinal=14)
|
||||
Waypoint getWaypoint();
|
||||
|
||||
@Dimension(messageKey="PassingSide", ordinal=13)
|
||||
|
||||
@Dimension(messageKey="PassingSide", ordinal=15)
|
||||
NauticalSide getPassingSide();
|
||||
|
||||
@Connector(messageKey="SpeedBefore", ordinal=0)
|
||||
SpeedWithBearing getSpeedBefore();
|
||||
@Connector(messageKey="SpeedAfter", ordinal=1)
|
||||
SpeedWithBearing getSpeedAfter();
|
||||
|
||||
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
|
||||
Double getDirectionChangeInDegrees();
|
||||
|
||||
@Statistic(messageKey="RelativeScore", ordinal=3, resultDecimals=2)
|
||||
Double getRelativeRank();
|
||||
|
||||
|
||||
-3
@@ -19,9 +19,6 @@ public interface HasRaceOfCompetitorContext {
|
||||
@Statistic(messageKey="")
|
||||
public Competitor getCompetitor();
|
||||
|
||||
@Dimension(messageKey="CompetitorSearchTag", ordinal=11) // TODO Clean me: Move Dimension to Competitor when possible
|
||||
public String getCompetitorSearchTag();
|
||||
|
||||
@Dimension(messageKey="TackAtStart", ordinal=12)
|
||||
public Tack getTackAtStart() throws NoWindException;
|
||||
|
||||
|
||||
-3
@@ -21,9 +21,6 @@ public interface HasRaceResultOfCompetitorContext {
|
||||
@Dimension(messageKey="Regatta", ordinal=4)
|
||||
String getRegattaName();
|
||||
|
||||
@Dimension(messageKey="CompetitorSearchTag", ordinal=5) // TODO Clean me: Move Dimension to Competitor when possible
|
||||
public String getCompetitorSearchTag();
|
||||
|
||||
@Dimension(messageKey="RelativeScoreInPercent", ordinal=6)
|
||||
public ClusterDTO getPercentageClusterForRelativeScore();
|
||||
|
||||
|
||||
-3
@@ -14,9 +14,6 @@ public interface HasTrackedLegOfCompetitorContext extends HasWindOnTrackedLeg {
|
||||
|
||||
public TrackedLegOfCompetitor getTrackedLegOfCompetitor();
|
||||
|
||||
@Dimension(messageKey="CompetitorSearchTag", ordinal=11) // TODO Clean me: Move Dimension to Competitor when possible
|
||||
public String getCompetitorSearchTag();
|
||||
|
||||
@Dimension(messageKey="RelativeScoreInRaceInPercent", ordinal=12)
|
||||
public ClusterDTO getPercentageClusterForRelativeScoreInRace();
|
||||
|
||||
|
||||
+3
-25
@@ -5,8 +5,6 @@ import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext;
|
||||
import com.sap.sailing.domain.common.Distance;
|
||||
import com.sap.sailing.domain.common.ManeuverType;
|
||||
import com.sap.sailing.domain.common.NauticalSide;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sailing.domain.common.Wind;
|
||||
import com.sap.sailing.domain.tracking.Maneuver;
|
||||
|
||||
@@ -37,35 +35,15 @@ public class ManeuverWithContext implements HasManeuverContext {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Tack getTack() {
|
||||
return getManeuver().getNewTack();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SpeedWithBearing getSpeedBefore() {
|
||||
return getManeuver().getSpeedWithBearingBefore();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SpeedWithBearing getSpeedAfter() {
|
||||
return getManeuver().getSpeedWithBearingAfter();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getDirectionChangeInDegrees() {
|
||||
return getManeuver().getDirectionChangeInDegrees();
|
||||
public NauticalSide getToSide() {
|
||||
return getManeuver().getDirectionChangeInDegrees() >= 0 ? NauticalSide.STARBOARD : NauticalSide.PORT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getAbsoluteDirectionChangeInDegrees() {
|
||||
return Math.abs(getManeuver().getDirectionChangeInDegrees());
|
||||
}
|
||||
|
||||
@Override
|
||||
public NauticalSide getToSide() {
|
||||
return getManeuver().getDirectionChangeInDegrees() >= 0 ? NauticalSide.STARBOARD : NauticalSide.PORT;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Distance getManeuverLoss() {
|
||||
return getManeuver().getManeuverLoss();
|
||||
|
||||
-22
@@ -5,8 +5,6 @@ import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext;
|
||||
import com.sap.sailing.domain.base.Competitor;
|
||||
import com.sap.sailing.domain.base.Waypoint;
|
||||
import com.sap.sailing.domain.common.NauticalSide;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sailing.domain.common.Wind;
|
||||
import com.sap.sailing.domain.leaderboard.Leaderboard;
|
||||
import com.sap.sailing.domain.tracking.MarkPassingManeuver;
|
||||
@@ -36,11 +34,6 @@ public class MarkPassingWithContext implements HasMarkPassingContext {
|
||||
public MarkPassingManeuver getManeuver() {
|
||||
return maneuver;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Tack getTack() {
|
||||
return getManeuver().getNewTack();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Waypoint getWaypoint() {
|
||||
@@ -52,21 +45,6 @@ public class MarkPassingWithContext implements HasMarkPassingContext {
|
||||
return getManeuver().getSide();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SpeedWithBearing getSpeedBefore() {
|
||||
return getManeuver().getSpeedWithBearingBefore();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SpeedWithBearing getSpeedAfter() {
|
||||
return getManeuver().getSpeedWithBearingAfter();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getDirectionChangeInDegrees() {
|
||||
return getManeuver().getDirectionChangeInDegrees();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getRelativeRank() {
|
||||
Leaderboard leaderboard = getTrackedLegOfCompetitorContext().getTrackedLegContext().getTrackedRaceContext().getLeaderboardContext().getLeaderboard();
|
||||
|
||||
-5
@@ -52,11 +52,6 @@ public class RaceOfCompetitorWithContext implements HasRaceOfCompetitorContext {
|
||||
public Competitor getCompetitor() {
|
||||
return competitor;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompetitorSearchTag() {
|
||||
return getCompetitor().getSearchTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Tack getTackAtStart() throws NoWindException {
|
||||
|
||||
-5
@@ -77,11 +77,6 @@ public class RaceResultOfCompetitorWithContext implements HasRaceResultOfCompeti
|
||||
final String result = leaderboard.getName();
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompetitorSearchTag() {
|
||||
return getCompetitor().getSearchTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClusterDTO getPercentageClusterForRelativeScore() {
|
||||
|
||||
-5
@@ -51,11 +51,6 @@ public class TrackedLegOfCompetitorWithContext implements HasTrackedLegOfCompeti
|
||||
public Competitor getCompetitor() {
|
||||
return competitor;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompetitorSearchTag() {
|
||||
return getCompetitor().getSearchTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClusterDTO getPercentageClusterForRelativeScoreInRace() {
|
||||
|
||||
+2
@@ -8,6 +8,7 @@ import com.sap.sse.common.Duration;
|
||||
import com.sap.sse.common.IsManagedByCache;
|
||||
import com.sap.sse.common.NamedWithID;
|
||||
import com.sap.sse.datamining.annotations.Connector;
|
||||
import com.sap.sse.datamining.annotations.Dimension;
|
||||
|
||||
public interface Competitor extends NamedWithID, IsManagedByCache<SharedDomainFactory> {
|
||||
@Connector(messageKey="Team", ordinal=9)
|
||||
@@ -22,6 +23,7 @@ public interface Competitor extends NamedWithID, IsManagedByCache<SharedDomainFa
|
||||
|
||||
boolean hasEmail();
|
||||
|
||||
@Dimension(messageKey="SearchTag", ordinal=11)
|
||||
String getSearchTag();
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,16 +5,23 @@ import com.sap.sailing.domain.common.ManeuverType;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
import com.sap.sailing.domain.common.Tack;
|
||||
import com.sap.sailing.domain.common.tracking.GPSFix;
|
||||
import com.sap.sse.datamining.annotations.Connector;
|
||||
import com.sap.sse.datamining.annotations.Dimension;
|
||||
import com.sap.sse.datamining.annotations.Statistic;
|
||||
|
||||
public interface Maneuver extends GPSFix {
|
||||
ManeuverType getType();
|
||||
|
||||
|
||||
@Dimension(messageKey="Tack", ordinal=13)
|
||||
Tack getNewTack();
|
||||
|
||||
|
||||
@Connector(messageKey="SpeedBefore", ordinal=0)
|
||||
SpeedWithBearing getSpeedWithBearingBefore();
|
||||
|
||||
|
||||
@Connector(messageKey="SpeedAfter", ordinal=1)
|
||||
SpeedWithBearing getSpeedWithBearingAfter();
|
||||
|
||||
|
||||
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
|
||||
double getDirectionChangeInDegrees();
|
||||
|
||||
Distance getManeuverLoss();
|
||||
|
||||
Reference in New Issue
Block a user