/********** Public methods **********/ public List<DropdownOption> getOptions() { readLock(); try { return new LinkedList<DropdownOption>(options); } finally { readUnlock(); } }
protected boolean isEmpty() { readLock(); try { return options.isEmpty(); } finally { readUnlock(); } }
public Collection<DropdownOption> getSelected() { List<DropdownOption> list = new ArrayList<DropdownOption>(); readLock(); try { Iterator<DropdownOption> it = options.iterator(); while (it.hasNext()) { DropdownOption op = it.next(); if (op.isSelected()) list.add(op); } } finally { readUnlock(); } return list; }
@Deprecated public Collection<String> getSelectedLabels() { List<String> list = new ArrayList<String>(); readLock(); try { Iterator<DropdownOption> it = options.iterator(); while (it.hasNext()) { DropdownOption op = it.next(); if (op.isSelected()) list.add(op.getLabel()); } } finally { readUnlock(); } return list; }
public DropdownOption getOption(String value) { readLock(); try { for (DropdownOption opt : options) { if (opt.id().equals(value)) return opt; } } finally { readUnlock(); } return null; }
public Collection<String> getSelectedLabels(final OgemaLocale locale) { List<String> list = new ArrayList<String>(); readLock(); try { Iterator<DropdownOption> it = options.iterator(); while (it.hasNext()) { DropdownOption op = it.next(); if (op.isSelected()) list.add(op.label(locale)); } } finally { readUnlock(); } return list; }
public Collection<String> getSelectedValues() { List<String> list = new ArrayList<String>(); readLock(); try { Iterator<DropdownOption> it = options.iterator(); while (it.hasNext()) { DropdownOption op = it.next(); if (op.isSelected()) list.add(op.id()); } } finally { readUnlock(); } return list; }
/******* Inherited methods ******/ @Override public JSONObject retrieveGETData(OgemaHttpRequest req) { JSONObject result = new JSONObject(); JSONArray array = new JSONArray(); readLock(); try { for (DropdownOption o : options) { array.put(o.getJSON(req.getLocale())); } if (width != null) { result.put("width", width); } } finally { readUnlock(); } result.put("options", array); return result; }