package org.vaadin.viritin.it.issues;
import com.vaadin.ui.Component;
import java.util.List;
import org.vaadin.addonhelpers.AbstractTest;
import org.vaadin.viritin.LazyList;
import org.vaadin.viritin.v7.grid.MGrid;
import org.vaadin.viritin.layouts.MVerticalLayout;
import org.vaadin.viritin.testdomain.Person;
import org.vaadin.viritin.testdomain.Service;
/**
*
* @author Matti Tahvonen
*/
public class Issue219MGridGeneratedColumnWithLazyLoading extends AbstractTest {
@Override
public Component getTestComponent() {
MGrid<Person> g = new MGrid<>(Person.class).lazyLoadFrom(
new LazyList.PagingProvider<Person>() {
private static final long serialVersionUID = -9072230332041322210L;
@Override
public List<Person> findEntities(int firstRow) {
return Service.findAll(firstRow,
LazyList.DEFAULT_PAGE_SIZE);
}
},
new LazyList.CountProvider() {
private static final long serialVersionUID = -6915320247020779461L;
@Override
public int size() {
return (int) Service.count();
}
}
).withGeneratedColumn("name", p -> p.getFirstName() + " " + p.getLastName())
.withFullWidth();
MGrid<Person> g2 = new MGrid<>(Person.class).setRows(Service.findAll(0, 100))
.withGeneratedColumn("name", p -> p.getFirstName() + " " + p.getLastName())
.withFullWidth();
return new MVerticalLayout().expand(g, g2);
}
}