R/Pagination.r

# sunagriAPI
#
# An instance of OpenSILEX WebService
#
# OpenAPI spec version: 3.3.0
# 
# Generated by: https://github.com/swagger-api/swagger-codegen.git


#' Pagination Class
#'
#' @field pageSize 
#' @field currentPage 
#' @field totalCount 
#' @field totalPages 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
Pagination <- R6::R6Class(
  'Pagination',
  public = list(
    `pageSize` = NULL,
    `currentPage` = NULL,
    `totalCount` = NULL,
    `totalPages` = NULL,
    initialize = function(`pageSize`, `currentPage`, `totalCount`, `totalPages`){
      if (!missing(`pageSize`)) {
        stopifnot(is.numeric(`pageSize`), length(`pageSize`) == 1)
        self$`pageSize` <- `pageSize`
      }
      if (!missing(`currentPage`)) {
        stopifnot(is.numeric(`currentPage`), length(`currentPage`) == 1)
        self$`currentPage` <- `currentPage`
      }
      if (!missing(`totalCount`)) {
        stopifnot(is.numeric(`totalCount`), length(`totalCount`) == 1)
        self$`totalCount` <- `totalCount`
      }
      if (!missing(`totalPages`)) {
        stopifnot(is.numeric(`totalPages`), length(`totalPages`) == 1)
        self$`totalPages` <- `totalPages`
      }
    },
    toJSON = function() {
      PaginationObject <- list()
      if (!is.null(self$`pageSize`)) {
        PaginationObject[['pageSize']] <- self$`pageSize`
      }
      if (!is.null(self$`currentPage`)) {
        PaginationObject[['currentPage']] <- self$`currentPage`
      }
      if (!is.null(self$`totalCount`)) {
        PaginationObject[['totalCount']] <- self$`totalCount`
      }
      if (!is.null(self$`totalPages`)) {
        PaginationObject[['totalPages']] <- self$`totalPages`
      }

      PaginationObject
    },
    fromJSON = function(PaginationJson) {
      PaginationObject <- jsonlite::fromJSON(PaginationJson)
      if (!is.null(PaginationObject$`pageSize`)) {
        self$`pageSize` <- PaginationObject$`pageSize`
      }
      if (!is.null(PaginationObject$`currentPage`)) {
        self$`currentPage` <- PaginationObject$`currentPage`
      }
      if (!is.null(PaginationObject$`totalCount`)) {
        self$`totalCount` <- PaginationObject$`totalCount`
      }
      if (!is.null(PaginationObject$`totalPages`)) {
        self$`totalPages` <- PaginationObject$`totalPages`
      }
    },
    fromJSONObject = function(PaginationObject) {
      if (!is.null(PaginationObject$`pageSize`)) {
        self$`pageSize` <- PaginationObject$`pageSize`
      }
      if (!is.null(PaginationObject$`currentPage`)) {
        self$`currentPage` <- PaginationObject$`currentPage`
      }
      if (!is.null(PaginationObject$`totalCount`)) {
        self$`totalCount` <- PaginationObject$`totalCount`
      }
      if (!is.null(PaginationObject$`totalPages`)) {
        self$`totalPages` <- PaginationObject$`totalPages`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "pageSize": %s,
           "currentPage": %s,
           "totalCount": %s,
           "totalPages": %s
        }',
        jsonlite::toJSON(self$`pageSize`,auto_unbox=TRUE, null = "null"),
        jsonlite::toJSON(self$`currentPage`,auto_unbox=TRUE, null = "null"),
        jsonlite::toJSON(self$`totalCount`,auto_unbox=TRUE, null = "null"),
        jsonlite::toJSON(self$`totalPages`,auto_unbox=TRUE, null = "null")
      )
    },
    fromJSONString = function(PaginationJson) {
      PaginationObject <- jsonlite::fromJSON(PaginationJson)
      self$`pageSize` <- PaginationObject$`pageSize`
      self$`currentPage` <- PaginationObject$`currentPage`
      self$`totalCount` <- PaginationObject$`totalCount`
      self$`totalPages` <- PaginationObject$`totalPages`
    }
  )
)
OpenSILEX/phis-ws-client-r-tool documentation built on Sept. 10, 2020, 8:42 a.m.