Paginator class- Android
The Paginator class provides functions for paging through the return results passed back by a REST endpoint call, such as those returned by the NowTableService class.
You must first call the NowTableService - paginator(from tableName: String, configuration: FetchConfiguration? = nil) or NowTableService - paginator<Model: Decodable>(from tableName: String, path: String = Constants.resultPath, coder: Coder = .default, configuration: FetchConfiguration? = nil) function to retrieve paginate return results.
Parent Topic:Mobile SDK - Android
Paginator - first()
Fetches the first page of the return results.
The method throws a PaginationError if it cannot fetch the first page.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| None |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
paginator.first()
}
Paginator - hasNext()
Checks whether there is a next page in the return results.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| Boolean | Flag that indicates whether there’s a next page in the return results.Possible values: - true: Next page available. - false: No next page available. |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
if (paginator.hasNext() && !paginator.isBusy()) {
paginator.next()
}
}
Paginator - hasPrevious()
Checks whether there in a previous page in the return results.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| Boolean | Flag that indicates whether there is a previous page in the return results.Possible values: - true: Previous page available. - false: No previous page available. |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
if (paginator.hasPrevious() && !paginator.isBusy()) {
paginator.previous()
}
}
Paginator - isBusy()
Checks whether the Paginator is busy fetching data.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| None | Flag that indicates whether the Paginator is busy fetching data.Possible values: - true: Busy fetching data. - false: Not busy. |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
if (paginator.hasNext() && !paginator.isBusy()) {
paginator.next()
}
}
Paginator - last()
Fetches the last page of the return results.
The method throws a PaginationError if it cannot fetch the last page.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| None |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
if !paginator.isBusy()) {
paginator.last()
}
}
Paginator - next()
Fetches the next page of the return results.
The method throws a PaginationError if there are no more pages to fetch.
| Name | Type | Description |
|---|---|---|
| None |
| Type | Description |
|---|---|
| None |
The following code example shows how to call this function.
suspend fun createAttachmentMetadataPaginator() {
val paginator = nowServiceManager.getNowAttachmentService()?.attachmentMetadataPaginator(null, 10)
?.observe(object : PaginatorCallBack<NowAttachmentMetadata> {
override fun onFailure(e: NowDataError) {
handleError(e)
}
override fun onSuccess(response: Response<List<NowAttachmentMetadata>>) {
handleResponse(response)
}
})
?: throw Exception("Response is null")
if (paginator.hasNext() && !paginator.isBusy()) {
paginator.next()
}
}
Paginator - observe(callback: PaginatorCallBack<T>)
Sets the Paginator object's callbacks. You must call this method before calling any other Paginator functions.
| Name | Type | Description | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| callback | PaginatorCallBack | Callbacks to call based on the success or failure of the Paginator creation.- Success: `abstract fun onSuccess(response: Response
The following code example shows how to call this function. Paginator - previous()Fetches the previous page of the return results. The method throws a
The following code example shows how to call this function. Paginator - reset()Resets the Paginator back to the first page but doesn’t return the first page of the return results.
The following code example shows how to call this function. |