R/BoxScoreTeamsSuccessRates.r

# College Football Data API
#
# This is an API for accessing all sorts of college football data.  It currently has a wide array of data ranging from play by play to player statistics to game scores and more.
#
# OpenAPI spec version: 2.3.5
# Contact: admin@collegefootballdata.com
# Generated by: https://github.com/swagger-api/swagger-codegen.git


#' BoxScoreTeamsSuccessRates Class
#'
#' @field team 
#' @field overall 
#' @field standardDowns 
#' @field passingDowns 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
BoxScoreTeamsSuccessRates <- R6::R6Class(
  'BoxScoreTeamsSuccessRates',
  public = list(
    `team` = NULL,
    `overall` = NULL,
    `standardDowns` = NULL,
    `passingDowns` = NULL,
    initialize = function(`team`, `overall`, `standardDowns`, `passingDowns`){
      if (!missing(`team`)) {
        stopifnot(is.character(`team`), length(`team`) == 1)
        self$`team` <- `team`
      }
      if (!missing(`overall`)) {
        stopifnot(R6::is.R6(`overall`))
        self$`overall` <- `overall`
      }
      if (!missing(`standardDowns`)) {
        stopifnot(R6::is.R6(`standardDowns`))
        self$`standardDowns` <- `standardDowns`
      }
      if (!missing(`passingDowns`)) {
        stopifnot(R6::is.R6(`passingDowns`))
        self$`passingDowns` <- `passingDowns`
      }
    },
    toJSON = function() {
      BoxScoreTeamsSuccessRatesObject <- list()
      if (!is.null(self$`team`)) {
        BoxScoreTeamsSuccessRatesObject[['team']] <- self$`team`
      }
      if (!is.null(self$`overall`)) {
        BoxScoreTeamsSuccessRatesObject[['overall']] <- self$`overall`$toJSON()
      }
      if (!is.null(self$`standardDowns`)) {
        BoxScoreTeamsSuccessRatesObject[['standardDowns']] <- self$`standardDowns`$toJSON()
      }
      if (!is.null(self$`passingDowns`)) {
        BoxScoreTeamsSuccessRatesObject[['passingDowns']] <- self$`passingDowns`$toJSON()
      }

      BoxScoreTeamsSuccessRatesObject
    },
    fromJSON = function(BoxScoreTeamsSuccessRatesJson) {
      BoxScoreTeamsSuccessRatesObject <- jsonlite::fromJSON(BoxScoreTeamsSuccessRatesJson)
      if (!is.null(BoxScoreTeamsSuccessRatesObject$`team`)) {
        self$`team` <- BoxScoreTeamsSuccessRatesObject$`team`
      }
      if (!is.null(BoxScoreTeamsSuccessRatesObject$`overall`)) {
        overallObject <- BoxScoreTeamsOverall$new()
        overallObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$overall, auto_unbox = TRUE))
        self$`overall` <- overallObject
      }
      if (!is.null(BoxScoreTeamsSuccessRatesObject$`standardDowns`)) {
        standardDownsObject <- BoxScoreTeamsOverall$new()
        standardDownsObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$standardDowns, auto_unbox = TRUE))
        self$`standardDowns` <- standardDownsObject
      }
      if (!is.null(BoxScoreTeamsSuccessRatesObject$`passingDowns`)) {
        passingDownsObject <- BoxScoreTeamsOverall$new()
        passingDownsObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$passingDowns, auto_unbox = TRUE))
        self$`passingDowns` <- passingDownsObject
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "team": %s,
           "overall": %s,
           "standardDowns": %s,
           "passingDowns": %s
        }',
        self$`team`,
        self$`overall`$toJSON(),
        self$`standardDowns`$toJSON(),
        self$`passingDowns`$toJSON()
      )
    },
    fromJSONString = function(BoxScoreTeamsSuccessRatesJson) {
      BoxScoreTeamsSuccessRatesObject <- jsonlite::fromJSON(BoxScoreTeamsSuccessRatesJson)
      self$`team` <- BoxScoreTeamsSuccessRatesObject$`team`
      BoxScoreTeamsOverallObject <- BoxScoreTeamsOverall$new()
      self$`overall` <- BoxScoreTeamsOverallObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$overall, auto_unbox = TRUE))
      BoxScoreTeamsOverallObject <- BoxScoreTeamsOverall$new()
      self$`standardDowns` <- BoxScoreTeamsOverallObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$standardDowns, auto_unbox = TRUE))
      BoxScoreTeamsOverallObject <- BoxScoreTeamsOverall$new()
      self$`passingDowns` <- BoxScoreTeamsOverallObject$fromJSON(jsonlite::toJSON(BoxScoreTeamsSuccessRatesObject$passingDowns, auto_unbox = TRUE))
    }
  )
)
saiemgilani/cfbd-api-R documentation built on Feb. 16, 2021, 12:07 a.m.