R/GermplasmDTO.r

# OpenSilex API
#
# No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
#
# OpenAPI spec version: 1.0.0-rc+2
# 
# Generated by: https://github.com/swagger-api/swagger-codegen.git


#' GermplasmDTO Class
#'
#' @field accessionNumber 
#' @field acquisitionDate 
#' @field additionalInfo 
#' @field biologicalStatusOfAccessionCode 
#' @field biologicalStatusOfAccessionDescription 
#' @field breedingMethodDbId 
#' @field collection 
#' @field commonCropName 
#' @field countryOfOriginCode 
#' @field defaultDisplayName 
#' @field documentationURL 
#' @field donors 
#' @field externalReferences 
#' @field genus 
#' @field germplasmDbId 
#' @field germplasmName 
#' @field germplasmOrigin 
#' @field germplasmPreprocessing 
#' @field instituteCode 
#' @field instituteName 
#' @field pedigree 
#' @field seedSource 
#' @field seedSourceDescription 
#' @field species 
#' @field speciesAuthority 
#' @field storageTypes 
#' @field subtaxa 
#' @field subtaxaAuthority 
#' @field synonyms 
#' @field taxonIds 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
GermplasmDTO <- R6::R6Class(
  'GermplasmDTO',
  public = list(
    `accessionNumber` = NULL,
    `acquisitionDate` = NULL,
    `additionalInfo` = NULL,
    `biologicalStatusOfAccessionCode` = NULL,
    `biologicalStatusOfAccessionDescription` = NULL,
    `breedingMethodDbId` = NULL,
    `collection` = NULL,
    `commonCropName` = NULL,
    `countryOfOriginCode` = NULL,
    `defaultDisplayName` = NULL,
    `documentationURL` = NULL,
    `donors` = NULL,
    `externalReferences` = NULL,
    `genus` = NULL,
    `germplasmDbId` = NULL,
    `germplasmName` = NULL,
    `germplasmOrigin` = NULL,
    `germplasmPreprocessing` = NULL,
    `instituteCode` = NULL,
    `instituteName` = NULL,
    `pedigree` = NULL,
    `seedSource` = NULL,
    `seedSourceDescription` = NULL,
    `species` = NULL,
    `speciesAuthority` = NULL,
    `storageTypes` = NULL,
    `subtaxa` = NULL,
    `subtaxaAuthority` = NULL,
    `synonyms` = NULL,
    `taxonIds` = NULL,
    initialize = function(`accessionNumber`, `acquisitionDate`, `additionalInfo`, `biologicalStatusOfAccessionCode`, `biologicalStatusOfAccessionDescription`, `breedingMethodDbId`, `collection`, `commonCropName`, `countryOfOriginCode`, `defaultDisplayName`, `documentationURL`, `donors`, `externalReferences`, `genus`, `germplasmDbId`, `germplasmName`, `germplasmOrigin`, `germplasmPreprocessing`, `instituteCode`, `instituteName`, `pedigree`, `seedSource`, `seedSourceDescription`, `species`, `speciesAuthority`, `storageTypes`, `subtaxa`, `subtaxaAuthority`, `synonyms`, `taxonIds`){
      if (!missing(`accessionNumber`)) {
        stopifnot(is.character(`accessionNumber`), length(`accessionNumber`) == 1)
        self$`accessionNumber` <- `accessionNumber`
      }
      if (!missing(`acquisitionDate`)) {
        stopifnot(is.character(`acquisitionDate`), length(`acquisitionDate`) == 1)
        self$`acquisitionDate` <- `acquisitionDate`
      }
      if (!missing(`additionalInfo`)) {
        stopifnot(is.character(`additionalInfo`), length(`additionalInfo`) == 1)
        self$`additionalInfo` <- `additionalInfo`
      }
      if (!missing(`biologicalStatusOfAccessionCode`)) {
        stopifnot(is.character(`biologicalStatusOfAccessionCode`), length(`biologicalStatusOfAccessionCode`) == 1)
        self$`biologicalStatusOfAccessionCode` <- `biologicalStatusOfAccessionCode`
      }
      if (!missing(`biologicalStatusOfAccessionDescription`)) {
        stopifnot(is.character(`biologicalStatusOfAccessionDescription`), length(`biologicalStatusOfAccessionDescription`) == 1)
        self$`biologicalStatusOfAccessionDescription` <- `biologicalStatusOfAccessionDescription`
      }
      if (!missing(`breedingMethodDbId`)) {
        stopifnot(is.character(`breedingMethodDbId`), length(`breedingMethodDbId`) == 1)
        self$`breedingMethodDbId` <- `breedingMethodDbId`
      }
      if (!missing(`collection`)) {
        stopifnot(is.character(`collection`), length(`collection`) == 1)
        self$`collection` <- `collection`
      }
      if (!missing(`commonCropName`)) {
        stopifnot(is.character(`commonCropName`), length(`commonCropName`) == 1)
        self$`commonCropName` <- `commonCropName`
      }
      if (!missing(`countryOfOriginCode`)) {
        stopifnot(is.character(`countryOfOriginCode`), length(`countryOfOriginCode`) == 1)
        self$`countryOfOriginCode` <- `countryOfOriginCode`
      }
      if (!missing(`defaultDisplayName`)) {
        stopifnot(is.character(`defaultDisplayName`), length(`defaultDisplayName`) == 1)
        self$`defaultDisplayName` <- `defaultDisplayName`
      }
      if (!missing(`documentationURL`)) {
        stopifnot(is.character(`documentationURL`), length(`documentationURL`) == 1)
        self$`documentationURL` <- `documentationURL`
      }
      if (!missing(`donors`)) {
        stopifnot(is.list(`donors`), length(`donors`) != 0)
        lapply(`donors`, function(x) stopifnot(R6::is.R6(x)))
        self$`donors` <- `donors`
      }
      if (!missing(`externalReferences`)) {
        stopifnot(is.list(`externalReferences`), length(`externalReferences`) != 0)
        lapply(`externalReferences`, function(x) stopifnot(R6::is.R6(x)))
        self$`externalReferences` <- `externalReferences`
      }
      if (!missing(`genus`)) {
        stopifnot(is.character(`genus`), length(`genus`) == 1)
        self$`genus` <- `genus`
      }
      if (!missing(`germplasmDbId`)) {
        stopifnot(is.character(`germplasmDbId`), length(`germplasmDbId`) == 1)
        self$`germplasmDbId` <- `germplasmDbId`
      }
      if (!missing(`germplasmName`)) {
        stopifnot(is.character(`germplasmName`), length(`germplasmName`) == 1)
        self$`germplasmName` <- `germplasmName`
      }
      if (!missing(`germplasmOrigin`)) {
        stopifnot(is.list(`germplasmOrigin`), length(`germplasmOrigin`) != 0)
        lapply(`germplasmOrigin`, function(x) stopifnot(R6::is.R6(x)))
        self$`germplasmOrigin` <- `germplasmOrigin`
      }
      if (!missing(`germplasmPreprocessing`)) {
        stopifnot(is.character(`germplasmPreprocessing`), length(`germplasmPreprocessing`) == 1)
        self$`germplasmPreprocessing` <- `germplasmPreprocessing`
      }
      if (!missing(`instituteCode`)) {
        stopifnot(is.character(`instituteCode`), length(`instituteCode`) == 1)
        self$`instituteCode` <- `instituteCode`
      }
      if (!missing(`instituteName`)) {
        stopifnot(is.character(`instituteName`), length(`instituteName`) == 1)
        self$`instituteName` <- `instituteName`
      }
      if (!missing(`pedigree`)) {
        stopifnot(is.character(`pedigree`), length(`pedigree`) == 1)
        self$`pedigree` <- `pedigree`
      }
      if (!missing(`seedSource`)) {
        stopifnot(is.character(`seedSource`), length(`seedSource`) == 1)
        self$`seedSource` <- `seedSource`
      }
      if (!missing(`seedSourceDescription`)) {
        stopifnot(is.character(`seedSourceDescription`), length(`seedSourceDescription`) == 1)
        self$`seedSourceDescription` <- `seedSourceDescription`
      }
      if (!missing(`species`)) {
        stopifnot(is.character(`species`), length(`species`) == 1)
        self$`species` <- `species`
      }
      if (!missing(`speciesAuthority`)) {
        stopifnot(is.character(`speciesAuthority`), length(`speciesAuthority`) == 1)
        self$`speciesAuthority` <- `speciesAuthority`
      }
      if (!missing(`storageTypes`)) {
        stopifnot(is.list(`storageTypes`), length(`storageTypes`) != 0)
        lapply(`storageTypes`, function(x) stopifnot(R6::is.R6(x)))
        self$`storageTypes` <- `storageTypes`
      }
      if (!missing(`subtaxa`)) {
        stopifnot(is.character(`subtaxa`), length(`subtaxa`) == 1)
        self$`subtaxa` <- `subtaxa`
      }
      if (!missing(`subtaxaAuthority`)) {
        stopifnot(is.character(`subtaxaAuthority`), length(`subtaxaAuthority`) == 1)
        self$`subtaxaAuthority` <- `subtaxaAuthority`
      }
      if (!missing(`synonyms`)) {
        stopifnot(is.list(`synonyms`), length(`synonyms`) != 0)
        lapply(`synonyms`, function(x) stopifnot(R6::is.R6(x)))
        self$`synonyms` <- `synonyms`
      }
      if (!missing(`taxonIds`)) {
        stopifnot(is.list(`taxonIds`), length(`taxonIds`) != 0)
        lapply(`taxonIds`, function(x) stopifnot(R6::is.R6(x)))
        self$`taxonIds` <- `taxonIds`
      }
    },
    toJSON = function() {
      GermplasmDTOObject <- list()
      if (!is.null(self$`accessionNumber`)) {
        GermplasmDTOObject[['accessionNumber']] <- self$`accessionNumber`
      }
      if (!is.null(self$`acquisitionDate`)) {
        GermplasmDTOObject[['acquisitionDate']] <- self$`acquisitionDate`
      }
      if (!is.null(self$`additionalInfo`)) {
        GermplasmDTOObject[['additionalInfo']] <- self$`additionalInfo`
      }
      if (!is.null(self$`biologicalStatusOfAccessionCode`)) {
        GermplasmDTOObject[['biologicalStatusOfAccessionCode']] <- self$`biologicalStatusOfAccessionCode`
      }
      if (!is.null(self$`biologicalStatusOfAccessionDescription`)) {
        GermplasmDTOObject[['biologicalStatusOfAccessionDescription']] <- self$`biologicalStatusOfAccessionDescription`
      }
      if (!is.null(self$`breedingMethodDbId`)) {
        GermplasmDTOObject[['breedingMethodDbId']] <- self$`breedingMethodDbId`
      }
      if (!is.null(self$`collection`)) {
        GermplasmDTOObject[['collection']] <- self$`collection`
      }
      if (!is.null(self$`commonCropName`)) {
        GermplasmDTOObject[['commonCropName']] <- self$`commonCropName`
      }
      if (!is.null(self$`countryOfOriginCode`)) {
        GermplasmDTOObject[['countryOfOriginCode']] <- self$`countryOfOriginCode`
      }
      if (!is.null(self$`defaultDisplayName`)) {
        GermplasmDTOObject[['defaultDisplayName']] <- self$`defaultDisplayName`
      }
      if (!is.null(self$`documentationURL`)) {
        GermplasmDTOObject[['documentationURL']] <- self$`documentationURL`
      }
      if (!is.null(self$`donors`)) {
        GermplasmDTOObject[['donors']] <- lapply(self$`donors`, function(x) x$toJSON())
      }
      if (!is.null(self$`externalReferences`)) {
        GermplasmDTOObject[['externalReferences']] <- lapply(self$`externalReferences`, function(x) x$toJSON())
      }
      if (!is.null(self$`genus`)) {
        GermplasmDTOObject[['genus']] <- self$`genus`
      }
      if (!is.null(self$`germplasmDbId`)) {
        GermplasmDTOObject[['germplasmDbId']] <- self$`germplasmDbId`
      }
      if (!is.null(self$`germplasmName`)) {
        GermplasmDTOObject[['germplasmName']] <- self$`germplasmName`
      }
      if (!is.null(self$`germplasmOrigin`)) {
        GermplasmDTOObject[['germplasmOrigin']] <- lapply(self$`germplasmOrigin`, function(x) x$toJSON())
      }
      if (!is.null(self$`germplasmPreprocessing`)) {
        GermplasmDTOObject[['germplasmPreprocessing']] <- self$`germplasmPreprocessing`
      }
      if (!is.null(self$`instituteCode`)) {
        GermplasmDTOObject[['instituteCode']] <- self$`instituteCode`
      }
      if (!is.null(self$`instituteName`)) {
        GermplasmDTOObject[['instituteName']] <- self$`instituteName`
      }
      if (!is.null(self$`pedigree`)) {
        GermplasmDTOObject[['pedigree']] <- self$`pedigree`
      }
      if (!is.null(self$`seedSource`)) {
        GermplasmDTOObject[['seedSource']] <- self$`seedSource`
      }
      if (!is.null(self$`seedSourceDescription`)) {
        GermplasmDTOObject[['seedSourceDescription']] <- self$`seedSourceDescription`
      }
      if (!is.null(self$`species`)) {
        GermplasmDTOObject[['species']] <- self$`species`
      }
      if (!is.null(self$`speciesAuthority`)) {
        GermplasmDTOObject[['speciesAuthority']] <- self$`speciesAuthority`
      }
      if (!is.null(self$`storageTypes`)) {
        GermplasmDTOObject[['storageTypes']] <- lapply(self$`storageTypes`, function(x) x$toJSON())
      }
      if (!is.null(self$`subtaxa`)) {
        GermplasmDTOObject[['subtaxa']] <- self$`subtaxa`
      }
      if (!is.null(self$`subtaxaAuthority`)) {
        GermplasmDTOObject[['subtaxaAuthority']] <- self$`subtaxaAuthority`
      }
      if (!is.null(self$`synonyms`)) {
        GermplasmDTOObject[['synonyms']] <- lapply(self$`synonyms`, function(x) x$toJSON())
      }
      if (!is.null(self$`taxonIds`)) {
        GermplasmDTOObject[['taxonIds']] <- lapply(self$`taxonIds`, function(x) x$toJSON())
      }

      GermplasmDTOObject
    },
    fromJSON = function(GermplasmDTOJson) {
      GermplasmDTOObject <- jsonlite::fromJSON(GermplasmDTOJson)
      if (!is.null(GermplasmDTOObject$`accessionNumber`)) {
        self$`accessionNumber` <- GermplasmDTOObject$`accessionNumber`
      }
      if (!is.null(GermplasmDTOObject$`acquisitionDate`)) {
        self$`acquisitionDate` <- GermplasmDTOObject$`acquisitionDate`
      }
      if (!is.null(GermplasmDTOObject$`additionalInfo`)) {
        self$`additionalInfo` <- GermplasmDTOObject$`additionalInfo`
      }
      if (!is.null(GermplasmDTOObject$`biologicalStatusOfAccessionCode`)) {
        self$`biologicalStatusOfAccessionCode` <- GermplasmDTOObject$`biologicalStatusOfAccessionCode`
      }
      if (!is.null(GermplasmDTOObject$`biologicalStatusOfAccessionDescription`)) {
        self$`biologicalStatusOfAccessionDescription` <- GermplasmDTOObject$`biologicalStatusOfAccessionDescription`
      }
      if (!is.null(GermplasmDTOObject$`breedingMethodDbId`)) {
        self$`breedingMethodDbId` <- GermplasmDTOObject$`breedingMethodDbId`
      }
      if (!is.null(GermplasmDTOObject$`collection`)) {
        self$`collection` <- GermplasmDTOObject$`collection`
      }
      if (!is.null(GermplasmDTOObject$`commonCropName`)) {
        self$`commonCropName` <- GermplasmDTOObject$`commonCropName`
      }
      if (!is.null(GermplasmDTOObject$`countryOfOriginCode`)) {
        self$`countryOfOriginCode` <- GermplasmDTOObject$`countryOfOriginCode`
      }
      if (!is.null(GermplasmDTOObject$`defaultDisplayName`)) {
        self$`defaultDisplayName` <- GermplasmDTOObject$`defaultDisplayName`
      }
      if (!is.null(GermplasmDTOObject$`documentationURL`)) {
        self$`documentationURL` <- GermplasmDTOObject$`documentationURL`
      }
      if (!is.null(GermplasmDTOObject$`donors`)) {
        self$`donors` <- lapply(GermplasmDTOObject$`donors`, function(x) {
          donorsObject <- ObjectDTO$new()
          donorsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          donorsObject
        })
      }
      if (!is.null(GermplasmDTOObject$`externalReferences`)) {
        self$`externalReferences` <- lapply(GermplasmDTOObject$`externalReferences`, function(x) {
          externalReferencesObject <- ObjectDTO$new()
          externalReferencesObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          externalReferencesObject
        })
      }
      if (!is.null(GermplasmDTOObject$`genus`)) {
        self$`genus` <- GermplasmDTOObject$`genus`
      }
      if (!is.null(GermplasmDTOObject$`germplasmDbId`)) {
        self$`germplasmDbId` <- GermplasmDTOObject$`germplasmDbId`
      }
      if (!is.null(GermplasmDTOObject$`germplasmName`)) {
        self$`germplasmName` <- GermplasmDTOObject$`germplasmName`
      }
      if (!is.null(GermplasmDTOObject$`germplasmOrigin`)) {
        self$`germplasmOrigin` <- lapply(GermplasmDTOObject$`germplasmOrigin`, function(x) {
          germplasmOriginObject <- ObjectDTO$new()
          germplasmOriginObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          germplasmOriginObject
        })
      }
      if (!is.null(GermplasmDTOObject$`germplasmPreprocessing`)) {
        self$`germplasmPreprocessing` <- GermplasmDTOObject$`germplasmPreprocessing`
      }
      if (!is.null(GermplasmDTOObject$`instituteCode`)) {
        self$`instituteCode` <- GermplasmDTOObject$`instituteCode`
      }
      if (!is.null(GermplasmDTOObject$`instituteName`)) {
        self$`instituteName` <- GermplasmDTOObject$`instituteName`
      }
      if (!is.null(GermplasmDTOObject$`pedigree`)) {
        self$`pedigree` <- GermplasmDTOObject$`pedigree`
      }
      if (!is.null(GermplasmDTOObject$`seedSource`)) {
        self$`seedSource` <- GermplasmDTOObject$`seedSource`
      }
      if (!is.null(GermplasmDTOObject$`seedSourceDescription`)) {
        self$`seedSourceDescription` <- GermplasmDTOObject$`seedSourceDescription`
      }
      if (!is.null(GermplasmDTOObject$`species`)) {
        self$`species` <- GermplasmDTOObject$`species`
      }
      if (!is.null(GermplasmDTOObject$`speciesAuthority`)) {
        self$`speciesAuthority` <- GermplasmDTOObject$`speciesAuthority`
      }
      if (!is.null(GermplasmDTOObject$`storageTypes`)) {
        self$`storageTypes` <- lapply(GermplasmDTOObject$`storageTypes`, function(x) {
          storageTypesObject <- ObjectDTO$new()
          storageTypesObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          storageTypesObject
        })
      }
      if (!is.null(GermplasmDTOObject$`subtaxa`)) {
        self$`subtaxa` <- GermplasmDTOObject$`subtaxa`
      }
      if (!is.null(GermplasmDTOObject$`subtaxaAuthority`)) {
        self$`subtaxaAuthority` <- GermplasmDTOObject$`subtaxaAuthority`
      }
      if (!is.null(GermplasmDTOObject$`synonyms`)) {
        self$`synonyms` <- lapply(GermplasmDTOObject$`synonyms`, function(x) {
          synonymsObject <- ObjectDTO$new()
          synonymsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          synonymsObject
        })
      }
      if (!is.null(GermplasmDTOObject$`taxonIds`)) {
        self$`taxonIds` <- lapply(GermplasmDTOObject$`taxonIds`, function(x) {
          taxonIdsObject <- ObjectDTO$new()
          taxonIdsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          taxonIdsObject
        })
      }
    },
    fromJSONObject = function(GermplasmDTOObject) {
      if (!is.null(GermplasmDTOObject$`accessionNumber`)) {
        self$`accessionNumber` <- GermplasmDTOObject$`accessionNumber`
      }
      if (!is.null(GermplasmDTOObject$`acquisitionDate`)) {
        self$`acquisitionDate` <- GermplasmDTOObject$`acquisitionDate`
      }
      if (!is.null(GermplasmDTOObject$`additionalInfo`)) {
        self$`additionalInfo` <- GermplasmDTOObject$`additionalInfo`
      }
      if (!is.null(GermplasmDTOObject$`biologicalStatusOfAccessionCode`)) {
        self$`biologicalStatusOfAccessionCode` <- GermplasmDTOObject$`biologicalStatusOfAccessionCode`
      }
      if (!is.null(GermplasmDTOObject$`biologicalStatusOfAccessionDescription`)) {
        self$`biologicalStatusOfAccessionDescription` <- GermplasmDTOObject$`biologicalStatusOfAccessionDescription`
      }
      if (!is.null(GermplasmDTOObject$`breedingMethodDbId`)) {
        self$`breedingMethodDbId` <- GermplasmDTOObject$`breedingMethodDbId`
      }
      if (!is.null(GermplasmDTOObject$`collection`)) {
        self$`collection` <- GermplasmDTOObject$`collection`
      }
      if (!is.null(GermplasmDTOObject$`commonCropName`)) {
        self$`commonCropName` <- GermplasmDTOObject$`commonCropName`
      }
      if (!is.null(GermplasmDTOObject$`countryOfOriginCode`)) {
        self$`countryOfOriginCode` <- GermplasmDTOObject$`countryOfOriginCode`
      }
      if (!is.null(GermplasmDTOObject$`defaultDisplayName`)) {
        self$`defaultDisplayName` <- GermplasmDTOObject$`defaultDisplayName`
      }
      if (!is.null(GermplasmDTOObject$`documentationURL`)) {
        self$`documentationURL` <- GermplasmDTOObject$`documentationURL`
      }
      if (!is.null(GermplasmDTOObject$`donors`)) {
        self$`donors` <- lapply(GermplasmDTOObject$`donors`, function(x) {
          donorsObject <- ObjectDTO$new()
          donorsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          donorsObject
        })
      }
      if (!is.null(GermplasmDTOObject$`externalReferences`)) {
        self$`externalReferences` <- lapply(GermplasmDTOObject$`externalReferences`, function(x) {
          externalReferencesObject <- ObjectDTO$new()
          externalReferencesObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          externalReferencesObject
        })
      }
      if (!is.null(GermplasmDTOObject$`genus`)) {
        self$`genus` <- GermplasmDTOObject$`genus`
      }
      if (!is.null(GermplasmDTOObject$`germplasmDbId`)) {
        self$`germplasmDbId` <- GermplasmDTOObject$`germplasmDbId`
      }
      if (!is.null(GermplasmDTOObject$`germplasmName`)) {
        self$`germplasmName` <- GermplasmDTOObject$`germplasmName`
      }
      if (!is.null(GermplasmDTOObject$`germplasmOrigin`)) {
        self$`germplasmOrigin` <- lapply(GermplasmDTOObject$`germplasmOrigin`, function(x) {
          germplasmOriginObject <- ObjectDTO$new()
          germplasmOriginObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          germplasmOriginObject
        })
      }
      if (!is.null(GermplasmDTOObject$`germplasmPreprocessing`)) {
        self$`germplasmPreprocessing` <- GermplasmDTOObject$`germplasmPreprocessing`
      }
      if (!is.null(GermplasmDTOObject$`instituteCode`)) {
        self$`instituteCode` <- GermplasmDTOObject$`instituteCode`
      }
      if (!is.null(GermplasmDTOObject$`instituteName`)) {
        self$`instituteName` <- GermplasmDTOObject$`instituteName`
      }
      if (!is.null(GermplasmDTOObject$`pedigree`)) {
        self$`pedigree` <- GermplasmDTOObject$`pedigree`
      }
      if (!is.null(GermplasmDTOObject$`seedSource`)) {
        self$`seedSource` <- GermplasmDTOObject$`seedSource`
      }
      if (!is.null(GermplasmDTOObject$`seedSourceDescription`)) {
        self$`seedSourceDescription` <- GermplasmDTOObject$`seedSourceDescription`
      }
      if (!is.null(GermplasmDTOObject$`species`)) {
        self$`species` <- GermplasmDTOObject$`species`
      }
      if (!is.null(GermplasmDTOObject$`speciesAuthority`)) {
        self$`speciesAuthority` <- GermplasmDTOObject$`speciesAuthority`
      }
      if (!is.null(GermplasmDTOObject$`storageTypes`)) {
        self$`storageTypes` <- lapply(GermplasmDTOObject$`storageTypes`, function(x) {
          storageTypesObject <- ObjectDTO$new()
          storageTypesObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          storageTypesObject
        })
      }
      if (!is.null(GermplasmDTOObject$`subtaxa`)) {
        self$`subtaxa` <- GermplasmDTOObject$`subtaxa`
      }
      if (!is.null(GermplasmDTOObject$`subtaxaAuthority`)) {
        self$`subtaxaAuthority` <- GermplasmDTOObject$`subtaxaAuthority`
      }
      if (!is.null(GermplasmDTOObject$`synonyms`)) {
        self$`synonyms` <- lapply(GermplasmDTOObject$`synonyms`, function(x) {
          synonymsObject <- ObjectDTO$new()
          synonymsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          synonymsObject
        })
      }
      if (!is.null(GermplasmDTOObject$`taxonIds`)) {
        self$`taxonIds` <- lapply(GermplasmDTOObject$`taxonIds`, function(x) {
          taxonIdsObject <- ObjectDTO$new()
          taxonIdsObject$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE, null = "null"))
          taxonIdsObject
        })
      }
    },
    toJSONString = function() {
      donorsList = paste(lapply(self$`donors`, function(x) x$toJSONString()),collapse = ",")
      externalReferencesList = paste(lapply(self$`externalReferences`, function(x) x$toJSONString()),collapse = ",")
      germplasmOriginList = paste(lapply(self$`germplasmOrigin`, function(x) x$toJSONString()),collapse = ",")
      storageTypesList = paste(lapply(self$`storageTypes`, function(x) x$toJSONString()),collapse = ",")
      synonymsList = paste(lapply(self$`synonyms`, function(x) x$toJSONString()),collapse = ",")
      taxonIdsList = paste(lapply(self$`taxonIds`, function(x) x$toJSONString()),collapse = ",")
       sprintf(
        '{
           "accessionNumber": %s,
           "acquisitionDate": %s,
           "additionalInfo": %s,
           "biologicalStatusOfAccessionCode": %s,
           "biologicalStatusOfAccessionDescription": %s,
           "breedingMethodDbId": %s,
           "collection": %s,
           "commonCropName": %s,
           "countryOfOriginCode": %s,
           "defaultDisplayName": %s,
           "documentationURL": %s,
           "donors": [%s],
           "externalReferences": [%s],
           "genus": %s,
           "germplasmDbId": %s,
           "germplasmName": %s,
           "germplasmOrigin": [%s],
           "germplasmPreprocessing": %s,
           "instituteCode": %s,
           "instituteName": %s,
           "pedigree": %s,
           "seedSource": %s,
           "seedSourceDescription": %s,
           "species": %s,
           "speciesAuthority": %s,
           "storageTypes": [%s],
           "subtaxa": %s,
           "subtaxaAuthority": %s,
           "synonyms": [%s],
           "taxonIds": [%s]
        }',
        ifelse(is.null(self$`accessionNumber`), "null",jsonlite::toJSON(self$`accessionNumber`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`acquisitionDate`), "null",jsonlite::toJSON(self$`acquisitionDate`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`additionalInfo`), "null",jsonlite::toJSON(self$`additionalInfo`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`biologicalStatusOfAccessionCode`), "null",jsonlite::toJSON(self$`biologicalStatusOfAccessionCode`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`biologicalStatusOfAccessionDescription`), "null",jsonlite::toJSON(self$`biologicalStatusOfAccessionDescription`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`breedingMethodDbId`), "null",jsonlite::toJSON(self$`breedingMethodDbId`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`collection`), "null",jsonlite::toJSON(self$`collection`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`commonCropName`), "null",jsonlite::toJSON(self$`commonCropName`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`countryOfOriginCode`), "null",jsonlite::toJSON(self$`countryOfOriginCode`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`defaultDisplayName`), "null",jsonlite::toJSON(self$`defaultDisplayName`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`documentationURL`), "null",jsonlite::toJSON(self$`documentationURL`,auto_unbox=TRUE, null = "null")),
        donorsList,
        externalReferencesList,
        ifelse(is.null(self$`genus`), "null",jsonlite::toJSON(self$`genus`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`germplasmDbId`), "null",jsonlite::toJSON(self$`germplasmDbId`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`germplasmName`), "null",jsonlite::toJSON(self$`germplasmName`,auto_unbox=TRUE, null = "null")),
        germplasmOriginList,
        ifelse(is.null(self$`germplasmPreprocessing`), "null",jsonlite::toJSON(self$`germplasmPreprocessing`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`instituteCode`), "null",jsonlite::toJSON(self$`instituteCode`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`instituteName`), "null",jsonlite::toJSON(self$`instituteName`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`pedigree`), "null",jsonlite::toJSON(self$`pedigree`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`seedSource`), "null",jsonlite::toJSON(self$`seedSource`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`seedSourceDescription`), "null",jsonlite::toJSON(self$`seedSourceDescription`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`species`), "null",jsonlite::toJSON(self$`species`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`speciesAuthority`), "null",jsonlite::toJSON(self$`speciesAuthority`,auto_unbox=TRUE, null = "null")),
        storageTypesList,
        ifelse(is.null(self$`subtaxa`), "null",jsonlite::toJSON(self$`subtaxa`,auto_unbox=TRUE, null = "null")),
        ifelse(is.null(self$`subtaxaAuthority`), "null",jsonlite::toJSON(self$`subtaxaAuthority`,auto_unbox=TRUE, null = "null")),
        synonymsList,
        taxonIdsList
      )
    },
    fromJSONString = function(GermplasmDTOJson) {
      GermplasmDTOObject <- jsonlite::fromJSON(GermplasmDTOJson)
      self$`accessionNumber` <- GermplasmDTOObject$`accessionNumber`
      self$`acquisitionDate` <- GermplasmDTOObject$`acquisitionDate`
      self$`additionalInfo` <- GermplasmDTOObject$`additionalInfo`
      self$`biologicalStatusOfAccessionCode` <- GermplasmDTOObject$`biologicalStatusOfAccessionCode`
      self$`biologicalStatusOfAccessionDescription` <- GermplasmDTOObject$`biologicalStatusOfAccessionDescription`
      self$`breedingMethodDbId` <- GermplasmDTOObject$`breedingMethodDbId`
      self$`collection` <- GermplasmDTOObject$`collection`
      self$`commonCropName` <- GermplasmDTOObject$`commonCropName`
      self$`countryOfOriginCode` <- GermplasmDTOObject$`countryOfOriginCode`
      self$`defaultDisplayName` <- GermplasmDTOObject$`defaultDisplayName`
      self$`documentationURL` <- GermplasmDTOObject$`documentationURL`
      self$`donors` <- lapply(GermplasmDTOObject$`donors`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`externalReferences` <- lapply(GermplasmDTOObject$`externalReferences`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`genus` <- GermplasmDTOObject$`genus`
      self$`germplasmDbId` <- GermplasmDTOObject$`germplasmDbId`
      self$`germplasmName` <- GermplasmDTOObject$`germplasmName`
      self$`germplasmOrigin` <- lapply(GermplasmDTOObject$`germplasmOrigin`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`germplasmPreprocessing` <- GermplasmDTOObject$`germplasmPreprocessing`
      self$`instituteCode` <- GermplasmDTOObject$`instituteCode`
      self$`instituteName` <- GermplasmDTOObject$`instituteName`
      self$`pedigree` <- GermplasmDTOObject$`pedigree`
      self$`seedSource` <- GermplasmDTOObject$`seedSource`
      self$`seedSourceDescription` <- GermplasmDTOObject$`seedSourceDescription`
      self$`species` <- GermplasmDTOObject$`species`
      self$`speciesAuthority` <- GermplasmDTOObject$`speciesAuthority`
      self$`storageTypes` <- lapply(GermplasmDTOObject$`storageTypes`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`subtaxa` <- GermplasmDTOObject$`subtaxa`
      self$`subtaxaAuthority` <- GermplasmDTOObject$`subtaxaAuthority`
      self$`synonyms` <- lapply(GermplasmDTOObject$`synonyms`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
      self$`taxonIds` <- lapply(GermplasmDTOObject$`taxonIds`, function(x) ObjectDTO$new()$fromJSON(jsonlite::toJSON(x, auto_unbox = TRUE)))
    }
  )
)
OpenSILEX/opensilexClientToolsR documentation built on Jan. 28, 2022, 5:03 a.m.