/** * creates a read only model from a list and make the model list unmodifiable on read access * @param <T> list type * @param source source model * @return resulting model */ public static <T> IModel<List<T>> unmodifiable(IModel<List<? extends T>> source) { return Models.on(source).apply(new UnmodifiableIfNotNull<T>()); }
/** * creates a model which returns an empty list of source list is null * @param source source * @return resulting model */ public static <T> IModel<List<T>> emptyIfNull(IModel<List<T>> source) { return Models.on(source).apply(new EmptyListIfNull<T>()); }
/** * creates a read only model from a list and make the model list unmodifiable on read access * @param <T> list type * @param source source model * @return resulting model */ public static <T> IModel<List<T>> unmodifiable(IModel<List<? extends T>> source) { return Models.on(source).apply(new UnmodifiableIfNotNull<T>()); }
/** * creates a model which returns an empty list of source list is null * @param source source * @return resulting model */ public static <T> IModel<List<T>> emptyIfNull(IModel<List<T>> source) { return Models.on(source).apply(new EmptyListIfNull<T>()); }
/** * creates a read only model from a list and make the model list unmodifiable on read access * @param <T> list type * @param source source model * @return resulting model */ public static <T> IModel<List<T>> unmodifiable(IModel<? extends List<? extends T>> source) { return Models.on(source).apply(new UnmodifiableIfNotNull<T>()); }
/** * creates a model which returns an empty list of source list is null * @param source source * @return resulting model */ public static <T> IModel<List<T>> emptyIfNull(IModel<List<T>> source) { return Models.on(source).apply(new EmptyListIfNull<T>()); }