frsyuki / robustools

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Robustools

Robustools is a set of small libraries that bring more robustness to your JVM-based application.

  • FaultTolerantCache is a cache that returns cached entry longer than TTL when cache reloading fails.

  • RetryingExecutor executes a Callable or Runnable with retrying. Retrying interval is exponential back-off.

  • LeakyBucket implements the leaky bucket algorithm that is useful for throughput control and API rate limiting.

Robustools doesn't have runtime library dependencies.

Document

API reference is available at javaodc/index.html.

Build configuration

Gradle

Add following line to repositories { ... } block in your build.gradle:

repositories {
  maven { url 'https://maven.pkg.github.com/frsyuki' }  // Robustools by frsyuki
}

Then add following dependency line to dependencies { ... } block:

dependencies {
  compile 'robustools:robustools:1.0'
}

Maven

Add following entity to <repositories> tag in your pom.xml:

<repository>
  <id>github</id>
  <name>Robustools by frsyuki</name>
  <url>https://maven.pkg.github.com/frsyuki</url>
</repository>

Then add following entity to ` tag:

<dependencies>
  <dependency>
    <groupId>robustools</groupId>
    <artifactId>robustools</artifactId>
    <version>1.0</version>
  </dependency>
</dependencies>

Development

Build

$ ./gradlew --info check build javadoc
$ cp -a build/docs/javadoc ./
$ git add javadoc

Release

$ edit ChangeLog
$ edit build.gradle  #=> increment version
$ ./gradlew clean check
$ ./gradlew publish

About

License:Apache License 2.0


Languages

Language:Java 100.0%