Skip to content

Commit a4471a8

Browse files
committed
[Aero] Add separate flight ID + waypoint types to mark as redispatch,
ETOPS, etc.
1 parent 6642ba0 commit a4471a8

File tree

5 files changed

+35
-24
lines changed

5 files changed

+35
-24
lines changed

sensors/aviation/sensorhub-utils-aero/src/main/java/org/sensorhub/utils/aero/IFlightIdentification.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,12 @@
2727
*/
2828
public interface IFlightIdentification
2929
{
30+
/**
31+
* @return Full flight identifier
32+
*/
33+
String getFlightID();
34+
35+
3036
/**
3137
* @return ICAO flight number (3 letters airline code + 1-4 numbers, e.g. DAL123)
3238
*/

sensors/aviation/sensorhub-utils-aero/src/main/java/org/sensorhub/utils/aero/IWaypoint.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@
1616

1717
public interface IWaypoint
1818
{
19+
public enum WaypointType
20+
{
21+
AIRPORT,
22+
REDISPATCH,
23+
ETOPS_ENTRY,
24+
ETOPS_EXIT,
25+
ALTERNATE
26+
}
27+
1928
/**
2029
* @return Waypoint code (3 to 5 letters ICAO code)
2130
*/

sensors/aviation/sensorhub-utils-aero/src/main/java/org/sensorhub/utils/aero/impl/AeroUtils.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,7 @@ public static IFlightIdentification parseFlightIdentification(String flightId)
353353

354354
return new IFlightIdentification()
355355
{
356+
public String getFlightID() { return flightId; }
356357
public String getFlightNumber() { return tokens[0]; }
357358
public String getOriginAirport() { return null; }
358359
public String getDestinationAirport() { return tokens[1]; }

sensors/aviation/sensorhub-utils-aero/src/main/java/org/sensorhub/utils/aero/impl/FlightPlanRecord.java

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -51,17 +51,18 @@ public static DataRecord getSchema(String name)
5151
.definition(DEF_FLIGHTPLAN_REC)
5252
.label("Flight Plan")
5353
.addField("time", fac.createIssueTime())
54+
.addField("flightId", fac.createFlightID())
5455
.addField("source", fac.createMessageSource()
5556
.addAllowedValues(FlightPlanSource.class))
56-
.addField("flightNum", fac.createFlightNumber())
57+
.addField("flightNumber", fac.createFlightNumber())
5758
.addField("flightDate", fac.createFlightDate())
5859
.addField("origAirport", fac.createOriginAirport())
5960
.addField("destAirport", fac.createDestinationAirport())
6061
.addField("altAirports", fac.createAlternateAirports())
6162
.addField("departTime", fac.createDepartureTime())
6263
.addField("arrivalTime", fac.createArrivalTime())
6364
.addField("tailNum", fac.createTailNumber())
64-
.addField("acType", fac.createAircraftType())
65+
.addField("aircraftType", fac.createAircraftType())
6566
.addField("cruiseAlt", fac.createBaroAlt()
6667
.label("Cruise Altitude"))
6768
.addField("cruiseSpeed", fac.createTrueAirspeed()
@@ -71,7 +72,7 @@ public static DataRecord getSchema(String name)
7172
.addField("costIndex", fac.createCostIndex())
7273
.addField("fuelFactor", fac.createFuelFactor())
7374
.addField("codedRoute", fac.createCodedRoute())
74-
.addField("numWpts", fac.createCount()
75+
.addField("numPoints", fac.createCount()
7576
.definition(SWEConstants.DEF_NUM_POINTS)
7677
.id(numWptsCompId)
7778
.label("Number of Waypoints"))
@@ -103,6 +104,13 @@ public static FlightPlanRecord create(DataBlock dblk)
103104
@SweMapping(path="time")
104105
void setIssueTime(Instant val);
105106

107+
@Override
108+
@SweMapping(path="flightId")
109+
String getFlightID();
110+
111+
@SweMapping(path="flightId")
112+
void setFlightID(String val);
113+
106114
@Override
107115
@SweMapping(path="source")
108116
String getSource();
@@ -111,10 +119,10 @@ public static FlightPlanRecord create(DataBlock dblk)
111119
void setSource(String val);
112120

113121
@Override
114-
@SweMapping(path="flightNum")
122+
@SweMapping(path="flightNumber")
115123
String getFlightNumber();
116124

117-
@SweMapping(path="flightNum")
125+
@SweMapping(path="flightNumber")
118126
void setFlightNumber(String val);
119127

120128
@SweMapping(path="flightDate")
@@ -178,10 +186,10 @@ default void setFlightDate(LocalDate date)
178186
void setTailNumber(String val);
179187

180188
@Override
181-
@SweMapping(path="acType")
189+
@SweMapping(path="aircraftType")
182190
String getAircraftType();
183191

184-
@SweMapping(path="acType")
192+
@SweMapping(path="aircraftType")
185193
void setAircraftType(String val);
186194

187195
@Override
@@ -233,13 +241,4 @@ default void setFlightDate(LocalDate date)
233241
@SweMapping(path="waypoints")
234242
WaypointRecord addWaypoint();
235243

236-
237-
/**
238-
* @return Unique flight identifier composed of flight number, destination and flight date
239-
*/
240-
default String getFlightID()
241-
{
242-
return AeroUtils.getFlightID(this);
243-
}
244-
245244
}

sensors/aviation/sensorhub-utils-aero/src/main/java/org/sensorhub/utils/aero/impl/WaypointRecord.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,10 @@ static DataRecordBuilder getRecordBuilder(String name)
5252
.definition(DEF_WAYPOINT_REC)
5353
.label("Waypoint")
5454
.addField("code", fac.createWaypointCode())
55-
/*.addField("type", fac.createCategory()
55+
.addField("type", fac.createCategory()
5656
.definition(AeroHelper.DEF_WAYPOINT_TYPE)
5757
.label("Waypoint Type")
58-
.description("Type of navigation point (airport, waypoint, VOR, VORTAC, DME, etc."))*/
58+
.addAllowedValues(WaypointType.class))
5959
.addField("lat", fac.createLatitude())
6060
.addField("lon", fac.createLongitude())
6161
.addField("alt", fac.createBaroAlt());
@@ -83,16 +83,12 @@ public static WaypointRecord create(DataBlock dblk)
8383
@SweMapping(path="code")
8484
void setCode(String val);
8585

86-
/*@Override
86+
@Override
8787
@SweMapping(path="type")
8888
String getType();
8989

9090
@SweMapping(path="type")
91-
void setType(String val);*/
92-
default String getType()
93-
{
94-
return null;
95-
}
91+
void setType(String val);
9692

9793
@Override
9894
@SweMapping(path="lat")

0 commit comments

Comments
 (0)