diff --git a/build/bom/pom.xml b/build/bom/pom.xml index 7dabb801a7d..0e68a2d543c 100644 --- a/build/bom/pom.xml +++ b/build/bom/pom.xml @@ -346,17 +346,6 @@ ${version.ai.timefold.solver} sources - - ai.timefold.solver - timefold-solver-model-rest-definition - ${version.ai.timefold.solver} - - - ai.timefold.solver - timefold-solver-model-rest-definition - ${version.ai.timefold.solver} - sources - ai.timefold.solver timefold-solver-model-rest diff --git a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/DatasetSelector.java b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/DatasetSelector.java similarity index 69% rename from model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/DatasetSelector.java rename to model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/DatasetSelector.java index fd726b3d60d..04c1599e560 100644 --- a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/DatasetSelector.java +++ b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/DatasetSelector.java @@ -1,4 +1,4 @@ -package ai.timefold.solver.model.rest.definition.api; +package ai.timefold.solver.model.definition.api.rest; public enum DatasetSelector { diff --git a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationId.java b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationId.java similarity index 96% rename from model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationId.java rename to model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationId.java index 850c823ddb8..f67503f7cd5 100644 --- a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationId.java +++ b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationId.java @@ -1,4 +1,4 @@ -package ai.timefold.solver.model.rest.definition.api; +package ai.timefold.solver.model.definition.api.rest; public final class OperationId { diff --git a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationOnPost.java b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationOnPost.java similarity index 68% rename from model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationOnPost.java rename to model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationOnPost.java index e6122a8cbcc..6f8e6b5b9dc 100644 --- a/model/rest-definition/src/main/java/ai/timefold/solver/model/rest/definition/api/OperationOnPost.java +++ b/model/definition/src/main/java/ai/timefold/solver/model/definition/api/rest/OperationOnPost.java @@ -1,4 +1,4 @@ -package ai.timefold.solver.model.rest.definition.api; +package ai.timefold.solver.model.definition.api.rest; public enum OperationOnPost { NONE, diff --git a/model/pom.xml b/model/pom.xml index 6a50e1d1f4a..7fbaac32e68 100644 --- a/model/pom.xml +++ b/model/pom.xml @@ -35,7 +35,6 @@ facade/model facade/model-with-maps facade/model-parent - rest-definition model-defaults tools/maven-plugin diff --git a/model/quarkus/deployment/src/main/java/ai/timefold/solver/model/quarkus/deployment/TimefoldModelDescriptorProcessor.java b/model/quarkus/deployment/src/main/java/ai/timefold/solver/model/quarkus/deployment/TimefoldModelDescriptorProcessor.java index b042e9fb446..4e6faa02c35 100644 --- a/model/quarkus/deployment/src/main/java/ai/timefold/solver/model/quarkus/deployment/TimefoldModelDescriptorProcessor.java +++ b/model/quarkus/deployment/src/main/java/ai/timefold/solver/model/quarkus/deployment/TimefoldModelDescriptorProcessor.java @@ -1,7 +1,7 @@ package ai.timefold.solver.model.quarkus.deployment; +import static ai.timefold.solver.model.definition.api.rest.OperationId.POST_OPERATIONS_ID_PATTERN; import static ai.timefold.solver.model.quarkus.deployment.util.ProcessorUtils.excludeType; -import static ai.timefold.solver.model.rest.definition.api.OperationId.POST_OPERATIONS_ID_PATTERN; import java.io.IOException; import java.io.UncheckedIOException; @@ -47,6 +47,7 @@ import ai.timefold.solver.model.definition.api.domain.ConstraintReference; import ai.timefold.solver.model.definition.api.domain.DataFormat; import ai.timefold.solver.model.definition.api.domain.ModelRequest; +import ai.timefold.solver.model.definition.api.rest.OperationId; import ai.timefold.solver.model.definition.internal.descriptor.ConstraintDescriptor; import ai.timefold.solver.model.definition.internal.descriptor.ConstraintGroupDescriptor; import ai.timefold.solver.model.definition.internal.descriptor.DocumentationDescriptor; @@ -68,7 +69,6 @@ import ai.timefold.solver.model.quarkus.deployment.descriptor.DefaultConstraintGroupDescriptorFactory; import ai.timefold.solver.model.quarkus.deployment.openapi.SchemaPostProcessor; import ai.timefold.solver.model.quarkus.deployment.openapi.SchemaUtils; -import ai.timefold.solver.model.rest.definition.api.OperationId; import org.apache.commons.lang3.exception.UncheckedException; import org.eclipse.microprofile.config.Config; diff --git a/model/rest-definition/pom.xml b/model/rest-definition/pom.xml deleted file mode 100644 index 44a8a57cb1a..00000000000 --- a/model/rest-definition/pom.xml +++ /dev/null @@ -1,48 +0,0 @@ - - 4.0.0 - - ai.timefold.solver - timefold-solver-model-internal-parent - ${revision} - ../pom.xml - - - timefold-solver-model-rest-definition - (Preview) Timefold Solver Model REST definition - - This module contains REST API types definitions. - This module is in a preview state and thus is a subject to changes. - - - - - ai.timefold.solver - timefold-solver-model-definition - - - io.quarkus - quarkus-rest-jackson - - - - org.junit.jupiter - junit-jupiter-api - test - - - org.assertj - assertj-core - test - - - - - - - io.smallrye - jandex-maven-plugin - - - - diff --git a/model/rest/pom.xml b/model/rest/pom.xml index e8ed1e2af35..ae9cd7e246d 100644 --- a/model/rest/pom.xml +++ b/model/rest/pom.xml @@ -23,10 +23,6 @@ ai.timefold.solver timefold-solver-model-json - - ai.timefold.solver - timefold-solver-model-rest-definition - io.quarkus quarkus-rest-jackson diff --git a/model/rest/src/main/java/ai/timefold/solver/model/rest/impl/AbstractModelAPIResource.java b/model/rest/src/main/java/ai/timefold/solver/model/rest/impl/AbstractModelAPIResource.java index ef7f83f0064..e85cab63e35 100644 --- a/model/rest/src/main/java/ai/timefold/solver/model/rest/impl/AbstractModelAPIResource.java +++ b/model/rest/src/main/java/ai/timefold/solver/model/rest/impl/AbstractModelAPIResource.java @@ -43,6 +43,9 @@ import ai.timefold.solver.model.definition.api.log.LogInfo; import ai.timefold.solver.model.definition.api.metrics.ModelInputMetrics; import ai.timefold.solver.model.definition.api.metrics.ModelOutputMetrics; +import ai.timefold.solver.model.definition.api.rest.DatasetSelector; +import ai.timefold.solver.model.definition.api.rest.OperationId; +import ai.timefold.solver.model.definition.api.rest.OperationOnPost; import ai.timefold.solver.model.definition.api.validation.Issue; import ai.timefold.solver.model.definition.api.validation.IssueCode; import ai.timefold.solver.model.definition.api.validation.ModelValidator; @@ -62,9 +65,6 @@ import ai.timefold.solver.model.definition.internal.events.SolverChannels; import ai.timefold.solver.model.definition.internal.storage.AbstractStorageService; import ai.timefold.solver.model.json.internal.patch.JsonPatch; -import ai.timefold.solver.model.rest.definition.api.DatasetSelector; -import ai.timefold.solver.model.rest.definition.api.OperationId; -import ai.timefold.solver.model.rest.definition.api.OperationOnPost; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; diff --git a/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/EmployeeScheduleResourceTest.java b/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/EmployeeScheduleResourceTest.java index f0762ed4279..a3deb471ffa 100644 --- a/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/EmployeeScheduleResourceTest.java +++ b/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/EmployeeScheduleResourceTest.java @@ -43,7 +43,7 @@ import ai.timefold.solver.model.definition.internal.events.InitSolutionEvent; import ai.timefold.solver.model.definition.internal.events.SolverChannels; import ai.timefold.solver.model.quarkus.deployment.defaults.EmptyModelConfigOverrides; -import ai.timefold.solver.model.rest.definition.api.OperationOnPost; +import ai.timefold.solver.model.definition.api.rest.OperationOnPost; import ai.timefold.solver.model.testmodel.domain.Employee; import ai.timefold.solver.model.testmodel.domain.EmployeeSchedule; import ai.timefold.solver.model.testmodel.domain.Shift; diff --git a/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/OpenApiTest.java b/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/OpenApiTest.java index fccee069c79..8cecdeb766c 100644 --- a/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/OpenApiTest.java +++ b/model/test-model/src/test/java/ai/timefold/solver/model/testmodel/OpenApiTest.java @@ -12,7 +12,7 @@ import java.util.List; import java.util.Optional; -import ai.timefold.solver.model.rest.definition.api.OperationId; +import ai.timefold.solver.model.definition.api.rest.OperationId; import org.eclipse.microprofile.config.inject.ConfigProperty; import org.eclipse.microprofile.openapi.models.OpenAPI;