コード例 #1
0
ファイル: AetherTest.java プロジェクト: beattyk1/renjin
  @Test
  public void remote() {
    AetherPackageLoader loader = new AetherPackageLoader();
    loader.setRepositoryListener(new ConsoleRepositoryListener());
    loader.setTransferListener(new ConsoleTransferListener());
    loader.load(new FqPackageName("org.renjin.cran", "ACD"));

    System.out.println(Joiner.on("\n").join(loader.getClassLoader().getURLs()));
  }
コード例 #2
0
ファイル: AetherTest.java プロジェクト: beattyk1/renjin
  private String evaluate(String script) throws IOException {
    AetherPackageLoader aetherLoader = new AetherPackageLoader();
    aetherLoader.setTransferListener(new ConsoleTransferListener());
    aetherLoader.setRepositoryListener(new ConsoleRepositoryListener(System.out));

    Session session =
        new SessionBuilder()
            .bind(ClassLoader.class, aetherLoader.getClassLoader())
            .bind(PackageLoader.class, aetherLoader)
            .build();

    ExpressionVector sexp = RParser.parseAllSource(new StringReader(script));

    SEXP result = session.getTopLevelContext().evaluate(sexp);

    if (result instanceof StringVector) {
      return ((StringVector) result).getElementAsString(0);
    } else {
      throw new AssertionError("Expected string, got: " + result);
    }
  }