Apparently latitude/longitude/altitude of a GW are optional fields, so prepare for that and don't report these GWs.

koppelting
Bertrik Sikken 2017-08-27 20:51:03 +02:00
rodzic f5e8a77034
commit 5fb524bf79
2 zmienionych plików z 14 dodań i 9 usunięć

Wyświetl plik

@ -100,9 +100,14 @@ public final class TtnHabBridge {
// create listeners
final List<HabReceiver> receivers = new ArrayList<>();
for (TtnMessageGateway gw : message.getMetaData().getMqttGateways()) {
final HabReceiver receiver = new HabReceiver(gw.getId(),
new Location(gw.getLatitude(), gw.getLongitude(), gw.getAltitude()));
receivers.add(receiver);
final Double latitude = gw.getLatitude();
final Double longitude = gw.getLongitude();
final Double altitude = gw.getAltitude();
if ((latitude != null) && (longitude != null) && (altitude != null)) {
final HabReceiver receiver = new HabReceiver(gw.getId(),
new Location(gw.getLatitude(), gw.getLongitude(), gw.getAltitude()));
receivers.add(receiver);
}
}
// send listener data

Wyświetl plik

@ -19,13 +19,13 @@ public final class TtnMessageGateway {
private String time;
@JsonProperty("latitude")
private double latitude;
private Double latitude;
@JsonProperty("longitude")
private double longitude;
private Double longitude;
@JsonProperty("altitude")
private double altitude;
private Double altitude;
public String getId() {
return id;
@ -39,15 +39,15 @@ public final class TtnMessageGateway {
return time;
}
public double getLatitude() {
public Double getLatitude() {
return latitude;
}
public double getLongitude() {
public Double getLongitude() {
return longitude;
}
public double getAltitude() {
public Double getAltitude() {
return altitude;
}