-```
-Copyright (C) The Arvados Authors. All rights reserved.
-
-SPDX-License-Identifier: CC-BY-SA-3.0
-```
-
-# Arvados Java SDK
-
-##### About
-Arvados Java Client allows to access Arvados servers and uses two APIs:
-* lower level [Keep Server API](https://doc.arvados.org/api/index.html)
-* higher level [Keep-Web API](https://godoc.org/github.com/curoverse/arvados/services/keep-web) (when needed)
-
-##### Required Java version
-This SDK requires Java 8+
-
-##### Logging
-
-SLF4J is used for logging. Concrete logging framework and configuration must be provided by a client.
+[comment]: # (Copyright © The Arvados Authors. All rights reserved.)
+[comment]: # ()
+[comment]: # (SPDX-License-Identifier: CC-BY-SA-3.0)
-##### Configuration
+[![Join the chat at https://gitter.im/arvados/community](https://badges.gitter.im/arvados/community.svg)](https://gitter.im/arvados/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) | [Installing Arvados](https://doc.arvados.org/install/index.html) | [Installing Client SDKs](https://doc.arvados.org/sdk/index.html) | [Report a bug](https://dev.arvados.org/projects/arvados/issues/new) | [Development and Contributing](CONTRIBUTING.md)
-[TypeSafe Configuration](https://github.com/lightbend/config) is used for configuring this library.
+[Arvados](https://arvados.org) is a free software distributed computing platform
+for bioinformatics, data science, and high throughput analysis of massive data
+sets. Arvados supports a variety of cloud, cluster and HPC environments.
-Please, have a look at java/resources/reference.conf for default values provided with this library.
+Arvados consists of:
-* **keepweb-host** - change to host of your Keep-Web installation
-* **keepweb-port** - change to port of your Keep-Web installation
-* **host** - change to host of your Arvados installation
-* **port** - change to port of your Arvados installation
-* **token** - authenticates registered user, one must provide
- [token obtained from Arvados Workbench](https://doc.arvados.org/user/reference/api-tokens.html)
-* **protocol** - don't change to unless really needed
-* **host-insecure** - insecure communication with Arvados (ignores SSL certificate verification),
- don't change to *true* unless really needed
-* **split-size** - size of chunk files in megabytes
-* **temp-dir** - temporary chunk files storage
-* **copies** - amount of chunk files duplicates per Keep server
-* **retries** - in case of chunk files send failure this should allow to repeat send
- (*NOTE*: this parameter is not used at the moment but was left for future improvements)
+* *Keep*: a petabyte-scale content-addressed distributed storage system for managing and
+ storing collections of files, accessible via a variety of methods including
+ Arvados APIs, WebDAV, and FUSE file system mount.
-In order to override default settings one can create application.conf file in an application.
-Example: src/test/resources/application.conf.
+* *Crunch*: a Docker-based cloud and HPC workflow engine designed providing
+ strong versioning, reproducibilty, and provenance of large-scale computations.
-Alternatively ExternalConfigProvider class can be used to pass configuration via code.
-ExternalConfigProvider comes with a builder and all of the above values must be provided in order for it to work properly.
+* Related services and components including a web workbench for managing files
+ and compute jobs, REST APIs, SDKs, and other tools.
-ArvadosFacade has two constructors, one without arguments that uses values from reference.conf and second one
-taking ExternalConfigProvider as an argument.
+## Quick start
-##### API clients
+To try out Arvados on your local workstation, you can use Arvbox, which
+provides Arvados components pre-installed in a Docker container (requires
+Docker 1.9+). After cloning the Arvados git repository:
-All API clients inherit from BaseStandardApiClient. This class contains implementation of all
-common methods as described in http://doc.arvados.org/api/methods.html.
-
-Parameters provided to common or specific methods are String UUID or fields wrapped in Java objects. For example:
+```
+$ cd arvados/tools/arvbox/bin
+$ ./arvbox start localdemo
+```
-```java
-String uuid = "ardev-4zz18-rxcql7qwyakg1r1";
+In this mode you will only be able to connect to Arvbox from the same host. To
+configure Arvbox to be accessible over a network and for other options see
+http://doc.arvados.org/install/arvbox.html for details.
-Collection actual = client.get(uuid);
-```
+## Documentation
-```java
-ListArgument listArgument = ListArgument.builder()
- .filters(Arrays.asList(
- Filter.of("owner_uuid", Operator.LIKE, "ardev%"),
- Filter.of("name", Operator.LIKE, "Super%"),
- Filter.of("portable_data_hash", Operator.IN, Lists.newArrayList("54f6d9f59065d3c009d4306660989379+65")
- )))
- .build();
+Complete documentation, including the [User Guide](https://doc.arvados.org/user/index.html), [Installation documentation](https://doc.arvados.org/install/index.html) and
+[API documentation](https://doc.arvados.org/api/index.html) is available at http://doc.arvados.org/
-CollectionList actual = client.list(listArgument);
-```
+If you wish to build the Arvados documentation from a local git clone, see
+doc/README.textile for instructions.
-Non-standard API clients must inherit from BaseApiClient.
-For example: KeepServerApiClient communicates directly with Keep servers using exclusively non-common methods.
+## Community
-##### Business logic
+[![Join the chat at https://gitter.im/arvados/community](https://badges.gitter.im/arvados/community.svg)](https://gitter.im/arvados/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-More advanced API data handling could be implemented as *Facade* classes.
-In current version functionalities provided by SDK are handled by *ArvadosFacade*.
-They include:
-* **downloading single file from collection** - using Keep-Web
-* **downloading whole collection** - using Keep-Web or Keep Server API
-* **listing file info from certain collection** - information is returned as list of *FileTokens* providing file details
-* **uploading single file** - to either new or existing collection
-* **uploading list of files** - to either new or existing collection
-* **creating an empty collection**
-* **getting current user info**
-* **listing current user's collections**
-* **creating new project**
-* **deleting certain collection**
+The [Arvados community channel](https://gitter.im/arvados/community)
+channel at [gitter.im](https://gitter.im) is available for live
+discussion and support.
-##### Note regarding Keep-Web
+The [Arvados developement channel](https://gitter.im/arvados/development)
+channel at [gitter.im](https://gitter.im) is used to coordinate development.
-Current version requires both Keep Web and standard Keep Server API configured in order to use Keep-Web functionalities.
+The [Arvados user mailing list](http://lists.arvados.org/mailman/listinfo/arvados)
+is used to announce new versions and other news.
-##### Integration tests
+## Reporting bugs
-In order to run integration tests all fields within following configuration file must be provided:
-```java
-src/test/resources/integration-test-appliation.conf
-```
-Parameter **integration-tests.project-uuid** should contain UUID of one project available to user,
-whose token was provided within configuration file.
+[Report a bug](https://dev.arvados.org/projects/arvados/issues/new) on the [dev.arvados.org Redmine site](https://dev.arvados.org).
-Integration tests require connection to real Arvados server.
+## Development and Contributing
-##### Note regarding file naming
+See [CONTRIBUTING.md](CONTRIBUTING.md) for information about Arvados development and how to contribute to the Arvados project.
-While uploading via this SDK all uploaded files within single collection must have different names.
-This applies also to uploading files to already existing collection.
-Renaming files with duplicate names is not implemented in current version.
+## Licensing
+Arvados is Free Software. See COPYING for information about Arvados Free
+Software licenses.