# Agave Platform Science API
#
# Power your digital lab and reduce the time from theory to discovery using the Agave Science-as-a-Service API Platform. Agave provides hosted services that allow researchers to manage data, conduct experiments, and publish and share results from anywhere at any time.
#
# Agave Platform version: 2.2.14
#
# Generated by: https://github.com/swagger-api/swagger-codegen.git
#' PermissionStanza Class
#'
#' A minimal permission stanza defining read and write permissions
#'
#' @field read Is the resource readable
#' @field write Is the resource writable
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
PermissionStanza <- R6::R6Class(
'PermissionStanza',
public = list(
`read` = NULL,
`write` = NULL,
initialize = function(`read`, `write`){
if (!missing(`read`)) {
self$`read` <- `read`
}
if (!missing(`write`)) {
self$`write` <- `write`
}
},
asJSON = function() {
self$toJSON()
},
toJSON = function() {
PermissionStanzaObject <- list()
if (!is.null(self$`read`)) {
PermissionStanzaObject[['read']] <- self$`read`
}
else {
PermissionStanzaObject[['read']] <- NULL
}
if (!is.null(self$`write`)) {
PermissionStanzaObject[['write']] <- self$`write`
}
else {
PermissionStanzaObject[['write']] <- NULL
}
PermissionStanzaObject
},
fromJSON = function(PermissionStanzaObject) {
if (is.character(PermissionStanzaObject)) {
PermissionStanzaObject <- jsonlite::fromJSON(PermissionStanzaJson)
}
if ("result" %in% names(PermissionStanzaObject)) {
PermissionStanzaObject <- PermissionStanzaObject$result
}
if (!is.null(PermissionStanzaObject$`read`)) {
self$`read` <- PermissionStanzaObject$`read`
}
if (!is.null(PermissionStanzaObject$`write`)) {
self$`write` <- PermissionStanzaObject$`write`
}
},
toJSONString = function() {
sprintf(
'{
"read": %s,
"write": %s
}',
ifelse( is.null(self$`read`),"null",paste0(c('"', self$`read`, '"'))),
ifelse( is.null(self$`write`),"null",paste0(c('"', self$`write`, '"')))
)
},
fromJSONString = function(PermissionStanzaJson) {
PermissionStanzaObject <- jsonlite::fromJSON(PermissionStanzaJson)
self::fromJSON(PermissionStanzaObject)
}
)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.