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


#' Drive Class
#'
#' @field offense 
#' @field offense_conference 
#' @field defense 
#' @field defense_conference 
#' @field game_id 
#' @field id 
#' @field drive_number 
#' @field scoring 
#' @field start_period 
#' @field start_yardline 
#' @field start_yards_to_goal 
#' @field start_time 
#' @field end_period 
#' @field end_yardline 
#' @field end_yards_to_goal 
#' @field end_time 
#' @field plays 
#' @field yards 
#' @field drive_result 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
Drive <- R6::R6Class(
  'Drive',
  public = list(
    `offense` = NULL,
    `offense_conference` = NULL,
    `defense` = NULL,
    `defense_conference` = NULL,
    `game_id` = NULL,
    `id` = NULL,
    `drive_number` = NULL,
    `scoring` = NULL,
    `start_period` = NULL,
    `start_yardline` = NULL,
    `start_yards_to_goal` = NULL,
    `start_time` = NULL,
    `end_period` = NULL,
    `end_yardline` = NULL,
    `end_yards_to_goal` = NULL,
    `end_time` = NULL,
    `plays` = NULL,
    `yards` = NULL,
    `drive_result` = NULL,
    initialize = function(`offense`, `offense_conference`, `defense`, `defense_conference`, `game_id`, `id`, `drive_number`, `scoring`, `start_period`, `start_yardline`, `start_yards_to_goal`, `start_time`, `end_period`, `end_yardline`, `end_yards_to_goal`, `end_time`, `plays`, `yards`, `drive_result`){
      if (!missing(`offense`)) {
        stopifnot(is.character(`offense`), length(`offense`) == 1)
        self$`offense` <- `offense`
      }
      if (!missing(`offense_conference`)) {
        stopifnot(is.character(`offense_conference`), length(`offense_conference`) == 1)
        self$`offense_conference` <- `offense_conference`
      }
      if (!missing(`defense`)) {
        stopifnot(is.character(`defense`), length(`defense`) == 1)
        self$`defense` <- `defense`
      }
      if (!missing(`defense_conference`)) {
        stopifnot(is.character(`defense_conference`), length(`defense_conference`) == 1)
        self$`defense_conference` <- `defense_conference`
      }
      if (!missing(`game_id`)) {
        stopifnot(is.numeric(`game_id`), length(`game_id`) == 1)
        self$`game_id` <- `game_id`
      }
      if (!missing(`id`)) {
        stopifnot(is.numeric(`id`), length(`id`) == 1)
        self$`id` <- `id`
      }
      if (!missing(`drive_number`)) {
        stopifnot(is.numeric(`drive_number`), length(`drive_number`) == 1)
        self$`drive_number` <- `drive_number`
      }
      if (!missing(`scoring`)) {
        self$`scoring` <- `scoring`
      }
      if (!missing(`start_period`)) {
        stopifnot(is.numeric(`start_period`), length(`start_period`) == 1)
        self$`start_period` <- `start_period`
      }
      if (!missing(`start_yardline`)) {
        stopifnot(is.numeric(`start_yardline`), length(`start_yardline`) == 1)
        self$`start_yardline` <- `start_yardline`
      }
      if (!missing(`start_yards_to_goal`)) {
        stopifnot(is.numeric(`start_yards_to_goal`), length(`start_yards_to_goal`) == 1)
        self$`start_yards_to_goal` <- `start_yards_to_goal`
      }
      if (!missing(`start_time`)) {
        stopifnot(R6::is.R6(`start_time`))
        self$`start_time` <- `start_time`
      }
      if (!missing(`end_period`)) {
        stopifnot(is.numeric(`end_period`), length(`end_period`) == 1)
        self$`end_period` <- `end_period`
      }
      if (!missing(`end_yardline`)) {
        stopifnot(is.numeric(`end_yardline`), length(`end_yardline`) == 1)
        self$`end_yardline` <- `end_yardline`
      }
      if (!missing(`end_yards_to_goal`)) {
        stopifnot(is.numeric(`end_yards_to_goal`), length(`end_yards_to_goal`) == 1)
        self$`end_yards_to_goal` <- `end_yards_to_goal`
      }
      if (!missing(`end_time`)) {
        stopifnot(R6::is.R6(`end_time`))
        self$`end_time` <- `end_time`
      }
      if (!missing(`plays`)) {
        stopifnot(is.numeric(`plays`), length(`plays`) == 1)
        self$`plays` <- `plays`
      }
      if (!missing(`yards`)) {
        stopifnot(is.numeric(`yards`), length(`yards`) == 1)
        self$`yards` <- `yards`
      }
      if (!missing(`drive_result`)) {
        stopifnot(is.character(`drive_result`), length(`drive_result`) == 1)
        self$`drive_result` <- `drive_result`
      }
    },
    toJSON = function() {
      DriveObject <- list()
      if (!is.null(self$`offense`)) {
        DriveObject[['offense']] <- self$`offense`
      }
      if (!is.null(self$`offense_conference`)) {
        DriveObject[['offense_conference']] <- self$`offense_conference`
      }
      if (!is.null(self$`defense`)) {
        DriveObject[['defense']] <- self$`defense`
      }
      if (!is.null(self$`defense_conference`)) {
        DriveObject[['defense_conference']] <- self$`defense_conference`
      }
      if (!is.null(self$`game_id`)) {
        DriveObject[['game_id']] <- self$`game_id`
      }
      if (!is.null(self$`id`)) {
        DriveObject[['id']] <- self$`id`
      }
      if (!is.null(self$`drive_number`)) {
        DriveObject[['drive_number']] <- self$`drive_number`
      }
      if (!is.null(self$`scoring`)) {
        DriveObject[['scoring']] <- self$`scoring`
      }
      if (!is.null(self$`start_period`)) {
        DriveObject[['start_period']] <- self$`start_period`
      }
      if (!is.null(self$`start_yardline`)) {
        DriveObject[['start_yardline']] <- self$`start_yardline`
      }
      if (!is.null(self$`start_yards_to_goal`)) {
        DriveObject[['start_yards_to_goal']] <- self$`start_yards_to_goal`
      }
      if (!is.null(self$`start_time`)) {
        DriveObject[['start_time']] <- self$`start_time`$toJSON()
      }
      if (!is.null(self$`end_period`)) {
        DriveObject[['end_period']] <- self$`end_period`
      }
      if (!is.null(self$`end_yardline`)) {
        DriveObject[['end_yardline']] <- self$`end_yardline`
      }
      if (!is.null(self$`end_yards_to_goal`)) {
        DriveObject[['end_yards_to_goal']] <- self$`end_yards_to_goal`
      }
      if (!is.null(self$`end_time`)) {
        DriveObject[['end_time']] <- self$`end_time`$toJSON()
      }
      if (!is.null(self$`plays`)) {
        DriveObject[['plays']] <- self$`plays`
      }
      if (!is.null(self$`yards`)) {
        DriveObject[['yards']] <- self$`yards`
      }
      if (!is.null(self$`drive_result`)) {
        DriveObject[['drive_result']] <- self$`drive_result`
      }

      DriveObject
    },
    fromJSON = function(DriveJson) {
      DriveObject <- jsonlite::fromJSON(DriveJson)
      if (!is.null(DriveObject$`offense`)) {
        self$`offense` <- DriveObject$`offense`
      }
      if (!is.null(DriveObject$`offense_conference`)) {
        self$`offense_conference` <- DriveObject$`offense_conference`
      }
      if (!is.null(DriveObject$`defense`)) {
        self$`defense` <- DriveObject$`defense`
      }
      if (!is.null(DriveObject$`defense_conference`)) {
        self$`defense_conference` <- DriveObject$`defense_conference`
      }
      if (!is.null(DriveObject$`game_id`)) {
        self$`game_id` <- DriveObject$`game_id`
      }
      if (!is.null(DriveObject$`id`)) {
        self$`id` <- DriveObject$`id`
      }
      if (!is.null(DriveObject$`drive_number`)) {
        self$`drive_number` <- DriveObject$`drive_number`
      }
      if (!is.null(DriveObject$`scoring`)) {
        self$`scoring` <- DriveObject$`scoring`
      }
      if (!is.null(DriveObject$`start_period`)) {
        self$`start_period` <- DriveObject$`start_period`
      }
      if (!is.null(DriveObject$`start_yardline`)) {
        self$`start_yardline` <- DriveObject$`start_yardline`
      }
      if (!is.null(DriveObject$`start_yards_to_goal`)) {
        self$`start_yards_to_goal` <- DriveObject$`start_yards_to_goal`
      }
      if (!is.null(DriveObject$`start_time`)) {
        start_timeObject <- DriveStartTime$new()
        start_timeObject$fromJSON(jsonlite::toJSON(DriveObject$start_time, auto_unbox = TRUE))
        self$`start_time` <- start_timeObject
      }
      if (!is.null(DriveObject$`end_period`)) {
        self$`end_period` <- DriveObject$`end_period`
      }
      if (!is.null(DriveObject$`end_yardline`)) {
        self$`end_yardline` <- DriveObject$`end_yardline`
      }
      if (!is.null(DriveObject$`end_yards_to_goal`)) {
        self$`end_yards_to_goal` <- DriveObject$`end_yards_to_goal`
      }
      if (!is.null(DriveObject$`end_time`)) {
        end_timeObject <- DriveStartTime$new()
        end_timeObject$fromJSON(jsonlite::toJSON(DriveObject$end_time, auto_unbox = TRUE))
        self$`end_time` <- end_timeObject
      }
      if (!is.null(DriveObject$`plays`)) {
        self$`plays` <- DriveObject$`plays`
      }
      if (!is.null(DriveObject$`yards`)) {
        self$`yards` <- DriveObject$`yards`
      }
      if (!is.null(DriveObject$`drive_result`)) {
        self$`drive_result` <- DriveObject$`drive_result`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "offense": %s,
           "offense_conference": %s,
           "defense": %s,
           "defense_conference": %s,
           "game_id": %d,
           "id": %d,
           "drive_number": %d,
           "scoring": %s,
           "start_period": %d,
           "start_yardline": %d,
           "start_yards_to_goal": %d,
           "start_time": %s,
           "end_period": %d,
           "end_yardline": %d,
           "end_yards_to_goal": %d,
           "end_time": %s,
           "plays": %d,
           "yards": %d,
           "drive_result": %s
        }',
        self$`offense`,
        self$`offense_conference`,
        self$`defense`,
        self$`defense_conference`,
        self$`game_id`,
        self$`id`,
        self$`drive_number`,
        self$`scoring`,
        self$`start_period`,
        self$`start_yardline`,
        self$`start_yards_to_goal`,
        self$`start_time`$toJSON(),
        self$`end_period`,
        self$`end_yardline`,
        self$`end_yards_to_goal`,
        self$`end_time`$toJSON(),
        self$`plays`,
        self$`yards`,
        self$`drive_result`
      )
    },
    fromJSONString = function(DriveJson) {
      DriveObject <- jsonlite::fromJSON(DriveJson)
      self$`offense` <- DriveObject$`offense`
      self$`offense_conference` <- DriveObject$`offense_conference`
      self$`defense` <- DriveObject$`defense`
      self$`defense_conference` <- DriveObject$`defense_conference`
      self$`game_id` <- DriveObject$`game_id`
      self$`id` <- DriveObject$`id`
      self$`drive_number` <- DriveObject$`drive_number`
      self$`scoring` <- DriveObject$`scoring`
      self$`start_period` <- DriveObject$`start_period`
      self$`start_yardline` <- DriveObject$`start_yardline`
      self$`start_yards_to_goal` <- DriveObject$`start_yards_to_goal`
      DriveStartTimeObject <- DriveStartTime$new()
      self$`start_time` <- DriveStartTimeObject$fromJSON(jsonlite::toJSON(DriveObject$start_time, auto_unbox = TRUE))
      self$`end_period` <- DriveObject$`end_period`
      self$`end_yardline` <- DriveObject$`end_yardline`
      self$`end_yards_to_goal` <- DriveObject$`end_yards_to_goal`
      DriveStartTimeObject <- DriveStartTime$new()
      self$`end_time` <- DriveStartTimeObject$fromJSON(jsonlite::toJSON(DriveObject$end_time, auto_unbox = TRUE))
      self$`plays` <- DriveObject$`plays`
      self$`yards` <- DriveObject$`yards`
      self$`drive_result` <- DriveObject$`drive_result`
    }
  )
)
saiemgilani/cfbd-api-R documentation built on Feb. 16, 2021, 12:07 a.m.