16213b12d3c3bc8302dc2dd76c25a7925c12393b
java/com.sap.sailing.domain.persistence/src/com/sap/sailing/domain/persistence/impl/MongoObjectFactoryImpl.java
| ... | ... | @@ -2043,25 +2043,27 @@ public class MongoObjectFactoryImpl implements MongoObjectFactory { |
| 2043 | 2043 | final Document competitorManeuver = new Document(); |
| 2044 | 2044 | competitorManeuver.put(FieldNames.COMPETITOR_ID.name(), e.getKey().getId()); |
| 2045 | 2045 | final List<Document> maneuverList = new ArrayList<>(); |
| 2046 | - for (final Maneuver maneuver : e.getValue()) { |
|
| 2047 | - final Document maneuverDoc = new Document(); |
|
| 2048 | - maneuverDoc.put(FieldNames.TYPE.name(), maneuver.getType().name()); |
|
| 2049 | - maneuverDoc.put(FieldNames.TACK.name(), maneuver.getNewTack().name()); |
|
| 2050 | - maneuverDoc.put(FieldNames.POSITION_LAT_RAD.name(), maneuver.getPosition().getLatRad()); |
|
| 2051 | - maneuverDoc.put(FieldNames.POSITION_LNG_RAD.name(), maneuver.getPosition().getLngRad()); |
|
| 2052 | - maneuverDoc.put(FieldNames.TIMEPOINT.name(), maneuver.getTimePoint().asMillis()); |
|
| 2053 | - final Document mainCurveBoundariesDoc = new Document(); |
|
| 2054 | - maneuverDoc.put(FieldNames.MAIN_CURVE_BOUNDARIES.name(), storeMainCurveBoundaries(maneuver.getMainCurveBoundaries(), mainCurveBoundariesDoc)); |
|
| 2055 | - final Document maeuverCurveWithStableSpeedAndBoundariesDoc = new Document(); |
|
| 2056 | - maneuverDoc.put(FieldNames.MANEUVER_CURVE_WITH_STABLE_SPEED_AND_COURSE_BOUNDERIES.name(), storeMainCurveBoundaries(maneuver.getManeuverCurveWithStableSpeedAndCourseBoundaries(), maeuverCurveWithStableSpeedAndBoundariesDoc)); |
|
| 2057 | - maneuverDoc.put(FieldNames.MAX_TURNING_RATE_IN_DEGREE_PER_SECOUND.name(), maneuver.getMaxTurningRateInDegreesPerSecond()); |
|
| 2058 | - maneuverDoc.put(FieldNames.INDEX_OF_PASSED_WAYPOINT.name(), maneuver.getMarkPassing() == null ? -1 : course.getIndexOfWaypoint(maneuver.getMarkPassing().getWaypoint())); |
|
| 2059 | - maneuverDoc.put(FieldNames.TIME_AS_MILLIS.name(), maneuver.getDuration().asMillis()); |
|
| 2060 | - maneuverDoc.put(FieldNames.MANEUVER_LOSS.name(), maneuver.getManeuverLoss() == null ? null : storeManeuverLoss(maneuver.getManeuverLoss())); |
|
| 2061 | - maneuverList.add(maneuverDoc); |
|
| 2046 | + if (e.getValue() != null) { |
|
| 2047 | + for (final Maneuver maneuver : e.getValue()) { |
|
| 2048 | + final Document maneuverDoc = new Document(); |
|
| 2049 | + maneuverDoc.put(FieldNames.TYPE.name(), maneuver.getType().name()); |
|
| 2050 | + maneuverDoc.put(FieldNames.TACK.name(), maneuver.getNewTack().name()); |
|
| 2051 | + maneuverDoc.put(FieldNames.POSITION_LAT_RAD.name(), maneuver.getPosition().getLatRad()); |
|
| 2052 | + maneuverDoc.put(FieldNames.POSITION_LNG_RAD.name(), maneuver.getPosition().getLngRad()); |
|
| 2053 | + maneuverDoc.put(FieldNames.TIMEPOINT.name(), maneuver.getTimePoint().asMillis()); |
|
| 2054 | + final Document mainCurveBoundariesDoc = new Document(); |
|
| 2055 | + maneuverDoc.put(FieldNames.MAIN_CURVE_BOUNDARIES.name(), storeMainCurveBoundaries(maneuver.getMainCurveBoundaries(), mainCurveBoundariesDoc)); |
|
| 2056 | + final Document maeuverCurveWithStableSpeedAndBoundariesDoc = new Document(); |
|
| 2057 | + maneuverDoc.put(FieldNames.MANEUVER_CURVE_WITH_STABLE_SPEED_AND_COURSE_BOUNDERIES.name(), storeMainCurveBoundaries(maneuver.getManeuverCurveWithStableSpeedAndCourseBoundaries(), maeuverCurveWithStableSpeedAndBoundariesDoc)); |
|
| 2058 | + maneuverDoc.put(FieldNames.MAX_TURNING_RATE_IN_DEGREE_PER_SECOUND.name(), maneuver.getMaxTurningRateInDegreesPerSecond()); |
|
| 2059 | + maneuverDoc.put(FieldNames.INDEX_OF_PASSED_WAYPOINT.name(), maneuver.getMarkPassing() == null ? -1 : course.getIndexOfWaypoint(maneuver.getMarkPassing().getWaypoint())); |
|
| 2060 | + maneuverDoc.put(FieldNames.TIME_AS_MILLIS.name(), maneuver.getDuration().asMillis()); |
|
| 2061 | + maneuverDoc.put(FieldNames.MANEUVER_LOSS.name(), maneuver.getManeuverLoss() == null ? null : storeManeuverLoss(maneuver.getManeuverLoss())); |
|
| 2062 | + maneuverList.add(maneuverDoc); |
|
| 2063 | + } |
|
| 2064 | + competitorManeuver.put(FieldNames.MANEUVERS.name(), maneuverList); |
|
| 2065 | + result.add(competitorManeuver); |
|
| 2062 | 2066 | } |
| 2063 | - competitorManeuver.put(FieldNames.MANEUVERS.name(), maneuverList); |
|
| 2064 | - result.add(competitorManeuver); |
|
| 2065 | 2067 | } |
| 2066 | 2068 | return result; |
| 2067 | 2069 | } |