Alpine

A lightweight event system for Java 8+

MIT License

Stars
95

Bot releases are hidden (Show)

Alpine - 3.1.0 Latest Release

Published by ZeroMemes over 1 year ago

Alpine - 3.0.2

Published by ZeroMemes over 1 year ago

Alpine - 3.0.1

Published by ZeroMemes over 1 year ago

Alpine - 3.0.0

Published by ZeroMemes over 1 year ago

Alpine - 2.2.1

Published by ZeroMemes over 1 year ago

2.2.1

Fixed

  • Parameterized events in Listener fields now get resolved without throwing an exception
Alpine - 2.2.0

Published by ZeroMemes over 1 year ago

2.2.0

Changed

  • Attached event buses now only receive parent post calls
Alpine - 2.1.0

Published by ZeroMemes over 1 year ago

2.1.0

Added

  • Added Listener constructors which take no filter arguments.
Alpine - 2.0.0

Published by ZeroMemes over 1 year ago

2.0.0

Added

  • This project now adheres to Semantic Versioning
  • EventManager provides a builder to configure new options:
    • Discovery of Listener fields in EventSubscriber supertypes
    • Allow listeners to accept supertypes of events.
  • Added Listener field target correction upon registry
    • Read from field's type parameter, type parameter population is now enforced
    • Specifying event target class explicitly is no longer required for method references

Changed

  • Made Listener final
  • Failure to read a valid Listener field now results in hard failure
  • Refactoring
    • Collapsed type packages
  • Renaming
    • Listenable -> EventSubscriber
    • EventHandler -> Subscribe
    • EventState -> EventPhase
    • ICancellable -> Cancellable
    • Cancellable -> CancellableEvent

Removed

  • Removed EventHook interface
  • Removed MethodRefListener in favor of new Listener functionality
Alpine - 1.9

Published by ZeroMemes over 1 year ago

1.9

Changed

  • Increased range of priorities by using 4 byte integers instead of single byte.
  • Priority behavior reversed
    • Higher integer literals are reflective of higher priorities, therefore, they will now be called sooner
  • API breaking refactoring
  • Documentation improvements

Removed

  • Removed the limitation on priority values
Alpine - 1.8

Published by ZeroMemes over 1 year ago

1.8

Added

  • Added MethodRefListener
    • Supports method reference listener bodies
  • Added ICancellable interface
    • Existing Cancellable class implements it

Changed

  • Any object containing Listener fields that is subscribed must implement Listenable
  • Individual Listeners can be subscribed
  • Split the event bus attachable functionality into a new AttachableEventBus interface
    • Added a implementation of it: AttachableEventManager
  • Refactored the event bus related classes into a bus package
  • Renamed the type package to event
Alpine - 1.7

Published by ZeroMemes over 1 year ago

1.7

Fixed

  • Fixed issue where subscribe/unsubscribe methods with Iterable parameters would never be called.
    • Renamed array/iterable parameterized subscribe/unsubscribe methods to subscribeAll/unsubscribeAll
Alpine - 1.6

Published by ZeroMemes over 1 year ago

1.6

Changed

  • Made EventManager thread safe
Alpine - 1.5

Published by ZeroMemes over 1 year ago

1.5

Changed

  • Optimized subscribing and unsubscribing
Alpine - 1.4

Published by ZeroMemes over 1 year ago

1.4

Changed

  • Removed final modifier for EventManager
Alpine - 1.3

Published by ZeroMemes over 1 year ago

1.3

Added

  • Added support for "child" event buses
    • Event buses may now be "attached" to other event buses
Alpine - 1.2

Published by ZeroMemes over 1 year ago

Initial Release

Badges
Extracted from project README
Releases License Status Coverage Code Size