view com.redhat.thermostat.tools.eclipse.plugin/src/com/redhat/thermostat/tools/eclipse/plugin/model/Environments.java @ 90:8f2dd0dbdb87

Externalize strings
author Omair Majid <omajid@redhat.com>
date Tue, 21 Jan 2014 19:51:04 -0500
parents b788a26c0d4d
children
line wrap: on
line source

package com.redhat.thermostat.tools.eclipse.plugin.model;

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

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;

@XmlAccessorType(XmlAccessType.NONE)
public class Environments extends ModelObject {

    private static final String CLI = "cli"; //$NON-NLS-1$
    private static final String SHELL = "shell"; //$NON-NLS-1$

    private List<String> environments;

    public Environments() {
        environments = new ArrayList<String>();
    }

    @XmlElement(name="environment")
    public List<String> getEnvironments() {
        return environments;
    }

    public boolean isCli() {
        return environments.contains(CLI);
    }

    public void setCli(boolean newValue) {
        addOrRemoveEnvironment(CLI, newValue);
    }

    public boolean isShell() {
        return environments.contains(SHELL);
    }

    public void setShell(boolean newValue) {
        addOrRemoveEnvironment(SHELL, newValue);
    }

    private void addOrRemoveEnvironment(String name, boolean add) {
        if (add) {
            if (environments.indexOf(name) == -1) {
                environments.add(name);
                firePropertyChange(name, false, true);
            }
        } else { // remove
            if (environments.indexOf(name) != -1) {
                environments.remove(name);
                firePropertyChange(name, true, false);
            }
        }
    }

    @Override
    public String toString() {
        return "Environments: " + environments.toString(); //$NON-NLS-1$
    }
}