All Downloads are FREE. Search and download functionalities are using the official Maven repository.

uk.co.caeldev.builder4test.ListBuilder Maven / Gradle / Ivy

package uk.co.caeldev.builder4test;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;

public class ListBuilder {

    private final Creator creator;
    private final List> elements;

    private ListBuilder(Creator creator) {
        this.creator = creator;
        this.elements = new ArrayList<>();
    }

    protected static  ListBuilder listBuilder(Creator creator) {
        return new ListBuilder<>(creator);
    }

    public ElementBuilder element() {
        ElementBuilder elementBuilder = ElementBuilder.elementBuilder(this);
        this.elements.add(elementBuilder.getFields());
        return elementBuilder;
    }

    public List get() {
        return elements.stream()
                .filter(it -> it.size() != 0)
                .map(it -> EntityBuilder.entityBuilder(creator, it).get())
                .collect(Collectors.toList());
    }

    public RandomListBuilder size(int size) {
        return RandomListBuilder.randomListBuilder(size, creator);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy