R/SubmissionModel.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


#' SubmissionModel Class
#'
#' @field id Submission Id
#' @field project_id Project Id
#' @field group_name Groupname
#' @field user Username
#' @field eval_run Eval Run
#' @field eval_run_name Eval Run Name
#' @field metrics Metrics
#' @field artifacts_url Artifacts URL
#' @field timestamp Timestamp
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
SubmissionModel <- R6::R6Class(
  'SubmissionModel',
  public = list(
    `id` = NULL,
    `project_id` = NULL,
    `group_name` = NULL,
    `user` = NULL,
    `eval_run` = NULL,
    `eval_run_name` = NULL,
    `metrics` = NULL,
    `artifacts_url` = NULL,
    `timestamp` = NULL,
    initialize = function(`id`, `project_id`, `group_name`, `user`, `eval_run`, `eval_run_name`, `metrics`, `artifacts_url`, `timestamp`){
      if (!missing(`id`)) {
        stopifnot(is.character(`id`), length(`id`) == 1)
        self$`id` <- `id`
      }
      if (!missing(`project_id`)) {
        stopifnot(is.character(`project_id`), length(`project_id`) == 1)
        self$`project_id` <- `project_id`
      }
      if (!missing(`group_name`)) {
        stopifnot(is.character(`group_name`), length(`group_name`) == 1)
        self$`group_name` <- `group_name`
      }
      if (!missing(`user`)) {
        stopifnot(is.character(`user`), length(`user`) == 1)
        self$`user` <- `user`
      }
      if (!missing(`eval_run`)) {
        stopifnot(is.character(`eval_run`), length(`eval_run`) == 1)
        self$`eval_run` <- `eval_run`
      }
      if (!missing(`eval_run_name`)) {
        stopifnot(is.character(`eval_run_name`), length(`eval_run_name`) == 1)
        self$`eval_run_name` <- `eval_run_name`
      }
      if (!missing(`metrics`)) {
        stopifnot(R6::is.R6(`metrics`))
        self$`metrics` <- `metrics`
      }
      if (!missing(`artifacts_url`)) {
        stopifnot(is.character(`artifacts_url`), length(`artifacts_url`) == 1)
        self$`artifacts_url` <- `artifacts_url`
      }
      if (!missing(`timestamp`)) {
        stopifnot(is.character(`timestamp`), length(`timestamp`) == 1)
        self$`timestamp` <- `timestamp`
      }
    },
    toJSON = function() {
      SubmissionModelObject <- list()
      if (!is.null(self$`id`)) {
        SubmissionModelObject[['id']] <- self$`id`
      }
      if (!is.null(self$`project_id`)) {
        SubmissionModelObject[['project_id']] <- self$`project_id`
      }
      if (!is.null(self$`group_name`)) {
        SubmissionModelObject[['group_name']] <- self$`group_name`
      }
      if (!is.null(self$`user`)) {
        SubmissionModelObject[['user']] <- self$`user`
      }
      if (!is.null(self$`eval_run`)) {
        SubmissionModelObject[['eval_run']] <- self$`eval_run`
      }
      if (!is.null(self$`eval_run_name`)) {
        SubmissionModelObject[['eval_run_name']] <- self$`eval_run_name`
      }
      if (!is.null(self$`metrics`)) {
        SubmissionModelObject[['metrics']] <- self$`metrics`$toJSON()
      }
      if (!is.null(self$`artifacts_url`)) {
        SubmissionModelObject[['artifacts_url']] <- self$`artifacts_url`
      }
      if (!is.null(self$`timestamp`)) {
        SubmissionModelObject[['timestamp']] <- self$`timestamp`
      }

      SubmissionModelObject
    },
    fromJSON = function(SubmissionModelJson) {
      SubmissionModelObject <- jsonlite::fromJSON(SubmissionModelJson)
      if (!is.null(SubmissionModelObject$`id`)) {
        self$`id` <- SubmissionModelObject$`id`
      }
      if (!is.null(SubmissionModelObject$`project_id`)) {
        self$`project_id` <- SubmissionModelObject$`project_id`
      }
      if (!is.null(SubmissionModelObject$`group_name`)) {
        self$`group_name` <- SubmissionModelObject$`group_name`
      }
      if (!is.null(SubmissionModelObject$`user`)) {
        self$`user` <- SubmissionModelObject$`user`
      }
      if (!is.null(SubmissionModelObject$`eval_run`)) {
        self$`eval_run` <- SubmissionModelObject$`eval_run`
      }
      if (!is.null(SubmissionModelObject$`eval_run_name`)) {
        self$`eval_run_name` <- SubmissionModelObject$`eval_run_name`
      }
      if (!is.null(SubmissionModelObject$`metrics`)) {
        metricsObject <- TODO_OBJECT_MAPPING$new()
        metricsObject$fromJSON(jsonlite::toJSON(SubmissionModelObject$metrics, auto_unbox = TRUE))
        self$`metrics` <- metricsObject
      }
      if (!is.null(SubmissionModelObject$`artifacts_url`)) {
        self$`artifacts_url` <- SubmissionModelObject$`artifacts_url`
      }
      if (!is.null(SubmissionModelObject$`timestamp`)) {
        self$`timestamp` <- SubmissionModelObject$`timestamp`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "id": %s,
           "project_id": %s,
           "group_name": %s,
           "user": %s,
           "eval_run": %s,
           "eval_run_name": %s,
           "metrics": %s,
           "artifacts_url": %s,
           "timestamp": %s
        }',
        self$`id`,
        self$`project_id`,
        self$`group_name`,
        self$`user`,
        self$`eval_run`,
        self$`eval_run_name`,
        self$`metrics`$toJSON(),
        self$`artifacts_url`,
        self$`timestamp`
      )
    },
    fromJSONString = function(SubmissionModelJson) {
      SubmissionModelObject <- jsonlite::fromJSON(SubmissionModelJson)
      self$`id` <- SubmissionModelObject$`id`
      self$`project_id` <- SubmissionModelObject$`project_id`
      self$`group_name` <- SubmissionModelObject$`group_name`
      self$`user` <- SubmissionModelObject$`user`
      self$`eval_run` <- SubmissionModelObject$`eval_run`
      self$`eval_run_name` <- SubmissionModelObject$`eval_run_name`
      TODO_OBJECT_MAPPINGObject <- TODO_OBJECT_MAPPING$new()
      self$`metrics` <- TODO_OBJECT_MAPPINGObject$fromJSON(jsonlite::toJSON(SubmissionModelObject$metrics, auto_unbox = TRUE))
      self$`artifacts_url` <- SubmissionModelObject$`artifacts_url`
      self$`timestamp` <- SubmissionModelObject$`timestamp`
    }
  )
)
riteshkarvaloc/dkubeR documentation built on Feb. 25, 2021, 9:28 p.m.