#' @importFrom rJava .jpackage .jinit #' @import RGMQLlib #' .onLoad <- function(libname, pkgname) { .jpackage(pkgname, lib.loc = libname) initGMQLscalaAPI() } .onAttach <- function(libname, pkgname) { packageStartupMessage("GMQL successfully loaded") } .onDetach <- function(libpath) { } .onUnload <- function(libpath) { } #' @importFrom rJava .jinit .jaddClassPath #' initGMQLscalaAPI <- function(libLoc, mem = "12G") { # Check if library directory is missing # Starting the java engine .jinit(force.init = TRUE) if (missing(libLoc)) { libLoc = system.file("extdata", "java", package = "RGMQLlib") } path = Sys.glob(paste0(libLoc, "/*.jar")) available_local_files <- list.files( libLoc, full.names = FALSE, pattern = "\\.jar$" ) # Check if all the files are there if (!"GMQL.jar" %in% available_local_files) { stop("GMQL jar not available") } if (length(path) > 0) { rJava::.jaddClassPath(path) } rJava::.jaddClassPath(dirname(path)) }