data-generator/datagen-plugin/src/main/java/it/cavallium/datagen/plugin/VersionedType.java

21 lines
532 B
Java

package it.cavallium.datagen.plugin;
import java.util.Objects;
public record VersionedType(String type, ComputedVersion version) {
public VersionedType withVersion(ComputedVersion version) {
if (Objects.equals(version, this.version)) {
return this;
}
return new VersionedType(type, version);
}
public VersionedType withVersionIfChanged(ComputedVersion version, VersionChangeChecker versionChangeChecker) {
if (versionChangeChecker.checkChanged(this.type)) {
return withVersion(version);
}
return this;
}
}