diff --git a/README.md b/README.md index e28e1ec0..446133f3 100644 --- a/README.md +++ b/README.md @@ -52,7 +52,7 @@ nexus and to the maven repo (last is only possibly from master). ## Release Notes ### 0.33.0 - +- Use TLongObjectMap instead of TIntObjectMap in Multigraph ### 0.32.0 - Remove use of the temporary parameter "multiple" for poi gravitation diff --git a/pom.xml b/pom.xml index dbe7ae03..7119ed39 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.targomo java-client - 0.33.0-SNAPSHOT + 0.33.0-SNAPSHOT-LONG Targomo Java Client Library Java client library for easy usage of Targomo web services. https://github.com/targomo/targomo-java @@ -220,7 +220,7 @@ com.targomo jackson-datatype-trove - 0.0.8 + 0.0.9 org.jetbrains diff --git a/src/main/java/com/targomo/client/Constants.java b/src/main/java/com/targomo/client/Constants.java index 91d34ab4..37854d89 100644 --- a/src/main/java/com/targomo/client/Constants.java +++ b/src/main/java/com/targomo/client/Constants.java @@ -6,6 +6,7 @@ public class Constants { public static final float NO_VALUE_ENTRY_FLOAT_TROVE_MAPS = -Float.MAX_VALUE; public static final int NO_VALUE_ENTRY_INT_TROVE_MAPS = Integer.MIN_VALUE; + public static final long NO_VALUE_ENTRY_LONG_TROVE_MAPS = Long.MIN_VALUE; public static final String POLYGON_VALUES = "values"; public static final String POLYGON_INTERSECTION_MODE = "intersectionMode"; diff --git a/src/main/java/com/targomo/client/api/StatisticTravelOptions.java b/src/main/java/com/targomo/client/api/StatisticTravelOptions.java index 02699197..ca90e5f8 100644 --- a/src/main/java/com/targomo/client/api/StatisticTravelOptions.java +++ b/src/main/java/com/targomo/client/api/StatisticTravelOptions.java @@ -97,6 +97,9 @@ public class StatisticTravelOptions extends TravelOptions { @Transient private boolean useStatisticTargets = false; + @Transient + private Integer multiGraphH3FixedZoomLevel; + @Override public boolean equals(Object o) { if (this == o) return true; @@ -107,6 +110,7 @@ public boolean equals(Object o) { return super.equals(o) && Objects.equals(useH3Reachability, that.useH3Reachability) && Objects.equals(useStatisticTargets, that.useStatisticTargets) && + Objects.equals(multiGraphH3FixedZoomLevel, that.multiGraphH3FixedZoomLevel) && Objects.equals(getClosestSources, that.getClosestSources) && Objects.equals(omitIndividualStatistics, that.omitIndividualStatistics) && Objects.equals(inactiveSources, that.inactiveSources) && @@ -135,7 +139,7 @@ public int hashCode() { multiGraphDomainStatisticCollectionId, multiGraphLayerUnboundedStatistics, multiGraphReferencedStatisticIds, multiGraphTravelTimeApproximation, statisticIds, chartInterval, statisticCollectionId, multigraphCalculateGravitationPerReferenceId, returnOriginId, competingRoutingOptions, - routingAggregationType.ordinal(), multiGraphIgnoreRoutingErrorMessages); + routingAggregationType.ordinal(), multiGraphIgnoreRoutingErrorMessages, multiGraphH3FixedZoomLevel); } @Override @@ -182,6 +186,8 @@ public String toString(){ builder.append(useH3Reachability); builder.append("\n\tuseStatisticTargets: "); builder.append(useStatisticTargets); + builder.append("\n\tmultiGraphH3FixedZoomLevel: "); + builder.append(multiGraphH3FixedZoomLevel); builder.append("\n}\n"); return builder.toString(); } diff --git a/src/main/java/com/targomo/client/api/pojo/MultiGraph.java b/src/main/java/com/targomo/client/api/pojo/MultiGraph.java index 68ba4b8e..7629149a 100644 --- a/src/main/java/com/targomo/client/api/pojo/MultiGraph.java +++ b/src/main/java/com/targomo/client/api/pojo/MultiGraph.java @@ -4,8 +4,8 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.targomo.client.api.enums.MultiGraphDomainType; -import gnu.trove.map.TIntFloatMap; import gnu.trove.map.TIntObjectMap; +import gnu.trove.map.TLongFloatMap; import java.util.HashMap; import java.util.Map; @@ -16,7 +16,7 @@ */ public class MultiGraph extends BaseGraph { - private final Map layers; + private final Map layers; // the type of the layer: values per vertex or per edge private final MultiGraphDomainType domainType; @@ -30,7 +30,7 @@ public MultiGraph(long networkID, MultiGraphDomainType domainType){ @JsonCreator public MultiGraph(@JsonProperty("networkID") long networkID, @JsonProperty("nodes") TIntObjectMap nodes, - @JsonProperty("layers") Map layers, + @JsonProperty("layers") Map layers, @JsonProperty("edges") TIntObjectMap edges, @JsonProperty("supportingPoints") TIntObjectMap supportingPoints, @JsonProperty("domainType") MultiGraphDomainType domainType) { @@ -39,7 +39,7 @@ public MultiGraph(@JsonProperty("networkID") long networkID, this.domainType = domainType; } - public Map getLayers() { + public Map getLayers() { return layers; } diff --git a/src/main/java/com/targomo/client/api/request/MultiGraphRequest.java b/src/main/java/com/targomo/client/api/request/MultiGraphRequest.java index 8a901356..944fddea 100644 --- a/src/main/java/com/targomo/client/api/request/MultiGraphRequest.java +++ b/src/main/java/com/targomo/client/api/request/MultiGraphRequest.java @@ -27,6 +27,7 @@ public class MultiGraphRequest> extends TargomoR static { MAPPER.registerModule(new TroveModule(Constants.NO_VALUE_ENTRY_INT_TROVE_MAPS, + Constants.NO_VALUE_ENTRY_LONG_TROVE_MAPS, Constants.NO_VALUE_ENTRY_FLOAT_TROVE_MAPS)); //required to properly deserialize MultiGraphs }