R/sankeyUtils.R

sankey_utils <- R6::R6Class(
    'sankey_utils',
    public = list(
        db_is_local = TRUE,

        get_sq = function(){

            return(
                storedQry::SQ$new( private$get_db() )
            )
        },

        set_db_mode = function(value){

            if( !missing(value) && !is.null(value)){
              self$db_is_local <- value
            }
            invisible(self)
        }

    ),
    private = list(

        db_local ='R:/packages/beamaSankey/inst/extdata/sankeys.sqlite',
        db_pkg = system.file("extdata/sankeys.sqlite",package="beamaSankey")


        #get connection string
        ,get_db_con = function(){
            return(
                DBI::dbConnect(RSQLite::SQLite(), dbname= private$get_db() )
            )
        }

        #execute sql qrery
        ,run_sql = function(qry) {
            return(sqldf::sqldf(qry, dbname= private$get_db() ))
        }

        #get database
        ,get_db = function(){

            if( self$db_is_local ){
                return(private$db_local)
            }else{
                return(private$db_pkg)
            }
        }


    )

)
eamoakohene/beamaSankey documentation built on Nov. 24, 2019, 2:15 a.m.