# io.github.libtmux.transport.Idempotence

- **Module:** io.github.libtmux.transport
- **Package:** io.github.libtmux:libtmux
- **Language:** Java
- **Kind:** enum
- **Source:** https://github.com/libtmux/libtmux-java/blob/f56392b5d9bc7f1f9c1631842333fb90f3d82d40/libtmux/src/main/java/io/github/libtmux/transport/Idempotence.java#L13
- **Page:** https://libtmux.org/en/java/latest/reference/io-github-libtmux-transport-idempotence-idempotence/

Whether running a request twice leaves tmux as running it once does.

Decided from the commands themselves: a request is idempotent only when every command in it
reads and changes nothing. Anything this library cannot tell is a read counts as a change, so a
failure never reports a mutation as safe to resend.

## Members

### Other members

- `IDEMPOTENT` (constant): Every command only reads; sending it again cannot change tmux.
- `NOT_IDEMPOTENT` (constant): At least one command may change tmux, so a second send may apply it twice.
- `of` (method): The idempotence of a request made of {@code commands}, each an argv.
