diff --git a/docs/packer/pull-requests/PR-19-api-surface-audit-model-separation-and-public-read-dtos.md b/docs/packer/pull-requests/PR-19-api-surface-audit-model-separation-and-public-read-dtos.md new file mode 100644 index 00000000..6452c685 --- /dev/null +++ b/docs/packer/pull-requests/PR-19-api-surface-audit-model-separation-and-public-read-dtos.md @@ -0,0 +1,98 @@ +# PR-19 API Surface Audit, Model Separation, and Public Read DTOs + +Domain Owner: `docs/packer` +Cross-Domain Impact: `docs/studio` + +## Briefing + +The current packer API still exposes some read payload types that are simultaneously acting as public transport objects and internal implementation models. + +This is acceptable during early convergence, but it weakens the boundary between `prometeu-packer-api` and `prometeu-packer-v1`. + +The next cleanup step is to make the API explicit about three different categories: + +- domain contracts, +- request/response messages, +- public read DTOs. + +At the same time, the internal implementation models used by `prometeu-packer-v1` should stop leaking through the API as if they were stable public models. + +## Objective + +Separate internal `v1` read models from public API read DTOs while preserving: + +- request/response messages as immutable messages, +- domain contracts as domain contracts, +- exceptions as part of the public API, +- and Studio compatibility through explicit mapper-based conversion inside `prometeu-packer-v1`. + +## Dependencies + +- [`./PR-15-snapshot-backed-asset-query-services.md`](./PR-15-snapshot-backed-asset-query-services.md) +- [`./PR-16-write-lane-command-completion-and-used-write-services.md`](./PR-16-write-lane-command-completion-and-used-write-services.md) +- [`./PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md`](./PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md) +- [`./PR-18-legacy-service-retirement-and-regression-hardening.md`](./PR-18-legacy-service-retirement-and-regression-hardening.md) + +## Scope + +- audit the current public packer API against real external consumption +- preserve public exceptions in the API even when only `v1` currently throws them +- preserve request/response records as request/response messages rather than renaming them as generic DTOs +- move the current mixed model/transport read types out of the API and into `prometeu-packer-v1` +- introduce public read DTOs in the API for the information Studio actually consumes +- add explicit mapper classes in `prometeu-packer-v1` to convert internal models into API DTOs +- keep the active service wave limited to `initWorkspace`, `listAssets`, `getAssetDetails`, and `createAsset` + +## Non-Goals + +- no new packer capabilities +- no write API redesign +- no doctor or build/pack reintroduction +- no reconcile observer work +- no semantic change to asset identity, registry ownership, or snapshot authority + +## Execution Method + +1. Classify the current API surface into: + - public domain contracts, + - public request/response messages, + - public read DTOs, + - internal implementation models. +2. Keep domain contracts in `prometeu-packer-api` without `DTO` suffixes. +3. Keep request/response types in `prometeu-packer-api` as immutable message records with `Request` and `Response` naming. +4. Move the current mixed read shapes now exposed as `PackerAssetSummary`, `PackerAssetDetails`, and `PackerAssetIdentity` into `prometeu-packer-v1` as internal models. +5. Introduce explicit public DTOs in the API for runtime-backed read payloads, such as: + - `PackerAssetSummaryDTO` + - `PackerAssetDetailsDTO` + - `PackerAssetIdentityDTO` + - `PackerCodecConfigurationFieldDTO` + - and `PackerDiagnosticDTO` if diagnostics remain part of public responses. +6. Add explicit mapper classes in `prometeu-packer-v1` to convert internal models into API DTOs before responses cross the module boundary. +7. Update response messages to carry the new DTO types instead of leaking `v1` models through the API. +8. Update Studio consumers to read from the new DTO types while preserving the same user-facing behavior. + +## Acceptance Criteria + +- the API surface is explicitly partitioned between domain contracts, request/response messages, and read DTOs +- request/response messages remain immutable message records and are not renamed as generic DTOs +- public exceptions remain in the API +- internal `v1` models are no longer exposed as if they were public API models +- Studio depends only on API contracts and DTOs, not on `v1` model semantics +- conversion from `v1` internal models to public API DTOs happens through explicit mapper code +- no behavior regression is introduced in `initWorkspace`, `listAssets`, `getAssetDetails`, or `createAsset` + +## Validation + +- compile-time audit proving `prometeu-studio` and `prometeu-app` consume only API contracts +- packer regression tests for read and write flows +- Studio regression tests for asset list, asset details, and add asset flows +- targeted tests for mapper coverage between internal models and public API DTOs + +## Affected Artifacts + +- `prometeu-packer/prometeu-packer-api/src/main/java/p/packer/**` +- `prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/**` +- `prometeu-packer/prometeu-packer-v1/src/test/java/p/packer/**` +- `prometeu-studio/src/main/java/p/studio/**` +- `prometeu-studio/src/test/java/p/studio/**` + diff --git a/docs/packer/pull-requests/README.md b/docs/packer/pull-requests/README.md index 3ecf108f..f63e0be1 100644 --- a/docs/packer/pull-requests/README.md +++ b/docs/packer/pull-requests/README.md @@ -78,6 +78,7 @@ The current production track for the standalone `prometeu-packer` project is: 16. [`PR-16-write-lane-command-completion-and-used-write-services.md`](./PR-16-write-lane-command-completion-and-used-write-services.md) 17. [`PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md`](./PR-17-studio-runtime-adapter-and-assets-workspace-consumption.md) 18. [`PR-18-legacy-service-retirement-and-regression-hardening.md`](./PR-18-legacy-service-retirement-and-regression-hardening.md) +19. [`PR-19-api-surface-audit-model-separation-and-public-read-dtos.md`](./PR-19-api-surface-audit-model-separation-and-public-read-dtos.md) Current wave discipline from `PR-11` onward: @@ -88,4 +89,4 @@ Current wave discipline from `PR-11` onward: Recommended dependency chain: -`PR-01 -> PR-02 -> PR-03 -> PR-04 -> PR-05 -> PR-06 -> PR-07 -> PR-08 -> PR-09 -> PR-10 -> PR-11 -> PR-12 -> PR-13 -> PR-14 -> PR-15 -> PR-16 -> PR-17 -> PR-18` +`PR-01 -> PR-02 -> PR-03 -> PR-04 -> PR-05 -> PR-06 -> PR-07 -> PR-08 -> PR-09 -> PR-10 -> PR-11 -> PR-12 -> PR-13 -> PR-14 -> PR-15 -> PR-16 -> PR-17 -> PR-18 -> PR-19` diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetDetailsDTO.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetDetailsDTO.java similarity index 94% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetDetailsDTO.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetDetailsDTO.java index eb33e42a..8ffd28ec 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetDetailsDTO.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetDetailsDTO.java @@ -1,6 +1,6 @@ -package p.packer.assets; +package p.packer.dtos; -import p.packer.diagnostics.PackerDiagnosticDTO; +import p.packer.messages.assets.OutputCodecCatalog; import java.nio.file.Path; import java.util.List; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetIdentityDTO.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetIdentityDTO.java similarity index 96% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetIdentityDTO.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetIdentityDTO.java index 8a4affed..88fdc9b3 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetIdentityDTO.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetIdentityDTO.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.dtos; import java.nio.file.Path; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetSummaryDTO.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetSummaryDTO.java similarity index 83% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetSummaryDTO.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetSummaryDTO.java index da27a2b7..5201715b 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetSummaryDTO.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerAssetSummaryDTO.java @@ -1,4 +1,9 @@ -package p.packer.assets; +package p.packer.dtos; + +import p.packer.messages.AssetReference; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.assets.PackerAssetState; +import p.packer.messages.assets.PackerBuildParticipation; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldDTO.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerCodecConfigurationFieldDTO.java similarity index 89% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldDTO.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerCodecConfigurationFieldDTO.java index a24cfc18..a0d9541d 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldDTO.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerCodecConfigurationFieldDTO.java @@ -1,4 +1,6 @@ -package p.packer.assets; +package p.packer.dtos; + +import p.packer.messages.assets.PackerCodecConfigurationFieldType; import java.util.List; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticDTO.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerDiagnosticDTO.java similarity index 82% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticDTO.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerDiagnosticDTO.java index 7be102cb..26ac03a5 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticDTO.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/dtos/PackerDiagnosticDTO.java @@ -1,4 +1,7 @@ -package p.packer.diagnostics; +package p.packer.dtos; + +import p.packer.messages.diagnostics.PackerDiagnosticCategory; +import p.packer.messages.diagnostics.PackerDiagnosticSeverity; import java.nio.file.Path; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetReference.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/AssetReference.java similarity index 98% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetReference.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/AssetReference.java index 15d72685..29633039 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetReference.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/AssetReference.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetRequest.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetRequest.java index 659b50f6..534b473e 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetRequest.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetRequest.java @@ -1,9 +1,8 @@ package p.packer.messages; -import p.packer.PackerProjectContext; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.OutputCodecCatalog; -import p.packer.assets.OutputFormatCatalog; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.assets.OutputCodecCatalog; +import p.packer.messages.assets.OutputFormatCatalog; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetResult.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetResult.java index 60564e05..18942b0a 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetResult.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/CreateAssetResult.java @@ -1,8 +1,5 @@ package p.packer.messages; -import p.packer.PackerOperationStatus; -import p.packer.assets.AssetReference; - import java.nio.file.Path; public record CreateAssetResult( diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsRequest.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsRequest.java index c86ef1a7..c8336343 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsRequest.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsRequest.java @@ -1,8 +1,5 @@ package p.packer.messages; -import p.packer.PackerProjectContext; -import p.packer.assets.AssetReference; - import java.util.Objects; public record GetAssetDetailsRequest( diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsResult.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsResult.java index d2c1088a..9782af83 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsResult.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/GetAssetDetailsResult.java @@ -1,8 +1,7 @@ package p.packer.messages; -import p.packer.PackerOperationStatus; -import p.packer.assets.PackerAssetDetailsDTO; -import p.packer.diagnostics.PackerDiagnosticDTO; +import p.packer.dtos.PackerAssetDetailsDTO; +import p.packer.dtos.PackerDiagnosticDTO; import java.util.List; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceRequest.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceRequest.java index f4839fcc..7e4ee5db 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceRequest.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceRequest.java @@ -1,7 +1,5 @@ package p.packer.messages; -import p.packer.PackerProjectContext; - import java.util.Objects; public record InitWorkspaceRequest( diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceResult.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceResult.java index 0fe9e7c1..b58eb7e0 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceResult.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/InitWorkspaceResult.java @@ -1,7 +1,6 @@ package p.packer.messages; -import p.packer.PackerOperationStatus; -import p.packer.diagnostics.PackerDiagnosticDTO; +import p.packer.dtos.PackerDiagnosticDTO; import java.nio.file.Path; import java.util.List; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsRequest.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsRequest.java index c2a498b7..78dcc0a6 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsRequest.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsRequest.java @@ -1,7 +1,5 @@ package p.packer.messages; -import p.packer.PackerProjectContext; - import java.util.Objects; public record ListAssetsRequest( diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsResult.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsResult.java index a862bcc7..14e4b7d2 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsResult.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/ListAssetsResult.java @@ -1,8 +1,7 @@ package p.packer.messages; -import p.packer.PackerOperationStatus; -import p.packer.assets.PackerAssetSummaryDTO; -import p.packer.diagnostics.PackerDiagnosticDTO; +import p.packer.dtos.PackerAssetSummaryDTO; +import p.packer.dtos.PackerDiagnosticDTO; import java.util.List; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerOperationStatus.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerOperationStatus.java similarity index 73% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerOperationStatus.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerOperationStatus.java index 0c9ecfc0..eb577b02 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerOperationStatus.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerOperationStatus.java @@ -1,4 +1,4 @@ -package p.packer; +package p.packer.messages; public enum PackerOperationStatus { SUCCESS, diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerProjectContext.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerProjectContext.java similarity index 94% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerProjectContext.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerProjectContext.java index 18f7e5f6..d6dd4fcc 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/PackerProjectContext.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/PackerProjectContext.java @@ -1,4 +1,4 @@ -package p.packer; +package p.packer.messages; import java.nio.file.Path; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetFamilyCatalog.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/AssetFamilyCatalog.java similarity index 59% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetFamilyCatalog.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/AssetFamilyCatalog.java index 83f54547..c5e9624d 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/AssetFamilyCatalog.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/AssetFamilyCatalog.java @@ -1,32 +1,25 @@ -package p.packer.assets; +package p.packer.messages.assets; import java.util.Locale; public enum AssetFamilyCatalog { - IMAGE_BANK("image_bank", "Image Bank"), - PALETTE_BANK("palette_bank", "Palette Bank"), - SOUND_BANK("sound_bank", "Sound Bank"), - UNKNOWN("unknown", "Unknown"); + IMAGE_BANK("image_bank"), + PALETTE_BANK("palette_bank"), + SOUND_BANK("sound_bank"), + UNKNOWN("unknown"); private final String manifestType; - private final String displayName; - AssetFamilyCatalog(String manifestType, String displayName) { + AssetFamilyCatalog(String manifestType) { this.manifestType = manifestType; - this.displayName = displayName; } public String manifestType() { return manifestType; } - public String displayName() { - return displayName; - } - public boolean matchesQuery(String normalizedQuery) { - return manifestType.contains(normalizedQuery) - || displayName.toLowerCase(Locale.ROOT).contains(normalizedQuery); + return manifestType.contains(normalizedQuery); } public static AssetFamilyCatalog fromManifestType(String manifestType) { diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputCodecCatalog.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputCodecCatalog.java similarity index 96% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputCodecCatalog.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputCodecCatalog.java index b11e76b4..24bb9f6e 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputCodecCatalog.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputCodecCatalog.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages.assets; import java.util.Locale; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputFormatCatalog.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputFormatCatalog.java similarity index 98% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputFormatCatalog.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputFormatCatalog.java index e13b54ed..a8653630 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/OutputFormatCatalog.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/OutputFormatCatalog.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages.assets; import java.util.List; import java.util.Locale; diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetState.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerAssetState.java similarity index 66% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetState.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerAssetState.java index 7a7aa650..93453afa 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerAssetState.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerAssetState.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages.assets; public enum PackerAssetState { REGISTERED, diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerBuildParticipation.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerBuildParticipation.java similarity index 66% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerBuildParticipation.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerBuildParticipation.java index 854f1e51..76fc1d2c 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerBuildParticipation.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerBuildParticipation.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages.assets; public enum PackerBuildParticipation { INCLUDED, diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldType.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerCodecConfigurationFieldType.java similarity index 73% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldType.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerCodecConfigurationFieldType.java index 15a45746..76b1ddc7 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/assets/PackerCodecConfigurationFieldType.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/assets/PackerCodecConfigurationFieldType.java @@ -1,4 +1,4 @@ -package p.packer.assets; +package p.packer.messages.assets; public enum PackerCodecConfigurationFieldType { TEXT, diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticCategory.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticCategory.java similarity index 74% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticCategory.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticCategory.java index e852ec34..c74006c2 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticCategory.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticCategory.java @@ -1,4 +1,4 @@ -package p.packer.diagnostics; +package p.packer.messages.diagnostics; public enum PackerDiagnosticCategory { STRUCTURAL, diff --git a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticSeverity.java b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticSeverity.java similarity index 65% rename from prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticSeverity.java rename to prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticSeverity.java index 9aeee55d..2f98e1fb 100644 --- a/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/diagnostics/PackerDiagnosticSeverity.java +++ b/prometeu-packer/prometeu-packer-api/src/main/java/p/packer/messages/diagnostics/PackerDiagnosticSeverity.java @@ -1,4 +1,4 @@ -package p.packer.diagnostics; +package p.packer.messages.diagnostics; public enum PackerDiagnosticSeverity { INFO, diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDeclaration.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDeclaration.java index 826031d0..d39f5997 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDeclaration.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDeclaration.java @@ -1,7 +1,7 @@ package p.packer.models; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.OutputCodecCatalog; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.assets.OutputCodecCatalog; import java.util.List; import java.util.Map; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDetails.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDetails.java index 59f0db82..20e12e2b 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDetails.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetDetails.java @@ -1,6 +1,6 @@ package p.packer.models; -import p.packer.assets.OutputCodecCatalog; +import p.packer.messages.assets.OutputCodecCatalog; import java.nio.file.Path; import java.util.List; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetSummary.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetSummary.java index 2dc0b258..d2833157 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetSummary.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerAssetSummary.java @@ -1,9 +1,9 @@ package p.packer.models; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.AssetReference; -import p.packer.assets.PackerAssetState; -import p.packer.assets.PackerBuildParticipation; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.AssetReference; +import p.packer.messages.assets.PackerAssetState; +import p.packer.messages.assets.PackerBuildParticipation; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerCodecConfigurationField.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerCodecConfigurationField.java index f7467436..921120f0 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerCodecConfigurationField.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerCodecConfigurationField.java @@ -1,6 +1,6 @@ package p.packer.models; -import p.packer.assets.PackerCodecConfigurationFieldType; +import p.packer.messages.assets.PackerCodecConfigurationFieldType; import java.util.List; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerDiagnostic.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerDiagnostic.java index e575d638..d41310e3 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerDiagnostic.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/models/PackerDiagnostic.java @@ -1,7 +1,7 @@ package p.packer.models; -import p.packer.diagnostics.PackerDiagnosticCategory; -import p.packer.diagnostics.PackerDiagnosticSeverity; +import p.packer.messages.diagnostics.PackerDiagnosticCategory; +import p.packer.messages.diagnostics.PackerDiagnosticSeverity; import java.nio.file.Path; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerRegistryRepository.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerRegistryRepository.java index 4c80cac1..ce22ef8d 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerRegistryRepository.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerRegistryRepository.java @@ -3,7 +3,7 @@ package p.packer.services; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.ObjectMapper; -import p.packer.PackerProjectContext; +import p.packer.messages.PackerProjectContext; import p.packer.models.PackerRegistryEntry; import p.packer.models.PackerRegistryState; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerWorkspaceService.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerWorkspaceService.java index 8360c1bb..27946cd7 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerWorkspaceService.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/FileSystemPackerWorkspaceService.java @@ -1,15 +1,15 @@ package p.packer.services; import com.fasterxml.jackson.databind.ObjectMapper; -import p.packer.PackerOperationStatus; -import p.packer.PackerProjectContext; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.AssetReference; -import p.packer.assets.OutputFormatCatalog; -import p.packer.assets.PackerAssetState; -import p.packer.assets.PackerBuildParticipation; -import p.packer.diagnostics.PackerDiagnosticCategory; -import p.packer.diagnostics.PackerDiagnosticSeverity; +import p.packer.messages.PackerOperationStatus; +import p.packer.messages.PackerProjectContext; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.AssetReference; +import p.packer.messages.assets.OutputFormatCatalog; +import p.packer.messages.assets.PackerAssetState; +import p.packer.messages.assets.PackerBuildParticipation; +import p.packer.messages.diagnostics.PackerDiagnosticCategory; +import p.packer.messages.diagnostics.PackerDiagnosticSeverity; import p.packer.events.PackerEventKind; import p.packer.events.PackerEventSink; import p.packer.events.PackerProgress; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDeclarationParser.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDeclarationParser.java index 71979691..08ffd060 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDeclarationParser.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDeclarationParser.java @@ -2,10 +2,10 @@ package p.packer.services; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.OutputCodecCatalog; -import p.packer.diagnostics.PackerDiagnosticCategory; -import p.packer.diagnostics.PackerDiagnosticSeverity; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.assets.OutputCodecCatalog; +import p.packer.messages.diagnostics.PackerDiagnosticCategory; +import p.packer.messages.diagnostics.PackerDiagnosticSeverity; import p.packer.models.PackerAssetDeclaration; import p.packer.models.PackerAssetDeclarationParseResult; import p.packer.models.PackerDiagnostic; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDetailsService.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDetailsService.java index 9bc1cdea..6542e1a2 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDetailsService.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerAssetDetailsService.java @@ -1,14 +1,14 @@ package p.packer.services; -import p.packer.PackerOperationStatus; -import p.packer.PackerProjectContext; -import p.packer.assets.AssetFamilyCatalog; -import p.packer.assets.AssetReference; -import p.packer.assets.OutputCodecCatalog; -import p.packer.assets.PackerAssetState; -import p.packer.assets.PackerBuildParticipation; -import p.packer.diagnostics.PackerDiagnosticCategory; -import p.packer.diagnostics.PackerDiagnosticSeverity; +import p.packer.messages.PackerOperationStatus; +import p.packer.messages.PackerProjectContext; +import p.packer.messages.assets.AssetFamilyCatalog; +import p.packer.messages.AssetReference; +import p.packer.messages.assets.OutputCodecCatalog; +import p.packer.messages.assets.PackerAssetState; +import p.packer.messages.assets.PackerBuildParticipation; +import p.packer.messages.diagnostics.PackerDiagnosticCategory; +import p.packer.messages.diagnostics.PackerDiagnosticSeverity; import p.packer.messages.GetAssetDetailsRequest; import p.packer.messages.GetAssetDetailsResult; import p.packer.models.PackerAssetDeclaration; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerIdentityAllocator.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerIdentityAllocator.java index 91224489..65ba25dd 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerIdentityAllocator.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerIdentityAllocator.java @@ -1,6 +1,6 @@ package p.packer.services; -import p.packer.PackerProjectContext; +import p.packer.messages.PackerProjectContext; import p.packer.models.PackerRegistryEntry; import p.packer.models.PackerRegistryState; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOperationEventEmitter.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOperationEventEmitter.java index b1e17857..2505e069 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOperationEventEmitter.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOperationEventEmitter.java @@ -1,6 +1,6 @@ package p.packer.services; -import p.packer.PackerProjectContext; +import p.packer.messages.PackerProjectContext; import p.packer.events.PackerEvent; import p.packer.events.PackerEventKind; import p.packer.events.PackerEventSink; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOutputContractCatalog.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOutputContractCatalog.java index 762e487c..c4c45ba5 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOutputContractCatalog.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerOutputContractCatalog.java @@ -1,7 +1,7 @@ package p.packer.services; -import p.packer.assets.OutputCodecCatalog; -import p.packer.assets.OutputFormatCatalog; +import p.packer.messages.assets.OutputCodecCatalog; +import p.packer.messages.assets.OutputFormatCatalog; import p.packer.models.PackerCodecConfigurationField; import java.util.LinkedHashSet; import java.util.List; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectRuntime.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectRuntime.java index 9bc05c9c..ac237a5f 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectRuntime.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectRuntime.java @@ -1,6 +1,6 @@ package p.packer.services; -import p.packer.PackerProjectContext; +import p.packer.messages.PackerProjectContext; import p.packer.models.PackerRuntimeSnapshot; import java.util.Objects; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectWriteCoordinator.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectWriteCoordinator.java index fe053858..73d06d6a 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectWriteCoordinator.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerProjectWriteCoordinator.java @@ -1,6 +1,6 @@ package p.packer.services; -import p.packer.PackerProjectContext; +import p.packer.messages.PackerProjectContext; import java.io.Closeable; import java.nio.file.Path; diff --git a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerReadMessageMapper.java b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerReadMessageMapper.java index 7110d329..50271eaf 100644 --- a/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerReadMessageMapper.java +++ b/prometeu-packer/prometeu-packer-v1/src/main/java/p/packer/services/PackerReadMessageMapper.java @@ -1,10 +1,11 @@ package p.packer.services; -import p.packer.assets.PackerAssetDetailsDTO; -import p.packer.assets.PackerAssetIdentityDTO; -import p.packer.assets.PackerAssetSummaryDTO; -import p.packer.assets.PackerCodecConfigurationFieldDTO; -import p.packer.diagnostics.PackerDiagnosticDTO; +import p.packer.dtos.PackerAssetDetailsDTO; +import p.packer.dtos.PackerAssetIdentityDTO; +import p.packer.dtos.PackerAssetSummaryDTO; +import p.packer.dtos.PackerCodecConfigurationFieldDTO; +import p.packer.dtos.PackerDiagnosticDTO; +import p.packer.messages.assets.OutputCodecCatalog; import p.packer.models.PackerAssetDetails; import p.packer.models.PackerAssetIdentity; import p.packer.models.PackerAssetSummary; @@ -57,8 +58,8 @@ public final class PackerReadMessageMapper { identity.assetRoot()); } - private static Map