Skip to content

Latest commit

 

History

History
57 lines (42 loc) · 1.62 KB

README.md

File metadata and controls

57 lines (42 loc) · 1.62 KB

#Scheelite Build Status Coverage Status

Lightweight Java finite state machine library.

##Features

  • Entry/exit actions
  • Sub states
  • Triggerless transitions
  • Immutable state machine logic (no more than one instance needed)
  • Final states
  • Completion transition when a composite state is finished (reaches a final state)
  • PlanUML diagram writer

##Concepts See http://en.wikipedia.org/wiki/UML_state_machine.

###Maven

Current version is 2.1.

<dependency>
    <groupId>com.headstartech.scheelite</groupId>
    <artifactId>scheelite-core</artifactId>
    <version>2.1.0.RELEASE</version>
</dependency>
<dependency>
    <groupId>com.headstartech.scheelite</groupId>
    <artifactId>scheelite-diagram</artifactId>
    <version>2.1.0.RELEASE</version>
</dependency>

##Changes

###2.1

  • Explicit support for final states
  • Completion transition when a composite state is finished (reaches a final state)
  • PlantUML diagram writer

###2.0

New features

  • Added support for getting state machine configuration from state machine instance.

Breaking changes

  • Possibility to throw checked exceptions from states, actions and guards.
  • Guard interface changed

##License

Scheelite is Open Source software released under the Apache 2.0 license.