net.digitalid.utility.property.map.WritableVolatileMapPropertyBuilder Maven / Gradle / Ivy
The newest version!
package net.digitalid.utility.property.map;
import javax.annotation.Generated;
import javax.annotation.Nonnull;
import net.digitalid.utility.collections.map.FreezableMap;
import net.digitalid.utility.collections.map.ReadOnlyMap;
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.148+0200")
public class WritableVolatileMapPropertyBuilder, FREEZABLE_MAP extends FreezableMap> {
public static class InnerWritableVolatileMapPropertyBuilder, FREEZABLE_MAP extends FreezableMap> {
private InnerWritableVolatileMapPropertyBuilder() {
}
/* -------------------------------------------------- Value Validator -------------------------------------------------- */
private Predicate super VALUE> valueValidator = object -> true;
@Chainable
public @Nonnull InnerWritableVolatileMapPropertyBuilder withValueValidator(Predicate super VALUE> valueValidator) {
this.valueValidator = valueValidator;
return this;
}
/* -------------------------------------------------- Key Validator -------------------------------------------------- */
private Predicate super KEY> keyValidator = object -> true;
@Chainable
public @Nonnull InnerWritableVolatileMapPropertyBuilder withKeyValidator(Predicate super KEY> keyValidator) {
this.keyValidator = keyValidator;
return this;
}
/* -------------------------------------------------- Map -------------------------------------------------- */
private FREEZABLE_MAP map = null;
@Chainable
public @Nonnull InnerWritableVolatileMapPropertyBuilder withMap(FREEZABLE_MAP map) {
this.map = map;
return this;
}
/* -------------------------------------------------- Build -------------------------------------------------- */
public WritableVolatileMapProperty build() throws RuntimeException {
return new WritableVolatileMapPropertySubclass(valueValidator, keyValidator, map);
}
}
public static , FREEZABLE_MAP extends FreezableMap> InnerWritableVolatileMapPropertyBuilder withMap(FREEZABLE_MAP map) {
return new InnerWritableVolatileMapPropertyBuilder().withMap(map);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy