net.digitalid.utility.property.value.WritableVolatileValuePropertyBuilder Maven / Gradle / Ivy
The newest version!
package net.digitalid.utility.property.value;
import javax.annotation.Generated;
import javax.annotation.Nonnull;
import net.digitalid.utility.functional.interfaces.Predicate;
import net.digitalid.utility.validation.annotations.method.Chainable;
@SuppressWarnings("null")
@Generated(value = "net.digitalid.utility.processor.generator.JavaFileGenerator", date = "2017-03-26T11:54:50.079+0200")
public class WritableVolatileValuePropertyBuilder {
public static class InnerWritableVolatileValuePropertyBuilder {
private InnerWritableVolatileValuePropertyBuilder() {
}
/* -------------------------------------------------- Value -------------------------------------------------- */
private VALUE value = null;
@Chainable
public @Nonnull InnerWritableVolatileValuePropertyBuilder withValue(VALUE value) {
this.value = value;
return this;
}
/* -------------------------------------------------- Value Validator -------------------------------------------------- */
private Predicate super VALUE> valueValidator = object -> true;
@Chainable
public @Nonnull InnerWritableVolatileValuePropertyBuilder withValueValidator(Predicate super VALUE> valueValidator) {
this.valueValidator = valueValidator;
return this;
}
/* -------------------------------------------------- Build -------------------------------------------------- */
public WritableVolatileValueProperty build() {
return new WritableVolatileValuePropertySubclass(value, valueValidator);
}
}
public static InnerWritableVolatileValuePropertyBuilder withValue(VALUE value) {
return new InnerWritableVolatileValuePropertyBuilder().withValue(value);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy