diff --git a/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/json/Parsers.java b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/json/Parsers.java new file mode 100644 index 0000000000..5cf40ab2d6 --- /dev/null +++ b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/json/Parsers.java @@ -0,0 +1,80 @@ +package gov.nasa.jpl.aerie.merlin.driver.json; + +import gov.nasa.jpl.aerie.json.JsonParseResult; +import gov.nasa.jpl.aerie.json.JsonParser; +import gov.nasa.jpl.aerie.json.SchemaCache; +import gov.nasa.jpl.aerie.merlin.protocol.types.RealDynamics; +import gov.nasa.jpl.aerie.merlin.protocol.types.SerializedValue; +import gov.nasa.jpl.aerie.types.Timestamp; + +import javax.json.Json; +import javax.json.JsonObject; +import javax.json.JsonValue; +import java.time.LocalDateTime; +import java.time.ZoneOffset; +import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeFormatterBuilder; +import java.time.format.DateTimeParseException; +import java.time.temporal.ChronoField; +import java.util.Map; + +import static gov.nasa.jpl.aerie.json.BasicParsers.doubleP; +import static gov.nasa.jpl.aerie.json.BasicParsers.mapP; +import static gov.nasa.jpl.aerie.json.BasicParsers.productP; +import static gov.nasa.jpl.aerie.json.BasicParsers.stringP; +import static gov.nasa.jpl.aerie.json.Uncurry.tuple; +import static gov.nasa.jpl.aerie.json.Uncurry.untuple; +import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; + +public class Parsers { + public static final JsonParser pgTimestampP = new JsonParser<>() { + private static final DateTimeFormatter format = + new DateTimeFormatterBuilder() + .append(DateTimeFormatter.ISO_OFFSET_DATE_TIME) + .appendFraction(ChronoField.MICRO_OF_SECOND, 0, 6, true) + .toFormatter(); + + @Override + public JsonObject getSchema(final SchemaCache anchors) { + return Json + .createObjectBuilder(stringP.getSchema()) + .add("format", "date-time") + .build(); + } + + @Override + public JsonParseResult parse(final JsonValue json) { + final var result = stringP.parse(json); + if (result instanceof final JsonParseResult.Success s) { + try { + final var instant = LocalDateTime.parse(s.result(), format).atZone(ZoneOffset.UTC); + return JsonParseResult.success(new Timestamp(instant)); + } catch (final DateTimeParseException e) { + return JsonParseResult.failure("invalid timestamp format "+e); + } + } else if (result instanceof final JsonParseResult.Failure f) { + return f.cast(); + } else { + throw new Error("Unexpected subtype of " + JsonParseResult.class + ": " + result); + } + } + + @Override + public JsonValue unparse(final Timestamp value) { + final var s = format.format(value.toInstant().atZone(ZoneOffset.UTC)); + return stringP.unparse(s); + } + }; + + public static final JsonParser> activityArgumentsP = mapP(serializedValueP); + + public static final JsonParser> simulationArgumentsP = mapP(serializedValueP); + + public static final JsonParser realDynamicsP + = productP + . field("initial", doubleP) + . field("rate", doubleP) + . map( + untuple(RealDynamics::linear), + $ -> tuple($.initial, $.rate)); +} diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattener.java b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattener.java similarity index 96% rename from merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattener.java rename to merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattener.java index b7b7fddae4..82d887dd0c 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattener.java +++ b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattener.java @@ -1,6 +1,5 @@ -package gov.nasa.jpl.aerie.merlin.server.remotes.postgres; +package gov.nasa.jpl.aerie.merlin.driver.timeline; -import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraph; import gov.nasa.jpl.aerie.merlin.protocol.model.EffectTrait; import org.apache.commons.lang3.tuple.Pair; diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphUnflattener.java b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphUnflattener.java similarity index 97% rename from merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphUnflattener.java rename to merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphUnflattener.java index daf7b5ccd3..e74dad91cf 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphUnflattener.java +++ b/merlin-driver/src/main/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphUnflattener.java @@ -1,6 +1,5 @@ -package gov.nasa.jpl.aerie.merlin.server.remotes.postgres; +package gov.nasa.jpl.aerie.merlin.driver.timeline; -import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraph; import org.apache.commons.lang3.tuple.Pair; import java.util.List; diff --git a/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattenerTest.java b/merlin-driver/src/test/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattenerTest.java similarity index 91% rename from merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattenerTest.java rename to merlin-driver/src/test/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattenerTest.java index f03d79c8ec..9834846c47 100644 --- a/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/EventGraphFlattenerTest.java +++ b/merlin-driver/src/test/java/gov/nasa/jpl/aerie/merlin/driver/timeline/EventGraphFlattenerTest.java @@ -1,6 +1,5 @@ -package gov.nasa.jpl.aerie.merlin.server.remotes.postgres; +package gov.nasa.jpl.aerie.merlin.driver.timeline; -import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraph; import net.jqwik.api.Arbitraries; import net.jqwik.api.Arbitrary; import net.jqwik.api.ForAll; @@ -10,8 +9,8 @@ import org.junit.jupiter.api.Test; import static gov.nasa.jpl.aerie.merlin.driver.timeline.EffectExpressionDisplay.displayGraph; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.EventGraphFlattener.flatten; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.EventGraphUnflattener.unflatten; +import static gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraphFlattener.flatten; +import static gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraphUnflattener.unflatten; import static org.junit.jupiter.api.Assertions.assertEquals; public final class EventGraphFlattenerTest { diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/MerlinParsers.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/MerlinParsers.java index e6a78c5d71..c2f9b508e3 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/MerlinParsers.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/MerlinParsers.java @@ -24,7 +24,7 @@ import static gov.nasa.jpl.aerie.json.BasicParsers.*; import static gov.nasa.jpl.aerie.json.Uncurry.tuple; import static gov.nasa.jpl.aerie.json.Uncurry.untuple; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.pgTimestampP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.pgTimestampP; public abstract class MerlinParsers { private MerlinParsers() {} diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/ProfileParsers.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/ProfileParsers.java index a4399273e3..54d035b39d 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/ProfileParsers.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/http/ProfileParsers.java @@ -15,26 +15,18 @@ import java.util.function.BiFunction; import static gov.nasa.jpl.aerie.json.BasicParsers.chooseP; -import static gov.nasa.jpl.aerie.json.BasicParsers.doubleP; import static gov.nasa.jpl.aerie.json.BasicParsers.listP; import static gov.nasa.jpl.aerie.json.BasicParsers.literalP; import static gov.nasa.jpl.aerie.json.BasicParsers.mapP; import static gov.nasa.jpl.aerie.json.BasicParsers.productP; import static gov.nasa.jpl.aerie.json.Uncurry.tuple; import static gov.nasa.jpl.aerie.json.Uncurry.untuple; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.realDynamicsP; import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; import static gov.nasa.jpl.aerie.merlin.driver.json.ValueSchemaJsonParser.valueSchemaP; import static gov.nasa.jpl.aerie.merlin.server.http.MerlinParsers.durationP; public final class ProfileParsers { - public static final JsonParser realDynamicsP - = productP - . field("initial", doubleP) - . field("rate", doubleP) - . map( - untuple(RealDynamics::linear), - $ -> tuple($.initial, $.rate)); - public static final JsonParser>> realProfileSegmentP = productP . field("duration", durationP) diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/CreateSimulationDatasetAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/CreateSimulationDatasetAction.java index aae2ea5f7f..f9640df75f 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/CreateSimulationDatasetAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/CreateSimulationDatasetAction.java @@ -10,7 +10,7 @@ import java.sql.SQLException; import java.util.Map; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.simulationArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.simulationArgumentsP; /*package local*/ final class CreateSimulationDatasetAction implements AutoCloseable { private static final @Language("SQL") String sql = """ diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetActivityDirectivesAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetActivityDirectivesAction.java index 588ee724c4..acd01bbc4b 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetActivityDirectivesAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetActivityDirectivesAction.java @@ -8,7 +8,7 @@ import java.util.ArrayList; import java.util.List; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.activityArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.activityArgumentsP; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.getJsonColumn; /*package-local*/ final class GetActivityDirectivesAction implements AutoCloseable { diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationAction.java index 726e48923f..d24488441a 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationAction.java @@ -10,7 +10,7 @@ import java.util.Optional; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.getJsonColumn; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.simulationArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.simulationArgumentsP; /*package local*/ final class GetSimulationAction implements AutoCloseable { private static final @Language("SQL") String sql = """ diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationEventsAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationEventsAction.java index fb85f50a94..c177200e82 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationEventsAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationEventsAction.java @@ -2,6 +2,7 @@ import gov.nasa.jpl.aerie.merlin.driver.engine.EventRecord; import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraph; +import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraphUnflattener; import gov.nasa.jpl.aerie.merlin.protocol.types.Duration; import gov.nasa.jpl.aerie.merlin.protocol.types.SerializedValue; import org.apache.commons.lang3.tuple.Pair; diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationTemplateAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationTemplateAction.java index 4953bd929d..91f0430b27 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationTemplateAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetSimulationTemplateAction.java @@ -9,7 +9,7 @@ import java.util.Optional; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.getJsonColumn; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.simulationArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.simulationArgumentsP; /*package local*/ final class GetSimulationTemplateAction implements AutoCloseable { private static final @Language("SQL") String sql = """ diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetUnvalidatedDirectivesAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetUnvalidatedDirectivesAction.java index 8971e8caf4..0746e7f10e 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetUnvalidatedDirectivesAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/GetUnvalidatedDirectivesAction.java @@ -14,7 +14,7 @@ import java.util.List; import java.util.Map; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.activityArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.activityArgumentsP; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.getJsonColumn; public class GetUnvalidatedDirectivesAction implements AutoCloseable { diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/InsertSimulationEventsAction.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/InsertSimulationEventsAction.java index 07bcdc8f0c..113d1a69bd 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/InsertSimulationEventsAction.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/InsertSimulationEventsAction.java @@ -2,6 +2,7 @@ import gov.nasa.jpl.aerie.merlin.driver.engine.EventRecord; import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraph; +import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraphFlattener; import gov.nasa.jpl.aerie.merlin.protocol.types.Duration; import gov.nasa.jpl.aerie.types.Timestamp; import org.apache.commons.lang3.tuple.Pair; diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsers.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsers.java index b0fe1252d0..05b9fa4ddf 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsers.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsers.java @@ -28,50 +28,12 @@ import static gov.nasa.jpl.aerie.json.BasicParsers.*; import static gov.nasa.jpl.aerie.json.Uncurry.tuple; import static gov.nasa.jpl.aerie.json.Uncurry.untuple; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.activityArgumentsP; import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; import static gov.nasa.jpl.aerie.merlin.driver.json.ValueSchemaJsonParser.valueSchemaP; public final class PostgresParsers { - public static final JsonParser pgTimestampP = new JsonParser<>() { - private static final DateTimeFormatter format = - new DateTimeFormatterBuilder() - .append(DateTimeFormatter.ISO_OFFSET_DATE_TIME) - .appendFraction(ChronoField.MICRO_OF_SECOND, 0, 6, true) - .toFormatter(); - - @Override - public JsonObject getSchema(final SchemaCache anchors) { - return Json - .createObjectBuilder(stringP.getSchema()) - .add("format", "date-time") - .build(); - } - - @Override - public JsonParseResult parse(final JsonValue json) { - final var result = stringP.parse(json); - if (result instanceof final JsonParseResult.Success s) { - try { - final var instant = LocalDateTime.parse(s.result(), format).atZone(ZoneOffset.UTC); - return JsonParseResult.success(new Timestamp(instant)); - } catch (final DateTimeParseException e) { - return JsonParseResult.failure("invalid timestamp format "+e); - } - } else if (result instanceof final JsonParseResult.Failure f) { - return f.cast(); - } else { - throw new UnexpectedSubtypeError(JsonParseResult.class, result); - } - } - - @Override - public JsonValue unparse(final Timestamp value) { - final var s = format.format(value.toInstant().atZone(ZoneOffset.UTC)); - return stringP.unparse(s); - } - }; - public static final JsonParser> discreteProfileTypeP = productP .field("type", literalP("discrete")) @@ -117,9 +79,6 @@ public static Duration parseDurationISO8601(final String iso8601String){ } public static final JsonParser> constraintArgumentsP = mapP(serializedValueP); - public static final JsonParser> activityArgumentsP = mapP(serializedValueP); - - public static final JsonParser> simulationArgumentsP = mapP(serializedValueP); public static final JsonParser activityAttributesP = productP .optionalField("directiveId", longP) diff --git a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/ProfileRepository.java b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/ProfileRepository.java index 032238c8a9..e0f42da53f 100644 --- a/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/ProfileRepository.java +++ b/merlin-server/src/main/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/ProfileRepository.java @@ -19,7 +19,7 @@ import java.util.stream.Collectors; import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; -import static gov.nasa.jpl.aerie.merlin.server.http.ProfileParsers.realDynamicsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.realDynamicsP; /*package-local*/ final class ProfileRepository { static ProfileSet getProfiles( diff --git a/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsersTest.java b/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsersTest.java index aabbeb4cdb..0ebebe13d3 100644 --- a/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsersTest.java +++ b/merlin-server/src/test/java/gov/nasa/jpl/aerie/merlin/server/remotes/postgres/PostgresParsersTest.java @@ -1,7 +1,7 @@ package gov.nasa.jpl.aerie.merlin.server.remotes.postgres; import javax.json.Json; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.pgTimestampP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.pgTimestampP; import static org.junit.jupiter.api.Assertions.assertEquals; import gov.nasa.jpl.aerie.types.Timestamp; diff --git a/merlin-worker/src/main/java/gov/nasa/jpl/aerie/merlin/worker/postgres/PostgresProfileQueryHandler.java b/merlin-worker/src/main/java/gov/nasa/jpl/aerie/merlin/worker/postgres/PostgresProfileQueryHandler.java index 8f00cb4872..27541d9ded 100644 --- a/merlin-worker/src/main/java/gov/nasa/jpl/aerie/merlin/worker/postgres/PostgresProfileQueryHandler.java +++ b/merlin-worker/src/main/java/gov/nasa/jpl/aerie/merlin/worker/postgres/PostgresProfileQueryHandler.java @@ -20,7 +20,7 @@ import java.util.HashMap; import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; -import static gov.nasa.jpl.aerie.merlin.server.http.ProfileParsers.realDynamicsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.realDynamicsP; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.discreteProfileTypeP; import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.realProfileTypeP; diff --git a/orchestration-utils/build.gradle b/orchestration-utils/build.gradle index 78f1a41230..a6ad19cf19 100644 --- a/orchestration-utils/build.gradle +++ b/orchestration-utils/build.gradle @@ -34,7 +34,6 @@ jacocoTestReport { dependencies { - implementation project(':merlin-server') implementation project(':merlin-driver') implementation project(':parsing-utilities') implementation project(':type-utils') diff --git a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/PlanJsonParser.java b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/PlanJsonParser.java index 25c1bb3158..9cc13c6d7b 100644 --- a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/PlanJsonParser.java +++ b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/PlanJsonParser.java @@ -2,9 +2,9 @@ import gov.nasa.jpl.aerie.merlin.protocol.types.Duration; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.activityArgumentsP; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.pgTimestampP; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.simulationArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.activityArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.pgTimestampP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.simulationArgumentsP; import gov.nasa.jpl.aerie.merlin.protocol.types.SerializedValue; diff --git a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/ResourceFileStreamer.java b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/ResourceFileStreamer.java index ea3ac9cdf4..76b04e7af9 100644 --- a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/ResourceFileStreamer.java +++ b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/ResourceFileStreamer.java @@ -11,7 +11,7 @@ import java.util.UUID; import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; -import static gov.nasa.jpl.aerie.merlin.server.http.ProfileParsers.realDynamicsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.realDynamicsP; /** * A consumer that writes resource segments to the file system. diff --git a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/SimulationResultsWriter.java b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/SimulationResultsWriter.java index 043d965e36..f8ae5bb513 100644 --- a/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/SimulationResultsWriter.java +++ b/orchestration-utils/src/main/java/gov/nasa/jpl/aerie/orchestration/simulation/SimulationResultsWriter.java @@ -27,7 +27,7 @@ import java.util.Map; import java.util.concurrent.RecursiveTask; import gov.nasa.jpl.aerie.merlin.protocol.types.Duration; -import gov.nasa.jpl.aerie.merlin.server.remotes.postgres.EventGraphFlattener; +import gov.nasa.jpl.aerie.merlin.driver.timeline.EventGraphFlattener; import gov.nasa.jpl.aerie.types.Plan; import gov.nasa.jpl.aerie.types.Timestamp; import org.apache.commons.lang3.tuple.Pair; @@ -35,9 +35,9 @@ import static gov.nasa.jpl.aerie.merlin.driver.json.SerializedValueJsonParser.serializedValueP; import static gov.nasa.jpl.aerie.merlin.driver.json.ValueSchemaJsonParser.valueSchemaP; -import static gov.nasa.jpl.aerie.merlin.server.http.ProfileParsers.realDynamicsP; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.activityArgumentsP; -import static gov.nasa.jpl.aerie.merlin.server.remotes.postgres.PostgresParsers.simulationArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.realDynamicsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.activityArgumentsP; +import static gov.nasa.jpl.aerie.merlin.driver.json.Parsers.simulationArgumentsP; public class SimulationResultsWriter {