An open API service indexing awesome lists of open source software.

https://github.com/robertvazan/hookless-time

Hookless reactive adapters for classes from java.time package.
https://github.com/robertvazan/hookless-time

hookless java-library java-time reactive reactive-programming

Last synced: 4 months ago
JSON representation

Hookless reactive adapters for classes from java.time package.

Awesome Lists containing this project

README

        

[![SWUbanner](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner2-direct.svg)](https://github.com/vshymanskyy/StandWithUkraine/blob/main/docs/README.md)

# Reactive time for Hookless

[![Maven Central](https://img.shields.io/maven-central/v/com.machinezoo.hookless/hookless-time)](https://central.sonatype.com/artifact/com.machinezoo.hookless/hookless-time)
[![Build status](https://github.com/robertvazan/hookless-time/workflows/build/badge.svg)](https://github.com/robertvazan/hookless-time/actions/workflows/build.yml)
[![Test coverage](https://codecov.io/gh/robertvazan/hookless-time/branch/master/graph/badge.svg)](https://codecov.io/gh/robertvazan/hookless-time)

Reactive time as implemented in classes [`ReactiveInstant`](https://hookless.machinezoo.com/javadocs/time/com.machinezoo.hookless.time/com/machinezoo/hookless/time/ReactiveInstant.html) and [`ReactiveDuration`](https://hookless.machinezoo.com/javadocs/time/com.machinezoo.hookless.time/com/machinezoo/hookless/time/ReactiveDuration.html)
is a [reactive adapter](https://hookless.machinezoo.com/adapters) for Java's
[`Instant`](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Instant.html)
and [`Duration`](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Duration.html) classes.
Reactive time acts as a reactive data source that continuously changes.
Hookless implementation of reactive time is smart enough to wake up reactive computation only when relevant time threshold is reached.
This allows Hookless to provide reactive time with millisecond resolution (or better, depending on platform) with little overhead.

More on [homepage](https://hookless.machinezoo.com/time).

## Status

Experimental. [Stagean](https://stagean.machinezoo.com/) is used to track progress on class and method level.

## Getting started

See [homepage](https://hookless.machinezoo.com/time).

## Documentation

* [Homepage](https://hookless.machinezoo.com/time)
* [Javadoc](https://hookless.machinezoo.com/javadocs/time/com.machinezoo.hookless.time/com/machinezoo/hookless/time/package-summary.html)

Some APIs are undocumented. You might have to peek in the [source code](src/main/java/com/machinezoo/hookless/time).

## Feedback

Bug reports and pull requests are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md).

## License

Distributed under [Apache License 2.0](LICENSE).