Giter Site home page Giter Site logo

java-client-library's Introduction

Java Client Library for DeployR

The DeployR API exposes a wide range of R analytics services to client application developers. These services are exposed using standards based JSON/XML and are delivered by the DeployR server as Web services over HTTP(S).

The DeployR Java client library is provided to simplify the integration of DeployR services within Java client applications.

Links

Dependencies

Declarative JAR Dependencies: Maven Central Repository Artifacts

Artifacts for each official release (since 7.3.0) of the DeployR Java client library are published to the Maven Central repository.

ArtifactId: jDeployR

Using build frameworks such as Maven and Gradle your Java client application can simply declare a dependency on the appropriate version of the jDeployR artifact to ensure all required JAR dependencies are resolved and available at runtime.

Bundled JAR Dependencies

If you are not defining your DeployR client library JAR dependencies using declarative tools then you must ensure the required JAR files are placed directly on your application CLASSPATH.

Besides the DeployR Java client library JAR itself, jDeployR-<version>.jar, there are a number of 3rd party JAR file dependencies. These additional JAR file dependencies are provided for your convenience in the lib directory within this repository.

Building the Java Client Library

A Gradle build script is provided to build the DeployR Java client library:

build.gradle

By default, the build will generate a version of the jDeployR-<version>.jar file in the build/libs directory.

You do not need to install Gradle before running these commands. To build the DeployR Java client library a Unix based OS, run the following shell script:

gradlew build

To build the DeployR Java client library on a Windows based OS, run the following batch file:

gradlew.bat build

Examples

The DeployR Java client library ships with a number of sample applications provided to demonstrate some of the key featues introduced by the Quick Start Tutorial for the Java client library. See here for details.

The DeployR Java client library also ships with a set of unit tests. See here for details.

License

Copyright (C) 2010-2016, Microsoft Corporation

This program is licensed to you under the terms of Version 2.0 of the Apache License. This program is distributed WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0) for more details.

java-client-library's People

Contributors

danhartl avatar david-russell avatar microsoft-github-policy-service[bot] avatar sichoudh avatar swells avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

java-client-library's Issues

Update attach package tests

Update attach package tests to accommodate server logic changes of not automatically installing R packages when library("pkg") returns FALSE.

RStringVector I/O of `NULL` values should be consistent with R vectors

When we pass a RStringVector from the client with all NULL values we get incorrect and inconsistent results:

  1. R console output produces boolean/logical True - incorrect
  2. Return type in the calling client is RDataNA which is not a vector with NULL values - incorrect

Results should be consistent with R, for example:

> x <- c(NULL, NULL, NULL, NULL)
> x
NULL

> y <- c(NULL, NULL, "foo", NULL)
> y
[1] "foo"

Reproduce:

List<String> v = new ArrayList<String>();
v.add(null);
v.add(null);
v.add(null);
v.add(null);
RDataFactory.createStringVector("x", v);

List<String> v = new ArrayList<String>();
v.add(null);
v.add(null);
v.add("foo");
v.add(null);
RDataFactory.createStringVector("y", v);

View response. It should be consistent with R vectors.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.