R/MigrationMetaModel.r

# Dkube api server
#
# No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
#
# OpenAPI spec version: 2.2.1.11
# 
# Generated by: https://github.com/swagger-api/swagger-codegen.git


#' MigrationMetaModel Class
#'
#' @field data 
#' @field genmodels 
#' @field job 
#' @field vizierdb 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
MigrationMetaModel <- R6::R6Class(
  'MigrationMetaModel',
  public = list(
    `data` = NULL,
    `genmodels` = NULL,
    `job` = NULL,
    `vizierdb` = NULL,
    initialize = function(`data`, `genmodels`, `job`, `vizierdb`){
      if (!missing(`data`)) {
        stopifnot(is.list(`data`), length(`data`) != 0)
        lapply(`data`, function(x) stopifnot(R6::is.R6(x)))
        self$`data` <- `data`
      }
      if (!missing(`genmodels`)) {
        stopifnot(is.list(`genmodels`), length(`genmodels`) != 0)
        lapply(`genmodels`, function(x) stopifnot(R6::is.R6(x)))
        self$`genmodels` <- `genmodels`
      }
      if (!missing(`job`)) {
        stopifnot(R6::is.R6(`job`))
        self$`job` <- `job`
      }
      if (!missing(`vizierdb`)) {
        stopifnot(is.character(`vizierdb`), length(`vizierdb`) == 1)
        self$`vizierdb` <- `vizierdb`
      }
    },
    toJSON = function() {
      MigrationMetaModelObject <- list()
      if (!is.null(self$`data`)) {
        MigrationMetaModelObject[['data']] <- lapply(self$`data`, function(x) x$toJSON())
      }
      if (!is.null(self$`genmodels`)) {
        MigrationMetaModelObject[['genmodels']] <- lapply(self$`genmodels`, function(x) x$toJSON())
      }
      if (!is.null(self$`job`)) {
        MigrationMetaModelObject[['job']] <- self$`job`$toJSON()
      }
      if (!is.null(self$`vizierdb`)) {
        MigrationMetaModelObject[['vizierdb']] <- self$`vizierdb`
      }

      MigrationMetaModelObject
    },
    fromJSON = function(MigrationMetaModelJson) {
      MigrationMetaModelObject <- jsonlite::fromJSON(MigrationMetaModelJson)
      if (!is.null(MigrationMetaModelObject$`data`)) {
        self$`data` <- lapply(MigrationMetaModelObject$`data`, function(x) {
          dataObject <- DatumModel$new()
          dataObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE))
          dataObject
        })
      }
      if (!is.null(MigrationMetaModelObject$`genmodels`)) {
        self$`genmodels` <- lapply(MigrationMetaModelObject$`genmodels`, function(x) {
          genmodelsObject <- DatumModel$new()
          genmodelsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE))
          genmodelsObject
        })
      }
      if (!is.null(MigrationMetaModelObject$`job`)) {
        jobObject <- JobModel$new()
        jobObject$fromJSON(jsonlite::toJSON(MigrationMetaModelObject$job, auto_unbox = TRUE))
        self$`job` <- jobObject
      }
      if (!is.null(MigrationMetaModelObject$`vizierdb`)) {
        self$`vizierdb` <- MigrationMetaModelObject$`vizierdb`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "data": [%s],
           "genmodels": [%s],
           "job": %s,
           "vizierdb": %s
        }',
        lapply(self$`data`, function(x) paste(x$toJSON(), sep=",")),
        lapply(self$`genmodels`, function(x) paste(x$toJSON(), sep=",")),
        self$`job`$toJSON(),
        self$`vizierdb`
      )
    },
    fromJSONString = function(MigrationMetaModelJson) {
      MigrationMetaModelObject <- jsonlite::fromJSON(MigrationMetaModelJson)
      self$`data` <- lapply(MigrationMetaModelObject$`data`, function(x) DatumModel$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`genmodels` <- lapply(MigrationMetaModelObject$`genmodels`, function(x) DatumModel$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      JobModelObject <- JobModel$new()
      self$`job` <- JobModelObject$fromJSON(jsonlite::toJSON(MigrationMetaModelObject$job, auto_unbox = TRUE))
      self$`vizierdb` <- MigrationMetaModelObject$`vizierdb`
    }
  )
)
riteshkarvaloc/dkubeR documentation built on Feb. 25, 2021, 9:28 p.m.