Merge branch '10346-rearrange-api-docs' closes #10346
[arvados.git] / doc / sdk / java / index.html.textile.liquid
index d24983520eb448a58f127ace646315e59b5b5f19..27984b2fe427404e872ac394813d6e1ee218eef2 100644 (file)
@@ -2,8 +2,7 @@
 layout: default
 navsection: sdk
 navmenu: Java
-title: "Java SDK"
-
+title: "Installation"
 ...
 
 The Java SDK provides a generic set of wrappers so you can make API calls in java.
@@ -11,12 +10,10 @@ The Java SDK provides a generic set of wrappers so you can make API calls in jav
 h3. Introdution
 
 * The Java SDK requires Java 6 or later
-  
+
 * The Java SDK is implemented as a maven project. Hence, you would need a working
 maven environment to be able to build the source code. If you do not have maven setup,
-you may find the following link useful. 
-
-<code class="userinput">http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html</code>
+you may find the "Maven in 5 Minutes":http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html link useful.
 
 * In this document $ARVADOS_HOME is used to refer to the directory where
 arvados code is cloned in your system. For ex: $ARVADOS_HOME = $HOME/arvados
@@ -24,27 +21,23 @@ arvados code is cloned in your system. For ex: $ARVADOS_HOME = $HOME/arvados
 
 h3. Setting up the environment
 
-* The SDK requires a running Arvados API server. The information about the
-         API server needs to be passed to the SDK using environment variables or
-         during the construction of the Arvados instance.
-         
-* Below are the details about the environment variables and example setup
-         statements for a .bashrc file.
-       
+* The SDK requires a running Arvados API server. The following information
+         about the API server needs to be passed to the SDK using environment
+         variables or during the construction of the Arvados instance.
+
 <notextile>
 <pre>
 ARVADOS_API_TOKEN: API client token to be used to authorize with API server.
-$ <code class="userinput">export ARVADOS_API_TOKEN=z40gplmla6i58rsg96jhg5u41ewdl5rj4g1py2s6e2lsc3</code>
 
 ARVADOS_API_HOST: Host name of the API server.
-$ <code class="userinput">export ARVADOS_API_HOST=localhost:3001</code>
 
 ARVADOS_API_HOST_INSECURE: Set this to true if you are using self-signed
-certificates and would like to bypass certificate validations.
-$ <code class="userinput">export ARVADOS_API_HOST_INSECURE=true</code>
+    certificates and would like to bypass certificate validations.
 </pre>
 </notextile>
 
+* Please see "api-tokens":{{site.baseurl}}/user/reference/api-tokens.html for full details.
+
 
 h3. Building the Arvados SDK
 
@@ -60,34 +53,39 @@ $ <code class="userinput">mvn -Dmaven.test.skip=true clean package</code>
 
 h3. Implementing your code to use SDK
 
-<code class="userinput">$ARVADOS_HOME/sdk/java/ArvadosSDKJavaExample.java</code> serves as a sample
-implementation using the SDK.
+* The following two sample programs serve as sample implementations using the SDK.
+<code class="userinput">$ARVADOS_HOME/sdk/java/ArvadosSDKJavaExample.java</code> is a simple program
+        that makes a few calls to API server.
+<code class="userinput">$ARVADOS_HOME/sdk/java/ArvadosSDKJavaExampleWithPrompt.java</code> can be
+        used to make calls to API server interactively.
 
-Please use this file to see how you would want use the SDK from your java program.
+Please use these implementations to see how you would use the SDK from your java program.
 
 Also, refer to <code class="userinput">$ARVADOS_HOME/arvados/sdk/java/src/test/java/org/arvados/sdk/java/ArvadosTest.java</code>
 for more sample API invocation examples.
 
-Below are the steps to compile and run this java program.
+Below are the steps to compile and run these java program.
 
-* <code class="userinput">ArvadosSDKJavaExample.java</code> creates an instance of Arvados SDK class and uses it to
+* These programs create an instance of Arvados SDK class and use it to
 make various <code class="userinput">call</code> requests.
 
-* To compile ArvadosSDKJavaExample.java
+* To compile the examples
 <notextile>
 <pre>
-$ <code class="userinput">javac -cp $ARVADOS_HOME/sdk/java/target/arvados-sdk-1.0-jar-with-dependencies.jar \
-ArvadosSDKJavaExample.java</code>
-This results in the generation of the ArvadosSDKJavaExample.class file
-in the same directory as the java file
+$ <code class="userinput">javac -cp $ARVADOS_HOME/sdk/java/target/arvados-sdk-1.1-jar-with-dependencies.jar \
+ArvadosSDKJavaExample*.java</code>
+This results in the generation of the ArvadosSDKJavaExample*.class files
+in the same directory as the java files
 </pre>
 </notextile>
 
-* To run the sample
+* To run the samples
 <notextile>
 <pre>
-$ <code class="userinput">java -cp .:$ARVADOS_HOME/sdk/java/target/arvados-sdk-1.0-jar-with-dependencies.jar \
+$ <code class="userinput">java -cp .:$ARVADOS_HOME/sdk/java/target/arvados-sdk-1.1-jar-with-dependencies.jar \
 ArvadosSDKJavaExample</code>
+$ <code class="userinput">java -cp .:$ARVADOS_HOME/sdk/java/target/arvados-sdk-1.1-jar-with-dependencies.jar \
+ArvadosSDKJavaExampleWithPrompt</code>
 </pre>
 </notextile>
 
@@ -116,15 +114,26 @@ h3. Using the SDK in eclipse
 
 * To develop in eclipse, you can use the provided <code class="userinput">eclipse project</code>
 
-* Install <code class="userinput">m2eclipse</code> plugin in your eclipse
-* Set <code class="userinput">M2_REPO</code> in eclipse to your <code class="userinput">.m2/repository</code> directory
+* Install "m2eclipse":https://www.eclipse.org/m2e/ plugin in your eclipse
+
+* Set <code class="userinput">M2_REPO</code> classpath variable in eclipse to point to your local repository.
+The local repository is usually located in your home directory at <code class="userinput">$HOME/.m2/repository</code>.
 
-* Open the SDK project in eclipse
 <notextile>
 <pre>
-File -> Import -> Existing Projects into Workspace -> Next -> Browse
-and select $ARVADOS_HOME/sdk/java
+In Eclipse IDE:
+Window -> Preferences -> Java -> Build Path -> Classpath Variables
+    Click on the "New..." button and add a new
+    M2_REPO variable and set it to your local Maven repository
 </pre>
 </notextile>
 
 
+* Open the SDK project in eclipse
+<notextile>
+<pre>
+In Eclipse IDE:
+File -> Import -> Existing Projects into Workspace -> Next -> Browse
+    and select $ARVADOS_HOME/sdk/java
+</pre>
+</notextile>