diff --git a/source/imaer-shared/src/main/java/nl/overheid/aerius/shared/domain/calculation/OwN2000CalculationOptions.java b/source/imaer-shared/src/main/java/nl/overheid/aerius/shared/domain/calculation/OwN2000CalculationOptions.java index 650097d2..ce2df0e7 100644 --- a/source/imaer-shared/src/main/java/nl/overheid/aerius/shared/domain/calculation/OwN2000CalculationOptions.java +++ b/source/imaer-shared/src/main/java/nl/overheid/aerius/shared/domain/calculation/OwN2000CalculationOptions.java @@ -25,7 +25,7 @@ */ public class OwN2000CalculationOptions implements Serializable { - private static final long serialVersionUID = 2L; + private static final long serialVersionUID = 3L; private CalculationRoadOPS roadOPS = CalculationRoadOPS.DEFAULT; private PermitLowerBoundType permitLowerBoundType; @@ -42,6 +42,7 @@ public class OwN2000CalculationOptions implements Serializable { private Integer subReceptorZoomLevel; private boolean splitSubReceptorWork; private int splitSubReceptorWorkDistance; + private boolean repositionSubReceptors; /** * @return Returns the lower bound type used for permit calculations. @@ -212,6 +213,14 @@ public void setSplitSubReceptorWorkDistance(final int distance) { this.splitSubReceptorWorkDistance = distance; } + public boolean isRepositionSubReceptors() { + return repositionSubReceptors; + } + + public void setRepositionSubReceptors(final boolean repositionSubReceptors) { + this.repositionSubReceptors = repositionSubReceptors; + } + /** * @return Returns OPS specific options. */ diff --git a/source/imaer-util/src/main/java/nl/overheid/aerius/util/OptionsMetadataUtil.java b/source/imaer-util/src/main/java/nl/overheid/aerius/util/OptionsMetadataUtil.java index 3039aa2f..b9322cf1 100644 --- a/source/imaer-util/src/main/java/nl/overheid/aerius/util/OptionsMetadataUtil.java +++ b/source/imaer-util/src/main/java/nl/overheid/aerius/util/OptionsMetadataUtil.java @@ -47,6 +47,7 @@ public enum Option { SUB_RECEPTOR_ZOOM_LEVEL, SPLIT_SUB_RECEPTOR_WORK, SPLIT_SUB_RECEPTOR_WORK_DISTANCE, + REPOSITION_SUB_RECEPTORS, USE_IN_COMBINATION_ARCHIVE, /* ConnectSuppliedOptions related */ diff --git a/source/imaer-util/src/main/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtil.java b/source/imaer-util/src/main/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtil.java index 89a97169..111cd258 100644 --- a/source/imaer-util/src/main/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtil.java +++ b/source/imaer-util/src/main/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtil.java @@ -76,6 +76,7 @@ private static void own2000OptionsToMap(final Map mapToAddTo, fi if (options.isSplitSubReceptorWork()) { addValue(mapToAddTo, Option.SPLIT_SUB_RECEPTOR_WORK_DISTANCE, options.getSplitSubReceptorWorkDistance(), addDefaults); } + addBooleanValue(mapToAddTo, Option.REPOSITION_SUB_RECEPTORS, options.isRepositionSubReceptors(), addDefaults); opsOptionsToMap(options.getOpsOptions(), mapToAddTo, addDefaults); } diff --git a/source/imaer-util/src/test/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtilTest.java b/source/imaer-util/src/test/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtilTest.java index 743e47b4..ce4d499e 100644 --- a/source/imaer-util/src/test/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtilTest.java +++ b/source/imaer-util/src/test/java/nl/overheid/aerius/util/Own2000OptionsMetadataUtilTest.java @@ -39,7 +39,7 @@ */ class Own2000OptionsMetadataUtilTest { - private static final int BASIC_OPTIONS = 10; + private static final int BASIC_OPTIONS = 11; private static final int CONNECT_OPTIONS = 2; private static final int OPS_OPTIONS = 13; @@ -85,6 +85,7 @@ void testNonDefaultOptions() { options.setSubReceptorZoomLevel(1); options.setSplitSubReceptorWork(true); options.setSplitSubReceptorWorkDistance(1000); + options.setRepositionSubReceptors(true); cso.getRblCalculationOptions().setMonitorSrm2Year(2023); final Map result = OptionsMetadataUtil.optionsToMap(Theme.OWN2000, cso, false); @@ -103,6 +104,7 @@ void testNonDefaultOptions() { assertEquals("2023", result.get("monitor_srm2_year"), "Invalid monitor_srm2 option"); assertEquals("true", result.get("split_sub_receptor_work"), "Invalid split_sub_receptor_work option"); assertEquals("1000", result.get("split_sub_receptor_work_distance"), "Invalid split_sub_receptor_work_distance option"); + assertEquals("true", result.get("reposition_sub_receptors"), "Invalid reposition_sub_receptor option"); } @Test