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

io.quarkus.devtools.codestarts.CodestartProjectInput Maven / Gradle / Ivy

There is a newer version: 3.17.0.CR1
Show newest version
package io.quarkus.devtools.codestarts;

import static java.util.Objects.requireNonNull;

import java.util.Collection;
import java.util.Map;

import io.quarkus.devtools.codestarts.utils.NestedMaps;
import io.quarkus.devtools.messagewriter.MessageWriter;

public class CodestartProjectInput {
    private final Collection dependencies;
    private final Collection boms;
    private final Map data;
    private final CodestartsSelection selection;
    private final MessageWriter messageWriter;

    protected CodestartProjectInput(final CodestartProjectInputBuilder builder) {
        this.dependencies = requireNonNull(builder.dependencies, "dependencies is required");
        this.boms = requireNonNull(builder.boms, "boms is required");
        this.selection = requireNonNull(builder.selection, "selection is required");
        this.data = NestedMaps.unflatten(requireNonNull(builder.data, "data is required"));
        this.messageWriter = requireNonNull(builder.messageWriter, "messageWriter is required");
    }

    public static CodestartProjectInputBuilder builder() {
        return new CodestartProjectInputBuilder();
    }

    public MessageWriter log() {
        return messageWriter;
    }

    public CodestartsSelection getSelection() {
        return selection;
    }

    public Collection getDependencies() {
        return dependencies;
    }

    public Collection getBoms() {
        return boms;
    }

    public Map getData() {
        return data;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy