Example usage for com.vaadin.data.provider DataProvider fromCallbacks

List of usage examples for com.vaadin.data.provider DataProvider fromCallbacks

Introduction

In this page you can find the example usage for com.vaadin.data.provider DataProvider fromCallbacks.

Prototype

public static <T> CallbackDataProvider<T, Void> fromCallbacks(FetchCallback<T, Void> fetchCallback,
        CountCallback<T, Void> countCallback) 

Source Link

Document

Creates a new data provider that uses callbacks for fetching and counting items from any backing store.

Usage

From source file:org.jpos.qi.eeuser.ConsumersHelper.java

License:Open Source License

@Override
public DataProvider getDataProvider() {
    Map<String, Boolean> orders = new HashMap<>();
    DataProvider dataProvider = DataProvider.fromCallbacks((CallbackDataProvider.FetchCallback) query -> {
        int offset = query.getOffset();
        int limit = query.getLimit();
        for (Object o : query.getSortOrders()) {
            QuerySortOrder order = (QuerySortOrder) o;
            orders.put(order.getSorted(), order.getDirection() == SortDirection.DESCENDING);
        }// w  ww.j av a2  s  .c o m
        User user = (User) query.getFilter().orElse(null);
        try {
            return getAll(offset, limit, orders, user);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return null;
        }
    }, (CallbackDataProvider.CountCallback) query -> {
        User user = (User) query.getFilter().orElse(null);
        try {
            return getItemCount(user);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return 0;
        }
    });
    return (ConfigurableFilterDataProvider<Consumer, Void, User>) dataProvider.withConfigurableFilter();
}

From source file:org.jpos.qi.minigl.AccountsHelper.java

License:Open Source License

public DataProvider getParentDataProvider() {
    Map<String, Boolean> orders = new HashMap<>();
    DataProvider dataProvider = DataProvider.fromCallbacks((CallbackDataProvider.FetchCallback) query -> {
        int offset = query.getOffset();
        int limit = query.getLimit();
        Iterator it = query.getSortOrders().iterator();
        while (it.hasNext()) {
            QuerySortOrder order = (QuerySortOrder) it.next();
            orders.put(order.getSorted(), order.getDirection() == SortDirection.DESCENDING);
        }//  ww  w.ja  v a2  s . com
        try {
            return getPossibleParents(offset, limit, orders);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return null;
        }
    }, (CallbackDataProvider.CountCallback<Account, Void>) query -> {
        try {
            return getPossibleParentsCount();
        } catch (Exception e) {
            getApp().getLog().error(e);
            return 0;
        }
    });
    return dataProvider;
}

From source file:org.jpos.qi.minigl.TransactionsHelper.java

License:Open Source License

@Override
public DataProvider getDataProvider() {
    Map<String, Boolean> orders = new HashMap<>();
    DataProvider dataProvider = DataProvider.fromCallbacks((CallbackDataProvider.FetchCallback) query -> {
        int offset = query.getOffset();
        int limit = query.getLimit();
        for (Object o : query.getSortOrders()) {
            QuerySortOrder order = (QuerySortOrder) o;
            orders.put(order.getSorted(), order.getDirection() == SortDirection.DESCENDING);
        }/*  ww  w.j  a v a2s. co  m*/
        DateRange dateRange = (DateRange) query.getFilter().orElse(null);
        try {
            return getAll(offset, limit, orders, defaultJournalId, dateRange);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return null;
        }
    }, (CallbackDataProvider.CountCallback) query -> {
        DateRange dateRange = (DateRange) query.getFilter().orElse(null);
        try {
            return getItemCount(defaultJournalId, dateRange);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return 0;
        }
    });
    return (ConfigurableFilterDataProvider<GLTransaction, Void, DateRange>) dataProvider
            .withConfigurableFilter();
}

From source file:org.jpos.qi.QIHelper.java

License:Open Source License

@SuppressWarnings("unchecked")
public DataProvider getDataProvider() {
    DataProvider dataProvider = DataProvider.fromCallbacks((CallbackDataProvider.FetchCallback) query -> {
        int offset = query.getOffset();
        int limit = query.getLimit();
        Iterator it = query.getSortOrders().iterator();
        Map<String, Boolean> orders = new LinkedHashMap<>();
        while (it.hasNext()) {
            QuerySortOrder order = (QuerySortOrder) it.next();
            orders.put(order.getSorted(), order.getDirection() == SortDirection.DESCENDING);
        }//from  w w  w.  j  a v  a  2 s .  c om
        try {
            return getAll(offset, limit, orders);
        } catch (Exception e) {
            getApp().getLog().error(e);
            return null;
        }
    }, (CallbackDataProvider.CountCallback) query -> {
        try {
            return getItemCount();
        } catch (Exception e) {
            getApp().getLog().error(e);
            return 0;
        }
    });
    return dataProvider;
}