# mzTab-M reference implementation and validation API.
#
# This is the mzTab-M reference implementation and validation API service.
#
# The version of the OpenAPI document: 2.0.0
# Contact: nils.hoffmann@cebitec.uni-bielefeld.de
# Generated by: https://openapi-generator.tech
#' @docType class
#' @title Comment
#' @description Comment Class
#' @format An \code{R6Class} generator object
#' @field prefix character
#'
#' @field msg character
#'
#' @field line_number integer [optional]
#'
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
Comment <- R6::R6Class(
'Comment',
public = list(
`prefix` = NULL,
`msg` = NULL,
`line_number` = NULL,
#' @description Create a Comment
#' @param prefix 'COM'.
#' @param msg Comment content.
#' @param line_number Line number in the mzTab-M file.
#' @param ... local optional variable arguments
#'
initialize = function(`prefix`, `msg`, `line_number`=NULL, ...){
local.optional.var <- list(...)
if (!missing(`prefix`)) {
stopifnot(is.character(`prefix`), length(`prefix`) == 1)
self$`prefix` <- `prefix`
}
if (!missing(`msg`)) {
stopifnot(is.character(`msg`), length(`msg`) == 1)
self$`msg` <- unbox(`msg`)
}
if (!is.null(`line_number`)) {
stopifnot(is.numeric(`line_number`), length(`line_number`) == 1)
self$`line_number` <- `line_number`
}
},
#' @description Serialize to list object suitable for jsonlite
toJSON = function() {
CommentObject <- list()
if (!is.null(self$`prefix`)) {
CommentObject[['prefix']] <-
rmzTabM::safe_unbox(self$`prefix`)
}
if (!is.null(self$`msg`)) {
CommentObject[['msg']] <-
rmzTabM::safe_unbox(self$`msg`)
}
if (!is.null(self$`line_number`)) {
CommentObject[['line_number']] <-
rmzTabM::safe_unbox(self$`line_number`)
}
CommentObject
},
#' @description Deserialize from jsonlite list object
#' @param CommentJson list object.
fromJSON = function(CommentJson) {
CommentObject <- jsonlite::fromJSON(CommentJson)
if (!is.null(CommentObject$`prefix`)) {
self$`prefix` <- CommentObject$`prefix`
}
if (!is.null(CommentObject$`msg`)) {
self$`msg` <- rmzTabM::safe_unbox(CommentObject$`msg`)
}
if (!is.null(CommentObject$`line_number`)) {
self$`line_number` <- CommentObject$`line_number`
}
},
#' @description Serialize to JSON string.
toJSONString = function() {
jsoncontent <- c(
if (!is.null(self$`prefix`)) {
sprintf(
'"prefix":
"%s"
',
rmzTabM::safe_unbox(self$`prefix`)
)},
if (!is.null(self$`msg`)) {
sprintf(
'"msg":
"%s"
',
rmzTabM::safe_unbox(self$`msg`)
)},
if (!is.null(self$`line_number`)) {
sprintf(
'"line_number":
%d
',
rmzTabM::safe_unbox(self$`line_number`)
)}
)
jsoncontent <- paste(jsoncontent, collapse = ",")
paste('{', jsoncontent, '}', sep = "")
},
#' @description Deserialize from JSON string
#' @param CommentJson JSON string
fromJSONString = function(CommentJson) {
CommentObject <- jsonlite::fromJSON(CommentJson)
self$`prefix` <- CommentObject$`prefix`
self$`msg` <- CommentObject$`msg`
self$`line_number` <- CommentObject$`line_number`
self
},
#' @description Serialize to data frame
toDataFrame = function() {
elements <- data.frame(PREFIX=character(), KEY=character(), VALUE=character())
if (!is.null(self$`msg`)) {
elements <-
rbind(elements,
list(
PREFIX = "COM",
KEY = self$`msg`,
VALUE = ""
),
stringsAsFactors = FALSE)
}
elements
},
#' @description Deserialize from comment data frame
#' @param CommentDataFrame Comment data frame
fromDataFrame = function(CommentDataFrame) {
stopifnot(nrow(CommentDataFrame)==1)
columnNames <- colnames(CommentDataFrame)
if (rlang::has_name(CommentDataFrame, "prefix")) {
self$`prefix` <- CommentDataFrame$`prefix`
}
if (rlang::has_name(CommentDataFrame, "msg")) {
self$`msg` <- CommentDataFrame$`msg`
}
if (rlang::has_name(CommentDataFrame, "line_number")) {
self$`line_number` <- as.numeric(CommentDataFrame$`line_number`)
}
self
}
)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.