]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms.ux/src/org/argeo/cms/ux/widgets/DefaultTabularPart.java
1 package org
.argeo
.cms
.ux
.widgets
;
3 import java
.util
.ArrayList
;
6 public class DefaultTabularPart
<INPUT
, T
> extends AbstractTabularPart
<INPUT
, T
> implements TabularPart
<INPUT
, T
> {
7 private List
<T
> content
;
10 public int getItemCount() {
11 return content
.size();
15 public T
getData(int row
) {
16 assert row
< getItemCount();
17 return content
.get(row
);
21 public void refresh() {
22 INPUT input
= getInput();
24 content
= new ArrayList
<>();
27 content
= asList(input
);
31 protected List
<T
> asList(INPUT input
) {
32 List
<T
> res
= new ArrayList
<>();
34 if (input
instanceof List
) {
35 content
= (List
<T
>) input
;
36 } else if (input
instanceof Iterable
) {
37 for (T item
: (Iterable
<T
>) input
)
40 throw new IllegalArgumentException(
41 "Unsupported class " + input
.getClass() + ", method should be overridden.");