@Override public boolean hasDefaultValue() { Iterable<VALUETYPE> defaultValueValue = Callables.call(defaultValue); return defaultValueValue != null && defaultValueValue.iterator().hasNext(); }
@Override public UISelectMany<VALUETYPE> setDefaultValue(Iterable<VALUETYPE> value) { this.defaultValue = Callables.returning(value); return this; }
@Override public Iterable<VALUETYPE> getValue() { Iterable<VALUETYPE> iterableValue = (value == null) ? Callables.call(defaultValue) : value; return iterableValue == null ? Collections.<VALUETYPE>emptyList() : iterableValue; }
@Override public <T> T performLocked(LockMode mode, Callable<T> task) { return Callables.call(task); }