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


#' Game Class
#'
#' @field id 
#' @field season 
#' @field week 
#' @field season_type 
#' @field start_date 
#' @field start_time_tbd 
#' @field neutral_site 
#' @field conference_game 
#' @field attendance 
#' @field venue_id 
#' @field venue 
#' @field home_id 
#' @field home_team 
#' @field home_conference 
#' @field home_points 
#' @field home_line_scores 
#' @field home_post_win_prob 
#' @field away_id 
#' @field away_team 
#' @field away_conference 
#' @field away_points 
#' @field away_line_scores 
#' @field away_post_win_prob 
#' @field excitement_index 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
Game <- R6::R6Class(
  'Game',
  public = list(
    `id` = NULL,
    `season` = NULL,
    `week` = NULL,
    `season_type` = NULL,
    `start_date` = NULL,
    `start_time_tbd` = NULL,
    `neutral_site` = NULL,
    `conference_game` = NULL,
    `attendance` = NULL,
    `venue_id` = NULL,
    `venue` = NULL,
    `home_id` = NULL,
    `home_team` = NULL,
    `home_conference` = NULL,
    `home_points` = NULL,
    `home_line_scores` = NULL,
    `home_post_win_prob` = NULL,
    `away_id` = NULL,
    `away_team` = NULL,
    `away_conference` = NULL,
    `away_points` = NULL,
    `away_line_scores` = NULL,
    `away_post_win_prob` = NULL,
    `excitement_index` = NULL,
    initialize = function(`id`, `season`, `week`, `season_type`, `start_date`, `start_time_tbd`, `neutral_site`, `conference_game`, `attendance`, `venue_id`, `venue`, `home_id`, `home_team`, `home_conference`, `home_points`, `home_line_scores`, `home_post_win_prob`, `away_id`, `away_team`, `away_conference`, `away_points`, `away_line_scores`, `away_post_win_prob`, `excitement_index`){
      if (!missing(`id`)) {
        stopifnot(is.numeric(`id`), length(`id`) == 1)
        self$`id` <- `id`
      }
      if (!missing(`season`)) {
        stopifnot(is.numeric(`season`), length(`season`) == 1)
        self$`season` <- `season`
      }
      if (!missing(`week`)) {
        stopifnot(is.numeric(`week`), length(`week`) == 1)
        self$`week` <- `week`
      }
      if (!missing(`season_type`)) {
        stopifnot(is.character(`season_type`), length(`season_type`) == 1)
        self$`season_type` <- `season_type`
      }
      if (!missing(`start_date`)) {
        stopifnot(is.character(`start_date`), length(`start_date`) == 1)
        self$`start_date` <- `start_date`
      }
      if (!missing(`start_time_tbd`)) {
        self$`start_time_tbd` <- `start_time_tbd`
      }
      if (!missing(`neutral_site`)) {
        self$`neutral_site` <- `neutral_site`
      }
      if (!missing(`conference_game`)) {
        self$`conference_game` <- `conference_game`
      }
      if (!missing(`attendance`)) {
        stopifnot(is.numeric(`attendance`), length(`attendance`) == 1)
        self$`attendance` <- `attendance`
      }
      if (!missing(`venue_id`)) {
        stopifnot(is.numeric(`venue_id`), length(`venue_id`) == 1)
        self$`venue_id` <- `venue_id`
      }
      if (!missing(`venue`)) {
        stopifnot(is.character(`venue`), length(`venue`) == 1)
        self$`venue` <- `venue`
      }
      if (!missing(`home_id`)) {
        stopifnot(is.numeric(`home_id`), length(`home_id`) == 1)
        self$`home_id` <- `home_id`
      }
      if (!missing(`home_team`)) {
        stopifnot(is.character(`home_team`), length(`home_team`) == 1)
        self$`home_team` <- `home_team`
      }
      if (!missing(`home_conference`)) {
        stopifnot(is.character(`home_conference`), length(`home_conference`) == 1)
        self$`home_conference` <- `home_conference`
      }
      if (!missing(`home_points`)) {
        stopifnot(is.numeric(`home_points`), length(`home_points`) == 1)
        self$`home_points` <- `home_points`
      }
      if (!missing(`home_line_scores`)) {
        stopifnot(is.list(`home_line_scores`), length(`home_line_scores`) != 0)
        lapply(`home_line_scores`, function(x) stopifnot(is.character(x)))
        self$`home_line_scores` <- `home_line_scores`
      }
      if (!missing(`home_post_win_prob`)) {
        self$`home_post_win_prob` <- `home_post_win_prob`
      }
      if (!missing(`away_id`)) {
        stopifnot(is.numeric(`away_id`), length(`away_id`) == 1)
        self$`away_id` <- `away_id`
      }
      if (!missing(`away_team`)) {
        stopifnot(is.character(`away_team`), length(`away_team`) == 1)
        self$`away_team` <- `away_team`
      }
      if (!missing(`away_conference`)) {
        stopifnot(is.character(`away_conference`), length(`away_conference`) == 1)
        self$`away_conference` <- `away_conference`
      }
      if (!missing(`away_points`)) {
        stopifnot(is.numeric(`away_points`), length(`away_points`) == 1)
        self$`away_points` <- `away_points`
      }
      if (!missing(`away_line_scores`)) {
        stopifnot(is.list(`away_line_scores`), length(`away_line_scores`) != 0)
        lapply(`away_line_scores`, function(x) stopifnot(is.character(x)))
        self$`away_line_scores` <- `away_line_scores`
      }
      if (!missing(`away_post_win_prob`)) {
        self$`away_post_win_prob` <- `away_post_win_prob`
      }
      if (!missing(`excitement_index`)) {
        self$`excitement_index` <- `excitement_index`
      }
    },
    toJSON = function() {
      GameObject <- list()
      if (!is.null(self$`id`)) {
        GameObject[['id']] <- self$`id`
      }
      if (!is.null(self$`season`)) {
        GameObject[['season']] <- self$`season`
      }
      if (!is.null(self$`week`)) {
        GameObject[['week']] <- self$`week`
      }
      if (!is.null(self$`season_type`)) {
        GameObject[['season_type']] <- self$`season_type`
      }
      if (!is.null(self$`start_date`)) {
        GameObject[['start_date']] <- self$`start_date`
      }
      if (!is.null(self$`start_time_tbd`)) {
        GameObject[['start_time_tbd']] <- self$`start_time_tbd`
      }
      if (!is.null(self$`neutral_site`)) {
        GameObject[['neutral_site']] <- self$`neutral_site`
      }
      if (!is.null(self$`conference_game`)) {
        GameObject[['conference_game']] <- self$`conference_game`
      }
      if (!is.null(self$`attendance`)) {
        GameObject[['attendance']] <- self$`attendance`
      }
      if (!is.null(self$`venue_id`)) {
        GameObject[['venue_id']] <- self$`venue_id`
      }
      if (!is.null(self$`venue`)) {
        GameObject[['venue']] <- self$`venue`
      }
      if (!is.null(self$`home_id`)) {
        GameObject[['home_id']] <- self$`home_id`
      }
      if (!is.null(self$`home_team`)) {
        GameObject[['home_team']] <- self$`home_team`
      }
      if (!is.null(self$`home_conference`)) {
        GameObject[['home_conference']] <- self$`home_conference`
      }
      if (!is.null(self$`home_points`)) {
        GameObject[['home_points']] <- self$`home_points`
      }
      if (!is.null(self$`home_line_scores`)) {
        GameObject[['home_line_scores']] <- self$`home_line_scores`
      }
      if (!is.null(self$`home_post_win_prob`)) {
        GameObject[['home_post_win_prob']] <- self$`home_post_win_prob`
      }
      if (!is.null(self$`away_id`)) {
        GameObject[['away_id']] <- self$`away_id`
      }
      if (!is.null(self$`away_team`)) {
        GameObject[['away_team']] <- self$`away_team`
      }
      if (!is.null(self$`away_conference`)) {
        GameObject[['away_conference']] <- self$`away_conference`
      }
      if (!is.null(self$`away_points`)) {
        GameObject[['away_points']] <- self$`away_points`
      }
      if (!is.null(self$`away_line_scores`)) {
        GameObject[['away_line_scores']] <- self$`away_line_scores`
      }
      if (!is.null(self$`away_post_win_prob`)) {
        GameObject[['away_post_win_prob']] <- self$`away_post_win_prob`
      }
      if (!is.null(self$`excitement_index`)) {
        GameObject[['excitement_index']] <- self$`excitement_index`
      }

      GameObject
    },
    fromJSON = function(GameJson) {
      GameObject <- jsonlite::fromJSON(GameJson)
      if (!is.null(GameObject$`id`)) {
        self$`id` <- GameObject$`id`
      }
      if (!is.null(GameObject$`season`)) {
        self$`season` <- GameObject$`season`
      }
      if (!is.null(GameObject$`week`)) {
        self$`week` <- GameObject$`week`
      }
      if (!is.null(GameObject$`season_type`)) {
        self$`season_type` <- GameObject$`season_type`
      }
      if (!is.null(GameObject$`start_date`)) {
        self$`start_date` <- GameObject$`start_date`
      }
      if (!is.null(GameObject$`start_time_tbd`)) {
        self$`start_time_tbd` <- GameObject$`start_time_tbd`
      }
      if (!is.null(GameObject$`neutral_site`)) {
        self$`neutral_site` <- GameObject$`neutral_site`
      }
      if (!is.null(GameObject$`conference_game`)) {
        self$`conference_game` <- GameObject$`conference_game`
      }
      if (!is.null(GameObject$`attendance`)) {
        self$`attendance` <- GameObject$`attendance`
      }
      if (!is.null(GameObject$`venue_id`)) {
        self$`venue_id` <- GameObject$`venue_id`
      }
      if (!is.null(GameObject$`venue`)) {
        self$`venue` <- GameObject$`venue`
      }
      if (!is.null(GameObject$`home_id`)) {
        self$`home_id` <- GameObject$`home_id`
      }
      if (!is.null(GameObject$`home_team`)) {
        self$`home_team` <- GameObject$`home_team`
      }
      if (!is.null(GameObject$`home_conference`)) {
        self$`home_conference` <- GameObject$`home_conference`
      }
      if (!is.null(GameObject$`home_points`)) {
        self$`home_points` <- GameObject$`home_points`
      }
      if (!is.null(GameObject$`home_line_scores`)) {
        self$`home_line_scores` <- GameObject$`home_line_scores`
      }
      if (!is.null(GameObject$`home_post_win_prob`)) {
        self$`home_post_win_prob` <- GameObject$`home_post_win_prob`
      }
      if (!is.null(GameObject$`away_id`)) {
        self$`away_id` <- GameObject$`away_id`
      }
      if (!is.null(GameObject$`away_team`)) {
        self$`away_team` <- GameObject$`away_team`
      }
      if (!is.null(GameObject$`away_conference`)) {
        self$`away_conference` <- GameObject$`away_conference`
      }
      if (!is.null(GameObject$`away_points`)) {
        self$`away_points` <- GameObject$`away_points`
      }
      if (!is.null(GameObject$`away_line_scores`)) {
        self$`away_line_scores` <- GameObject$`away_line_scores`
      }
      if (!is.null(GameObject$`away_post_win_prob`)) {
        self$`away_post_win_prob` <- GameObject$`away_post_win_prob`
      }
      if (!is.null(GameObject$`excitement_index`)) {
        self$`excitement_index` <- GameObject$`excitement_index`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "id": %d,
           "season": %d,
           "week": %d,
           "season_type": %s,
           "start_date": %s,
           "start_time_tbd": %s,
           "neutral_site": %s,
           "conference_game": %s,
           "attendance": %d,
           "venue_id": %d,
           "venue": %s,
           "home_id": %d,
           "home_team": %s,
           "home_conference": %s,
           "home_points": %d,
           "home_line_scores": [%s],
           "home_post_win_prob": %s,
           "away_id": %d,
           "away_team": %s,
           "away_conference": %s,
           "away_points": %d,
           "away_line_scores": [%s],
           "away_post_win_prob": %s,
           "excitement_index": %s
        }',
        self$`id`,
        self$`season`,
        self$`week`,
        self$`season_type`,
        self$`start_date`,
        self$`start_time_tbd`,
        self$`neutral_site`,
        self$`conference_game`,
        self$`attendance`,
        self$`venue_id`,
        self$`venue`,
        self$`home_id`,
        self$`home_team`,
        self$`home_conference`,
        self$`home_points`,
        lapply(self$`home_line_scores`, function(x) paste(paste0('"', x, '"'), sep=",")),
        self$`home_post_win_prob`,
        self$`away_id`,
        self$`away_team`,
        self$`away_conference`,
        self$`away_points`,
        lapply(self$`away_line_scores`, function(x) paste(paste0('"', x, '"'), sep=",")),
        self$`away_post_win_prob`,
        self$`excitement_index`
      )
    },
    fromJSONString = function(GameJson) {
      GameObject <- jsonlite::fromJSON(GameJson)
      self$`id` <- GameObject$`id`
      self$`season` <- GameObject$`season`
      self$`week` <- GameObject$`week`
      self$`season_type` <- GameObject$`season_type`
      self$`start_date` <- GameObject$`start_date`
      self$`start_time_tbd` <- GameObject$`start_time_tbd`
      self$`neutral_site` <- GameObject$`neutral_site`
      self$`conference_game` <- GameObject$`conference_game`
      self$`attendance` <- GameObject$`attendance`
      self$`venue_id` <- GameObject$`venue_id`
      self$`venue` <- GameObject$`venue`
      self$`home_id` <- GameObject$`home_id`
      self$`home_team` <- GameObject$`home_team`
      self$`home_conference` <- GameObject$`home_conference`
      self$`home_points` <- GameObject$`home_points`
      self$`home_line_scores` <- GameObject$`home_line_scores`
      self$`home_post_win_prob` <- GameObject$`home_post_win_prob`
      self$`away_id` <- GameObject$`away_id`
      self$`away_team` <- GameObject$`away_team`
      self$`away_conference` <- GameObject$`away_conference`
      self$`away_points` <- GameObject$`away_points`
      self$`away_line_scores` <- GameObject$`away_line_scores`
      self$`away_post_win_prob` <- GameObject$`away_post_win_prob`
      self$`excitement_index` <- GameObject$`excitement_index`
    }
  )
)
saiemgilani/cfbd-api-R documentation built on Feb. 16, 2021, 12:07 a.m.