/// <summary> /// Creates R session /// </summary> /// <param name="name">Session name</param> /// <param name="url">Path to local R interpreter (folder with R.dll) or URL to the remote machine</param> /// <returns>R session</returns> public static IRHostSession Create(string name) { var e = new WindowsRInstallation().GetCompatibleEngines().FirstOrDefault(); if (e == null) { throw new InvalidOperationException("No R engines installed"); } var ci = BrokerConnectionInfo.Create(e.Name, e.InstallPath, e.Architecture, string.Empty); var bc = new LocalBrokerClient(name, ci, CoreShell.Create()); return(new RHostSession(new RSession(0, name, bc, new NullLock(), () => { }))); }
/// <summary> /// Creates R session /// </summary> /// <param name="name">Session name</param> /// <param name="url">Path to local R interpreter (folder with R.dll) or URL to the remote machine</param> /// <returns>R session</returns> public static IRHostSession Create(string name, string url = null) { if (string.IsNullOrEmpty(url)) { var engine = new WindowsRInstallation().GetCompatibleEngines().FirstOrDefault(); if (engine == null) { throw new InvalidOperationException("No R engines installed"); } url = engine.InstallPath; } var ci = BrokerConnectionInfo.Create(name, url, null); var bc = new LocalBrokerClient(name, ci, new ServiceContainer(), new NullConsole(), null); return(new RHostSession(new RSession(0, name, bc, new NullLock(), () => { }))); }