You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Igor Vaynberg (JIRA)" <ji...@apache.org> on 2007/12/11 05:28:43 UTC

[jira] Resolved: (WICKET-1216) IDataProvider.size being called after DataView.setItemsPerPage

     [ https://issues.apache.org/jira/browse/WICKET-1216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Igor Vaynberg resolved WICKET-1216.
-----------------------------------

    Resolution: Invalid

not sure what version of wicket's code you are looking at, but this is already implemented and i believe has been implemented for quiet some time.

here is what the code looks like currently in trunk:

	public final void setCurrentPage(int page)
	{
		// If page == 0, short-circuit the range check. This saves a call to
		// getPageCount(), but more importantly avoids it being called until
		// your AbstractPageableView is actually rendered.
		if (page != 0 && (page < 0 || (page >= getPageCount() && getPageCount() > 0)))
		{
			throw new IndexOutOfBoundsException("argument [page]=" + page + ", must be 0<=page<" +
				getPageCount());
		}

so as you can see we already short circuit when page == 0

> IDataProvider.size being called after DataView.setItemsPerPage
> --------------------------------------------------------------
>
>                 Key: WICKET-1216
>                 URL: https://issues.apache.org/jira/browse/WICKET-1216
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.3.0-rc1
>            Reporter: Cristiano Kliemann
>            Assignee: Igor Vaynberg
>            Priority: Minor
>
> DataView.setItemsPerPage shouldn't call IDataProvider.size(). It happens because it indirectly resets the current page back to zero, calling AbstractPageableView.setCurrentPage, which checks the page count.
> Perhaps changing the "if" statement of AbstractPageableView.setCurrentPage from:
> if (page < 0 || (page >= getPageCount() && getPageCount() > 0))
> to:
> if (page < 0 || (page > 0 && page >= getPageCount() && getPageCount() > 0))
> I think it shouldn't check the page count if the page being set is 0.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.