added packer module
This commit is contained in:
parent
a8fa659762
commit
f0cc439b84
@ -0,0 +1,14 @@
|
||||
package p.packer.api.building;
|
||||
|
||||
import p.packer.api.PackerProjectContext;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public record PackerBuildRequest(
|
||||
PackerProjectContext project,
|
||||
boolean incremental) {
|
||||
|
||||
public PackerBuildRequest {
|
||||
Objects.requireNonNull(project, "project");
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,28 @@
|
||||
package p.packer.api.building;
|
||||
|
||||
import p.packer.api.PackerOperationStatus;
|
||||
import p.packer.api.diagnostics.PackerDiagnostic;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
public record PackerBuildResult(
|
||||
PackerOperationStatus status,
|
||||
String summary,
|
||||
Path assetsArchive,
|
||||
Map<String, Path> companionArtifacts,
|
||||
List<PackerDiagnostic> diagnostics) {
|
||||
|
||||
public PackerBuildResult {
|
||||
Objects.requireNonNull(status, "status");
|
||||
summary = Objects.requireNonNull(summary, "summary").trim();
|
||||
assetsArchive = Objects.requireNonNull(assetsArchive, "assetsArchive").toAbsolutePath().normalize();
|
||||
companionArtifacts = Map.copyOf(Objects.requireNonNull(companionArtifacts, "companionArtifacts"));
|
||||
diagnostics = List.copyOf(Objects.requireNonNull(diagnostics, "diagnostics"));
|
||||
if (summary.isBlank()) {
|
||||
throw new IllegalArgumentException("summary must not be blank");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
package p.packer.api.building;
|
||||
|
||||
import p.packer.api.PackerOperationClass;
|
||||
|
||||
public interface PackerBuildService {
|
||||
PackerOperationClass operationClass();
|
||||
|
||||
PackerBuildResult build(PackerBuildRequest request);
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user