AnnoyODroid

A Hearthstone API wrapper for Java and Android

Introduction

AnnoyODroid wraps all Hearthstone API calls into an easy-to-use Java object. TODO SHOW OBJECT CREATION EXAMPLE

public interface GitHubService {
  @GET("/users/{user}/repos")
  List<Repo> listRepos(@Path("user") String user);
}

AnnoyODroid supports three different usage patterns: synchronous, callback-based asynchronous and observable-based asynchronous.

Synchronous usage

You can execute synchronous requests that block the issuer thread for their duration. TODO SHOW SYNCHRONOUS EXAMPLE

RestAdapter restAdapter = new RestAdapter.Builder()
    .setEndpoint("https://api.github.com")
    .build();

GitHubService service = restAdapter.create(GitHubService.class);

Callback-based asynchronous usage

You can trigger the execution of requests that are automatically delegated to background threads, and then get the corresponding call in your Callback. TODO SHOW CALLBACK ASYNCHRONOUS EXAMPLE

RestAdapter restAdapter = new RestAdapter.Builder()
    .setEndpoint("https://api.github.com")
    .build();

GitHubService service = restAdapter.create(GitHubService.class);

Observable-based asynchronous usage

You can trigger the execution of requests that are automatically delegated to background threads, and then react to the corresponding Observables. TODO SHOW REACTIVE ASYNCHRONOUS EXAMPLE

RestAdapter restAdapter = new RestAdapter.Builder()
    .setEndpoint("https://api.github.com")
    .build();

GitHubService service = restAdapter.create(GitHubService.class);

Download

The AnnoyODroid source code and this website are both available on GitHub.

Gradle

repositories {
    maven { url "https://jitpack.io" }
}

dependencies {
    compile 'com.github.stoyicker:annoyodroid:(insert latest version)'
}

Maven

<repository>
    <id>jitpack.io</id>
    <url>https://jitpack.io<url>
</repository>

<dependency>
    <groupId>com.github.stoyicker</groupId>
    <artifactId>annoyodroid</artifactId>
    <version>(insert latest version)</version>
</dependency>

AnnoyODroid requires at minimum API level 9.

Contributing

If you would like to contribute code you can do so through GitHub by forking the repository and sending a pull request.

When submitting code, please make every effort to follow existing conventions and style in order to keep the code as readable as possible. Please also make sure your code compiles by.

Before your code can be accepted into the project you must also sign the Individual Contributor License Agreement (CLA).

It is recommended that you read the guidelines for contributing for more detailed guidelines.

License

AnnoyODroid (c) by Jorge Antonio Diaz-Benito Soriano

AnnoyODroid is licensed under a
Creative Commons Attribution 4.0 International License.

You should have received a copy of the license along with this
work. If not, see http://creativecommons.org/licenses/by/4.0/.