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


#' BoxScoreTeamsScoringOpportunities Class
#'
#' @field team 
#' @field opportunities 
#' @field points 
#' @field pointsPerOpportunity 
#'
#' @importFrom R6 R6Class
#' @importFrom jsonlite fromJSON toJSON
#' @export
BoxScoreTeamsScoringOpportunities <- R6::R6Class(
  'BoxScoreTeamsScoringOpportunities',
  public = list(
    `team` = NULL,
    `opportunities` = NULL,
    `points` = NULL,
    `pointsPerOpportunity` = NULL,
    initialize = function(`team`, `opportunities`, `points`, `pointsPerOpportunity`){
      if (!missing(`team`)) {
        stopifnot(is.character(`team`), length(`team`) == 1)
        self$`team` <- `team`
      }
      if (!missing(`opportunities`)) {
        stopifnot(is.numeric(`opportunities`), length(`opportunities`) == 1)
        self$`opportunities` <- `opportunities`
      }
      if (!missing(`points`)) {
        stopifnot(is.numeric(`points`), length(`points`) == 1)
        self$`points` <- `points`
      }
      if (!missing(`pointsPerOpportunity`)) {
        self$`pointsPerOpportunity` <- `pointsPerOpportunity`
      }
    },
    toJSON = function() {
      BoxScoreTeamsScoringOpportunitiesObject <- list()
      if (!is.null(self$`team`)) {
        BoxScoreTeamsScoringOpportunitiesObject[['team']] <- self$`team`
      }
      if (!is.null(self$`opportunities`)) {
        BoxScoreTeamsScoringOpportunitiesObject[['opportunities']] <- self$`opportunities`
      }
      if (!is.null(self$`points`)) {
        BoxScoreTeamsScoringOpportunitiesObject[['points']] <- self$`points`
      }
      if (!is.null(self$`pointsPerOpportunity`)) {
        BoxScoreTeamsScoringOpportunitiesObject[['pointsPerOpportunity']] <- self$`pointsPerOpportunity`
      }

      BoxScoreTeamsScoringOpportunitiesObject
    },
    fromJSON = function(BoxScoreTeamsScoringOpportunitiesJson) {
      BoxScoreTeamsScoringOpportunitiesObject <- jsonlite::fromJSON(BoxScoreTeamsScoringOpportunitiesJson)
      if (!is.null(BoxScoreTeamsScoringOpportunitiesObject$`team`)) {
        self$`team` <- BoxScoreTeamsScoringOpportunitiesObject$`team`
      }
      if (!is.null(BoxScoreTeamsScoringOpportunitiesObject$`opportunities`)) {
        self$`opportunities` <- BoxScoreTeamsScoringOpportunitiesObject$`opportunities`
      }
      if (!is.null(BoxScoreTeamsScoringOpportunitiesObject$`points`)) {
        self$`points` <- BoxScoreTeamsScoringOpportunitiesObject$`points`
      }
      if (!is.null(BoxScoreTeamsScoringOpportunitiesObject$`pointsPerOpportunity`)) {
        self$`pointsPerOpportunity` <- BoxScoreTeamsScoringOpportunitiesObject$`pointsPerOpportunity`
      }
    },
    toJSONString = function() {
       sprintf(
        '{
           "team": %s,
           "opportunities": %d,
           "points": %d,
           "pointsPerOpportunity": %s
        }',
        self$`team`,
        self$`opportunities`,
        self$`points`,
        self$`pointsPerOpportunity`
      )
    },
    fromJSONString = function(BoxScoreTeamsScoringOpportunitiesJson) {
      BoxScoreTeamsScoringOpportunitiesObject <- jsonlite::fromJSON(BoxScoreTeamsScoringOpportunitiesJson)
      self$`team` <- BoxScoreTeamsScoringOpportunitiesObject$`team`
      self$`opportunities` <- BoxScoreTeamsScoringOpportunitiesObject$`opportunities`
      self$`points` <- BoxScoreTeamsScoringOpportunitiesObject$`points`
      self$`pointsPerOpportunity` <- BoxScoreTeamsScoringOpportunitiesObject$`pointsPerOpportunity`
    }
  )
)
saiemgilani/cfbd-api-R documentation built on Feb. 16, 2021, 12:07 a.m.