33 lines
1.3 KiB
Java
33 lines
1.3 KiB
Java
package p.packer.building;
|
|
|
|
import java.nio.file.Path;
|
|
import java.util.List;
|
|
import java.util.Objects;
|
|
|
|
public record PackerPlannedAsset(
|
|
int assetId,
|
|
String assetUuid,
|
|
String assetName,
|
|
String assetFamily,
|
|
String relativeRoot,
|
|
String outputFormat,
|
|
String outputCodec,
|
|
boolean preload,
|
|
List<PackerPlannedInput> inputs,
|
|
Path assetRoot) {
|
|
|
|
public PackerPlannedAsset {
|
|
assetUuid = Objects.requireNonNull(assetUuid, "assetUuid").trim();
|
|
assetName = Objects.requireNonNull(assetName, "assetName").trim();
|
|
assetFamily = Objects.requireNonNull(assetFamily, "assetFamily").trim();
|
|
relativeRoot = Objects.requireNonNull(relativeRoot, "relativeRoot").trim();
|
|
outputFormat = Objects.requireNonNull(outputFormat, "outputFormat").trim();
|
|
outputCodec = Objects.requireNonNull(outputCodec, "outputCodec").trim();
|
|
inputs = List.copyOf(Objects.requireNonNull(inputs, "inputs"));
|
|
assetRoot = Objects.requireNonNull(assetRoot, "assetRoot").toAbsolutePath().normalize();
|
|
if (assetId <= 0 || assetUuid.isBlank() || assetName.isBlank() || relativeRoot.isBlank() || outputFormat.isBlank() || outputCodec.isBlank()) {
|
|
throw new IllegalArgumentException("planned asset fields must be valid");
|
|
}
|
|
}
|
|
}
|