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

package com.hypixel.hytale.codec.validation.validator;

import com.hypixel.hytale.codec.schema.config.ArraySchema;
import com.hypixel.hytale.codec.schema.config.Schema;
import com.hypixel.hytale.codec.schema.SchemaContext;
import javax.annotation.Nonnull;
import com.hypixel.hytale.codec.validation.ValidationResults;
import javax.annotation.Nullable;
import com.hypixel.hytale.codec.validation.Validator;

public class NonEmptyDoubleArrayValidator implements Validator<double[]>
{
    public static final NonEmptyDoubleArrayValidator INSTANCE;
    
    private NonEmptyDoubleArrayValidator() {
    }
    
    @Override
    public void accept(@Nullable final double[] doubles, @Nonnull final ValidationResults results) {
        if (doubles == null || doubles.length == 0) {
            results.fail("Array can't be empty!");
        }
    }
    
    @Override
    public void updateSchema(final SchemaContext context, final Schema target) {
        final ArraySchema arr = (ArraySchema)target;
        arr.setMinItems(1);
    }
    
    static {
        INSTANCE = new NonEmptyDoubleArrayValidator();
    }
}
