# 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
#' ModelCatalogItem Class
#'
#' @field name
#' @field description
#' @field generated
#' @field model
#' @field updateTimestamp
#' @field publisher
#' @field versions
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
ModelCatalogItem <- R6::R6Class(
'ModelCatalogItem',
public = list(
`name` = NULL,
`description` = NULL,
`generated` = NULL,
`model` = NULL,
`updateTimestamp` = NULL,
`publisher` = NULL,
`versions` = NULL,
initialize = function(`name`, `description`, `generated`, `model`, `updateTimestamp`, `publisher`, `versions`){
if (!missing(`name`)) {
stopifnot(is.character(`name`), length(`name`) == 1)
self$`name` <- `name`
}
if (!missing(`description`)) {
stopifnot(is.character(`description`), length(`description`) == 1)
self$`description` <- `description`
}
if (!missing(`generated`)) {
stopifnot(R6::is.R6(`generated`))
self$`generated` <- `generated`
}
if (!missing(`model`)) {
stopifnot(R6::is.R6(`model`))
self$`model` <- `model`
}
if (!missing(`updateTimestamp`)) {
stopifnot(R6::is.R6(`updateTimestamp`))
self$`updateTimestamp` <- `updateTimestamp`
}
if (!missing(`publisher`)) {
stopifnot(is.character(`publisher`), length(`publisher`) == 1)
self$`publisher` <- `publisher`
}
if (!missing(`versions`)) {
stopifnot(is.list(`versions`), length(`versions`) != 0)
lapply(`versions`, function(x) stopifnot(R6::is.R6(x)))
self$`versions` <- `versions`
}
},
toJSON = function() {
ModelCatalogItemObject <- list()
if (!is.null(self$`name`)) {
ModelCatalogItemObject[['name']] <- self$`name`
}
if (!is.null(self$`description`)) {
ModelCatalogItemObject[['description']] <- self$`description`
}
if (!is.null(self$`generated`)) {
ModelCatalogItemObject[['generated']] <- self$`generated`$toJSON()
}
if (!is.null(self$`model`)) {
ModelCatalogItemObject[['model']] <- self$`model`$toJSON()
}
if (!is.null(self$`updateTimestamp`)) {
ModelCatalogItemObject[['updateTimestamp']] <- self$`updateTimestamp`$toJSON()
}
if (!is.null(self$`publisher`)) {
ModelCatalogItemObject[['publisher']] <- self$`publisher`
}
if (!is.null(self$`versions`)) {
ModelCatalogItemObject[['versions']] <- lapply(self$`versions`, function(x) x$toJSON())
}
ModelCatalogItemObject
},
fromJSON = function(ModelCatalogItemJson) {
ModelCatalogItemObject <- jsonlite::fromJSON(ModelCatalogItemJson)
if (!is.null(ModelCatalogItemObject$`name`)) {
self$`name` <- ModelCatalogItemObject$`name`
}
if (!is.null(ModelCatalogItemObject$`description`)) {
self$`description` <- ModelCatalogItemObject$`description`
}
if (!is.null(ModelCatalogItemObject$`generated`)) {
generatedObject <- ModelCatalogItemGenerated$new()
generatedObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$generated, auto_unbox = TRUE))
self$`generated` <- generatedObject
}
if (!is.null(ModelCatalogItemObject$`model`)) {
modelObject <- ModelCatalogItemModel$new()
modelObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$model, auto_unbox = TRUE))
self$`model` <- modelObject
}
if (!is.null(ModelCatalogItemObject$`updateTimestamp`)) {
updateTimestampObject <- TimeStamps$new()
updateTimestampObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$updateTimestamp, auto_unbox = TRUE))
self$`updateTimestamp` <- updateTimestampObject
}
if (!is.null(ModelCatalogItemObject$`publisher`)) {
self$`publisher` <- ModelCatalogItemObject$`publisher`
}
if (!is.null(ModelCatalogItemObject$`versions`)) {
self$`versions` <- lapply(ModelCatalogItemObject$`versions`, function(x) {
versionsObject <- ModelCatalogItemVersion$new()
versionsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE))
versionsObject
})
}
},
toJSONString = function() {
sprintf(
'{
"name": %s,
"description": %s,
"generated": %s,
"model": %s,
"updateTimestamp": %s,
"publisher": %s,
"versions": [%s]
}',
self$`name`,
self$`description`,
self$`generated`$toJSON(),
self$`model`$toJSON(),
self$`updateTimestamp`$toJSON(),
self$`publisher`,
lapply(self$`versions`, function(x) paste(x$toJSON(), sep=","))
)
},
fromJSONString = function(ModelCatalogItemJson) {
ModelCatalogItemObject <- jsonlite::fromJSON(ModelCatalogItemJson)
self$`name` <- ModelCatalogItemObject$`name`
self$`description` <- ModelCatalogItemObject$`description`
ModelCatalogItemGeneratedObject <- ModelCatalogItemGenerated$new()
self$`generated` <- ModelCatalogItemGeneratedObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$generated, auto_unbox = TRUE))
ModelCatalogItemModelObject <- ModelCatalogItemModel$new()
self$`model` <- ModelCatalogItemModelObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$model, auto_unbox = TRUE))
TimeStampsObject <- TimeStamps$new()
self$`updateTimestamp` <- TimeStampsObject$fromJSON(jsonlite::toJSON(ModelCatalogItemObject$updateTimestamp, auto_unbox = TRUE))
self$`publisher` <- ModelCatalogItemObject$`publisher`
self$`versions` <- lapply(ModelCatalogItemObject$`versions`, function(x) ModelCatalogItemVersion$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
}
)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.