package dp.kotul.bamboospecsapplication.configuration;

import java.util.ArrayList;
import java.util.List;

public class DeploymentConfiguration {
    private String name;
    private String description;

    private ReleaseNamingConfiguration releaseNaming;

    private List<DeploymentTaskConfiguration> tasks = new ArrayList<>();
    private List<Port> ports = new ArrayList<>();
    private List<Mount> mounts = new ArrayList<>();
    private List<EnvironmentVariable> environmentVariables = new ArrayList<>();

    private List<String> requirements;

    public DeploymentConfiguration(String name, String description, ReleaseNamingConfiguration releaseNaming, List<Port> ports, List<Mount> mounts,
                                   List<EnvironmentVariable> environmentVariables, List<DeploymentTaskConfiguration> tasks, List<String> requirements) {
        this.name = name;
        this.description = description;
        this.releaseNaming = releaseNaming;
        this.ports = ports;
        this.mounts = mounts;
        this.environmentVariables = environmentVariables;
        this.tasks = tasks;
        this.requirements = requirements;
    }

    public DeploymentConfiguration() {
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public ReleaseNamingConfiguration getReleaseNaming() {
        return releaseNaming;
    }

    public void setReleaseNaming(ReleaseNamingConfiguration releaseNaming) {
        this.releaseNaming = releaseNaming;
    }

    public List<Port> getPorts() {
        return ports;
    }

    public void setPorts(List<Port> ports) {
        this.ports = ports;
    }

    public List<Mount> getMounts() {
        return mounts;
    }

    public void setMounts(List<Mount> mounts) {
        this.mounts = mounts;
    }

    public List<EnvironmentVariable> getEnvironmentVariables() {
        return environmentVariables;
    }

    public void setEnvironmentVariables(List<EnvironmentVariable> environmentVariables) {
        this.environmentVariables = environmentVariables;
    }

    public List<DeploymentTaskConfiguration> getTasks() {
        return tasks;
    }

    public void setTasks(List<DeploymentTaskConfiguration> tasks) {
        this.tasks = tasks;
    }

    public List<String> getRequirements() {
        return requirements;
    }

    public void setRequirements(List<String> requirements) {
        this.requirements = requirements;
    }
}
