2026-03-24 13:42:44 +00:00

34 lines
1.2 KiB
Java

package p.packer.messages;
import p.packer.PackerProjectContext;
import p.packer.assets.AssetFamilyCatalog;
import p.packer.assets.OutputCodecCatalog;
import p.packer.assets.OutputFormatCatalog;
import java.util.Objects;
public record CreateAssetRequest(
PackerProjectContext project,
String assetRoot,
String assetName,
AssetFamilyCatalog assetFamily,
OutputFormatCatalog outputFormat,
OutputCodecCatalog outputCodec,
boolean preloadEnabled) {
public CreateAssetRequest {
Objects.requireNonNull(project, "project");
assetRoot = Objects.requireNonNull(assetRoot, "assetRoot").trim();
assetName = Objects.requireNonNull(assetName, "assetName").trim();
assetFamily = Objects.requireNonNullElse(assetFamily, AssetFamilyCatalog.UNKNOWN);
outputFormat = Objects.requireNonNullElse(outputFormat, OutputFormatCatalog.UNKNOWN);
outputCodec = Objects.requireNonNullElse(outputCodec, OutputCodecCatalog.UNKNOWN);
if (assetRoot.isBlank()) {
throw new IllegalArgumentException("assetRoot must not be blank");
}
if (assetName.isBlank()) {
throw new IllegalArgumentException("assetName must not be blank");
}
}
}