package Ġnet . nem eros a . on track . model . pagination Ċ Ċ import Ġorg . apache . commons . lang 3 . Validate Ċ Ċ /** Ċ Ġ* ĠInformation Ġon Ġthe Ġcurrent Ġpage Ġin Ġa Ġ[ Pag inated List ]. Ċ Ġ* Ċ Ġ* Ġ@ property Ġtotal Size ĠTotal Ġknown Ġsize Ġof Ġthe Ġlist Ċ Ġ* Ġ@ property Ġcurrent Offset ĠOffset Ġof Ġthis Ġpage Ġin Ġthe Ġcollection Ċ Ġ* Ġ@ property Ġcurrent Size ĠSize Ġof Ġthis Ġpage Ċ Ġ* Ġ@ property Ġprevious Page ĠHandle Ġto Ġa Ġprevious Ġpage Ġif Ġany Ċ Ġ* Ġ@ property Ġnext Page ĠHandle Ġto Ġa Ġnext Ġpage Ġif Ġany Ċ Ġ*/ Ċ class ĠPage Info ( ĊĠĠĠĠĠĠĠ Ġval Ġtotal Size : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Offset : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Size : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġprevious Page : ĠPage Request ?, ĊĠĠĠĠĠĠĠ Ġval Ġnext Page : ĠPage Request ? Ċ ) Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠValidate . isTrue ( current Offset Ġ>= Ġ 0 , Ġ" Current Ġoffset Ġmust Ġbe Ġ>= Ġ 0 ") ĊĠĠĠĠĠĠĠ ĠValidate . isTrue ( current Size Ġ>= Ġ 0 , Ġ" Current Ġpage Ġsize Ġmust Ġbe Ġ>= Ġ 0 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠIndex Ġof Ġthe Ġpage Ġin Ġthe Ġtotal Ġnumber Ġof Ġpages Ġ( starting Ġfrom Ġ 0 ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġpage Index : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( current Size Ġ!= Ġ 0 ) Ġcurrent Offset Ġ/ Ġcurrent Size Ġelse Ġ 0 ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTotal Ġnumber Ġof Ġpages ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġpage Total : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( current Size Ġ!= Ġ 0 ) Ġ( total Size Ġ+ Ġcurrent Size Ġ- Ġ 1 ) Ġ/ Ġcurrent Size Ġelse Ġ 0 Ċ } ĊĊĊ