// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.asset.builder.holder;

import java.util.Iterator;
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
import com.hypixel.hytale.server.npc.util.expression.ValueType;
import com.hypixel.hytale.server.npc.util.expression.ExecutionContext;
import java.util.function.BiConsumer;
import java.util.List;

public abstract class StringHolderBase extends ValueHolder
{
    protected List<BiConsumer<ExecutionContext, String>> relationValidators;
    
    protected StringHolderBase() {
        super(ValueType.STRING);
    }
    
    public void addRelationValidator(final BiConsumer<ExecutionContext, String> validator) {
        if (this.relationValidators == null) {
            this.relationValidators = new ObjectArrayList<BiConsumer<ExecutionContext, String>>();
        }
        this.relationValidators.add(validator);
    }
    
    protected void validateRelations(final ExecutionContext executionContext, final String value) {
        if (this.relationValidators == null) {
            return;
        }
        for (final BiConsumer<ExecutionContext, String> executionContextConsumer : this.relationValidators) {
            executionContextConsumer.accept(executionContext, value);
        }
    }
}
