Example usage for org.apache.wicket.markup.repeater.data IDataProvider iterator

List of usage examples for org.apache.wicket.markup.repeater.data IDataProvider iterator

Introduction

In this page you can find the example usage for org.apache.wicket.markup.repeater.data IDataProvider iterator.

Prototype

Iterator<? extends T> iterator(long first, long count);

Source Link

Document

Gets an iterator for the subset of total data

Usage

From source file:com.aplombee.QuickGridViewTest.java

License:Apache License

@Test(groups = { "wicketTests" })
public void buildCells_1() {
    final long itemsPerRequest = 2;
    List<Integer> data = data(10);
    IDataProvider<Integer> dataProvider = new ListDataProvider<Integer>(data);
    QuickGridView<Integer> gridView = new QuickGridView<Integer>("quickview", dataProvider) {
        @Override/*w  w  w. j  a  v  a 2  s  . co m*/
        protected void populate(CellItem<Integer> item) {
        }

        @Override
        protected void populateEmptyItem(CellItem<Integer> item) {
        }
    };
    gridView.setItemsPerRequest(itemsPerRequest);
    Iterator<? extends Integer> dataIterator = dataProvider.iterator(0, itemsPerRequest);
    Iterator<QuickGridView.CellItem<Integer>> itemsIterator = gridView.buildCells(0, dataIterator);
    Item<Integer> item1 = itemsIterator.next();
    Item<Integer> item2 = itemsIterator.next();
    Assert.assertEquals(item1.getIndex(), 0);
    Assert.assertEquals(item1.getModelObject().intValue(), 0);
    Assert.assertEquals(item2.getIndex(), 1);
    Assert.assertEquals(item2.getModelObject().intValue(), 1);
    Assert.assertTrue(Long.parseLong(item2.getId()) > Long.parseLong(item1.getId()));

}

From source file:com.aplombee.QuickGridViewTest.java

License:Apache License

@Test(groups = { "wicketTests" })
public void buildCells_2() {
    final long itemsPerRequest = 2;
    List<Integer> data = data(20);
    IDataProvider<Integer> dataProvider = new ListDataProvider<Integer>(data);
    QuickGridView<Integer> gridView = new QuickGridView<Integer>("quickview", dataProvider) {
        @Override//from   w w w. j ava2 s  .c o  m
        protected void populate(CellItem<Integer> item) {
        }

        @Override
        protected void populateEmptyItem(CellItem<Integer> item) {
        }
    };
    Iterator<? extends Integer> dataIterator = dataProvider.iterator(6, itemsPerRequest);
    Iterator<QuickGridView.CellItem<Integer>> itemsIterator = gridView.buildCells(10, dataIterator);
    Item<Integer> item1 = itemsIterator.next();
    Item<Integer> item2 = itemsIterator.next();
    Assert.assertEquals(item1.getIndex(), 10);
    Assert.assertEquals(item1.getModelObject().intValue(), 6);
    Assert.assertEquals(item2.getIndex(), 11);
    Assert.assertEquals(item2.getModelObject().intValue(), 7);
    Assert.assertTrue(Long.parseLong(item2.getId()) > Long.parseLong(item1.getId()));
}

From source file:com.aplombee.QuickViewTest.java

License:Apache License

/**
 * page=2 ,itemsperrequest=2 ,reuse=ReUse.ITEMSNAVIGATION
 *///from ww w.java 2  s . c  o m

@Test(groups = { "wicketTests" })
public void addItemsForPage_1() {
    int itemsPerRequest = 2;
    IDataProvider dataProvider = Mockito.mock(IDataProvider.class);
    Iterator data = mockIterator();
    Mockito.when(dataProvider.iterator(4, itemsPerRequest)).thenReturn(data);
    Mockito.when(data.hasNext()).thenReturn(true).thenReturn(true).thenReturn(false);
    IModel<Integer> model1 = new Model<Integer>(11);
    IModel<Integer> model2 = new Model<Integer>(55);

    final Iterator<IModel<Integer>> newModels = Mockito.mock(Iterator.class);
    Mockito.when(newModels.next()).thenReturn(model1);
    Mockito.when(newModels.next()).thenReturn(model2);
    Mockito.when(newModels.hasNext()).thenReturn(true).thenReturn(true).thenReturn(false);
    Item<Integer> item1 = new Item("1", 1, model1);
    Item<Integer> item2 = new Item("2", 2, model2);
    List<Item<Integer>> list = new ArrayList<Item<Integer>>();
    list.add(item1);
    list.add(item2);
    final Iterator newIterator = list.iterator();
    final IQuickReuseStrategy reuseStrategy = Mockito.mock(IQuickReuseStrategy.class);
    final IItemFactory factory = Mockito.mock(IItemFactory.class);
    Mockito.when(factory.newItem(1, model1)).thenReturn(item1);
    Mockito.when(factory.newItem(2, model2)).thenReturn(item2);
    Mockito.when(reuseStrategy.addItems(4, factory, newModels)).thenReturn(list.iterator());
    QuickView repeater = new QuickView("repeater", dataProvider, new ItemsNavigationStrategy(),
            itemsPerRequest) {

        public void populate(Item item) {
        }

        @Override
        public MarkupContainer add(Component... c) {
            return this;
        }

        @Override
        protected Iterator buildItems(long index, Iterator iterator) {
            return newIterator;
        }

        @Override
        protected Iterator newModels(long offset, long count) {
            return newModels;
        }

        @Override
        public IItemFactory factory() {
            return factory;
        }
    };
    repeater.setReuseStrategy(reuseStrategy);
    QuickView spy = Mockito.spy(repeater);
    List<Item<TestObj>> items = spy.addItemsForPage(2);
    Mockito.verify(reuseStrategy, Mockito.times(1)).addItems(4, factory, newModels);

    Assert.assertEquals(items.size(), list.size());
    Mockito.verify(spy, Mockito.times(1)).add(items.get(0));
    Mockito.verify(spy, Mockito.times(1)).add(items.get(1));

}

From source file:com.aplombee.QuickViewTest.java

License:Apache License

@Test(groups = { "wicketTests" })
public void buildItems_1() {
    List<Integer> data = data(10);
    IDataProvider<Integer> dataProvider = new ListDataProvider<Integer>(data);
    QuickView quickView = new QuickView("quickview", dataProvider) {
        @Override/*from w w  w. j  a  v  a 2  s .  c  om*/
        protected void populate(Item item) {
        }
    };
    Iterator<? extends Integer> dataIterator = dataProvider.iterator(0, 2);
    Iterator<Item<Integer>> itemsIterator = quickView.buildItems(0, dataIterator);
    Item<Integer> item1 = itemsIterator.next();
    Item<Integer> item2 = itemsIterator.next();
    Assert.assertEquals(item1.getIndex(), 0);
    Assert.assertEquals(item1.getModelObject().intValue(), 0);
    Assert.assertEquals(item2.getIndex(), 1);
    Assert.assertEquals(item2.getModelObject().intValue(), 1);
    Assert.assertTrue(Long.parseLong(item2.getId()) > Long.parseLong(item1.getId()));
}

From source file:com.aplombee.QuickViewTest.java

License:Apache License

@Test(groups = { "wicketTests" })
public void buildItems_2() {
    List<Integer> data = data(10);
    IDataProvider<Integer> dataProvider = new ListDataProvider<Integer>(data);
    QuickView<Integer> quickView = new QuickView<Integer>("quickview", dataProvider) {
        @Override/*from w  w  w .ja  va2  s . c  om*/
        protected void populate(Item item) {
        }
    };
    Iterator<? extends Integer> dataIterator = dataProvider.iterator(5, 2);
    Iterator<Item<Integer>> itemsIterator = quickView.buildItems(10, dataIterator);
    Item<Integer> item1 = itemsIterator.next();
    Item<Integer> item2 = itemsIterator.next();
    Assert.assertEquals(item1.getIndex(), 10);
    Assert.assertEquals(item1.getModelObject().intValue(), 5);
    Assert.assertEquals(item2.getIndex(), 11);
    Assert.assertEquals(item2.getModelObject().intValue(), 6);
    Assert.assertTrue(Long.parseLong(item2.getId()) > Long.parseLong(item1.getId()));
}

From source file:com.googlecode.wicket.kendo.ui.datatable.export.CSVDataExporter.java

License:Apache License

/**
 * Exports the data provided by the {@link IDataProvider} to the {@link OutputStream}.
 *
 * @param provider the {@link IDataProvider}
 * @param columns the list of {@link IColumn}
 * @param output the {@link OutputStream}
 * @param first the first row of datacount
 * @param count the number of elements to retrieve
 * @throws IOException/*from  w  w w.  j  a  v a 2s  . c o  m*/
 */
public <T> void exportData(IDataProvider<T> provider, List<IExportableColumn> columns, OutputStream output,
        long first, long count) throws IOException {
    PrintWriter writer = new PrintWriter(
            new OutputStreamWriter(output, Charset.forName(CSVDataExporter.characterSet)));

    try {
        // headers //
        if (this.isExportHeadersEnabled()) {
            this.exportHeaders(columns, writer);
        }

        // rows //
        Iterator<? extends T> iterator = provider.iterator(first, count);

        while (iterator.hasNext()) {
            this.exportRow(provider, columns, iterator.next(), writer);
        }
    } finally {
        writer.close();
    }
}

From source file:dk.teachus.frontend.components.list.ListPanel.java

License:Apache License

public ListPanel(String id, List<IColumn<T>> columns, List<T> data) {
    super(id);//from   w w  w .java 2 s . co m

    final IDataProvider<T> listDataProvider = new ListDataProvider<T>(data);

    ISortableDataProvider<T> dataProvider = new SortableDataProvider<T>() {
        private static final long serialVersionUID = 1L;

        public Iterator<? extends T> iterator(int first, int count) {
            return listDataProvider.iterator(first, count);
        }

        public IModel<T> model(T object) {
            return listDataProvider.model(object);
        }

        public int size() {
            return listDataProvider.size();
        }
    };

    createList(columns, dataProvider, null);
}

From source file:org.apache.jetspeed.portlets.wicket.component.editor.LocalizedDescriptionEditor.java

License:Apache License

@Override
public Iterator<IModel<DescriptionBean>> getItemModels() {
    IDataProvider<DescriptionBean> dataProvider = getDataProvider();
    List<IModel<DescriptionBean>> list = new ArrayList<IModel<DescriptionBean>>();
    JetspeedServiceLocator locator = null;
    PortletApplicationNodeBean paNodeBean = null;
    String name = null;//from w  w w. j a  va 2s.  c om

    Iterator<? extends DescriptionBean> it = dataProvider.iterator(0, dataProvider.size());

    while (it.hasNext()) {
        DescriptionBean descriptionBean = it.next();
        list.add(new DescriptionBeanModel(locator, paNodeBean, type, name, descriptionBean));
    }

    return list.iterator();
}

From source file:org.apache.jetspeed.portlets.wicket.component.editor.LocalizedDisplayNameEditor.java

License:Apache License

@Override
public Iterator<IModel<DisplayNameBean>> getItemModels() {
    IDataProvider<DisplayNameBean> dataProvider = getDataProvider();
    List<IModel<DisplayNameBean>> list = new ArrayList<IModel<DisplayNameBean>>();
    JetspeedServiceLocator locator = null;
    PortletApplicationNodeBean paNodeBean = null;
    String name = null;/*w  w w  .j a v a  2s. c  om*/

    Iterator<? extends DisplayNameBean> it = dataProvider.iterator(0, dataProvider.size());

    while (it.hasNext()) {
        DisplayNameBean displayNameBean = it.next();
        list.add(new DisplayNameBeanModel(locator, paNodeBean, displayNameBean));
    }

    return list.iterator();
}

From source file:org.cast.cwm.admin.CSVDownload.java

License:Open Source License

/**
 * Configure a download with a given data provider and set of columns
 *
 * @param columns      list of data columns
 * @param dataProvider data provider holding the query
 *//*w  w  w.j av a2 s  . co  m*/
public CSVDownload(final List<IDataColumn<E>> columns, final IDataProvider<E> dataProvider) {
    this(columns, new IteratorProvider<E>() {

        private static final long serialVersionUID = 1L;

        @Override
        public Iterator<? extends E> getIterator() {
            return dataProvider.iterator(0, Long.MAX_VALUE);
        }
    });
}