package com.netifera.platform.tools.options; import java.util.LinkedList; import java.util.List; public class EnumOption extends StringOption { public EnumOption(String name, String label, String description, String value) { super(name, label, description, value); // TODO Auto-generated constructor stub } private static final long serialVersionUID = 1646720157673179863L; List<String[]> options; public void addOption(String label, String value) { if(options == null) { options = new LinkedList<String[]>(); } String[] op = new String[2]; op[0] = label; op[1] = value; options.add(op); if(defaultValue == null) { defaultValue = value; setToDefault(); } } private boolean isValid(String value) { for(String[] op : options) { if(op[1].equals(value)) { return true; } } return false; } @Override public void setValue(String val) { if(isValid(val)) { value = val; } } @Override public void setDefault(String val) { if(isValid(val)) { defaultValue = val; } } public String[][] getOptions() { return options.toArray(new String[0][0]); } }