Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrshoenel/java-state-machines
A repository with a maven package for building state machines (NFAs, DFAs etc.)
https://github.com/mrshoenel/java-state-machines
dfa java maven nfa state state-machine
Last synced: 27 days ago
JSON representation
A repository with a maven package for building state machines (NFAs, DFAs etc.)
- Host: GitHub
- URL: https://github.com/mrshoenel/java-state-machines
- Owner: MrShoenel
- License: mit
- Created: 2019-01-03T17:04:23.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-16T16:17:12.000Z (about 6 years ago)
- Last Synced: 2023-08-02T06:57:44.697Z (over 1 year ago)
- Topics: dfa, java, maven, nfa, state, state-machine
- Language: Java
- Size: 66.4 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# State Machines [![Coverage Status](https://coveralls.io/repos/github/MrShoenel/java-state-machines/badge.svg?branch=master)](https://coveralls.io/github/MrShoenel/java-state-machines?branch=master)
A `Java` library packaged for _maven_ to build state(-ful) machines, such as DFAs or NFAs. Supports transitions, custom arguments for transitions and validation in each state(-machine) of available actions.Comes unit-tested and contains some examples.
## Add to your project [![Maven Central](https://img.shields.io/maven-central/v/io.github.mrshoenel/stateMachines.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22io.github.mrshoenel%22%20AND%20a:%22stateMachines%22)
Open up your `pom.xml` and add this (the releases are synced now to maven central):
<dependency>
<groupId>io.github.mrshoenel</groupId>
<artifactId>stateMachines</artifactId>
<version>1.2.3/version> <!-- check latest version in pom.xml -->
</dependency>## Coverage reporting
This is mostly a note to myself, run following command for all tests, generating jacoco agent and report and submit to coveralls.io:
mvn clean test jacoco:prepare-agent jacoco:report coveralls:report -DrepoToken=<token>## Release to Maven central
Again, a note to myself for staging the repo at OSSRH Sonatype and then releasing to central. We have auto-release set to true, so this command is sufficient:
mvn clean deploy
Otherwise, we would need to call
mvn nexus-staging:release
afterwards (c.f. https://central.sonatype.org/pages/apache-maven.html).