src/main/java/de/uapcore/lightpit/viewmodel/ProjectView.java

Sat, 17 Oct 2020 19:56:50 +0200

author
Mike Becker <universe@uap-core.de>
date
Sat, 17 Oct 2020 19:56:50 +0200
changeset 134
f47e82cd6077
parent 129
a09d5c59351a
child 167
3f30adba1c63
permissions
-rw-r--r--

completes feature: project components

package de.uapcore.lightpit.viewmodel;

import de.uapcore.lightpit.entities.Component;
import de.uapcore.lightpit.entities.Version;

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

public class ProjectView {

    public static final int SELECTED_PAGE_ISSUES = 0;
    public static final int SELECTED_PAGE_VERSIONS = 1;
    public static final int SELECTED_PAGE_COMPONENTS = 2;

    public static final Version ALL_VERSIONS = new Version(0);
    public static final Version NO_VERSION = new Version(-1);
    public static final Component ALL_COMPONENTS = new Component(0);
    public static final Component NO_COMPONENT = new Component(-1);

    static {
        ALL_VERSIONS.setNode("all-versions");
        NO_VERSION.setNode("no-version");
        ALL_COMPONENTS.setNode("all-components");
        NO_COMPONENT.setNode("no-component");
    }

    private final List<ProjectInfo> projectList = new ArrayList<>();
    private ProjectInfo projectInfo;
    private Version versionFilter;
    private Component componentFilter;

    private int selectedPage = SELECTED_PAGE_ISSUES;

    public List<ProjectInfo> getProjectList() {
        return projectList;
    }

    public ProjectInfo getProjectInfo() {
        return projectInfo;
    }

    public void setProjectInfo(ProjectInfo projectInfo) {
        this.projectInfo = projectInfo;
    }

    public int getSelectedPage() {
        return selectedPage;
    }

    public void setSelectedPage(int selectedPage) {
        this.selectedPage = selectedPage;
    }

    public Version getVersionFilter() {
        return versionFilter;
    }

    public void setVersionFilter(Version versionFilter) {
        this.versionFilter = versionFilter;
    }

    public Component getComponentFilter() {
        return componentFilter;
    }

    public void setComponentFilter(Component componentFilter) {
        this.componentFilter = componentFilter;
    }

    public boolean isProjectInfoPresent() {
        return projectInfo != null;
    }

    public boolean isVersionFilterValid() {
        return projectInfo != null && versionFilter != null;
    }

    public boolean isComponentFilterValid() {
        return projectInfo != null && componentFilter != null;
    }

    public boolean isEveryFilterValid() {
        return projectInfo != null && versionFilter != null && componentFilter != null;
    }
}

mercurial