Evee is an event dispatcher port of the Symfony Event Dispatcher Component. It allows your applications to communicate with one another by dispatching and listening for events.
Project description
evee
=====
[](https://travis-ci.org/onema/evee)
[](https://www.codacy.com/app/onema/evee?utm_source=github.com&utm_medium=referral&utm_content=onema/evee&utm_campaign=Badge_Grade)
[](https://www.codacy.com/app/onema/evee?utm_source=github.com&utm_medium=referral&utm_content=onema/evee&utm_campaign=Badge_Coverage)
[](https://codeclimate.com/github/onema/evee)
[](https://scrutinizer-ci.com/g/onema/evee/?branch=master)
Summary
_______
This is a port for Python `v3.6+` of the Symfony Event Dispatcher.
This event dispatcher follows a pattern called the ["Mediator" pattern](https://sourcemaking.com/design_patterns/mediator).
> In software engineering, the mediator pattern defines an object that encapsulates how a set of objects interact. This pattern is considered to be a behavioral pattern due to the way it can alter the program's running behavior.
Install
--------
`pip install evee`
Usage
--------
### Dispatching simple events
```python
from evee import EventDispatcher
from evee import Event
def pre_foo(self, event: Event, event_name: str):
print("pre_foo was called")
def post_foo(self, event: Event, event_name: str):
print("post_foo was called")
dispatcher = EventDispatcher()
dispatcher.add_listener('pre.foo', pre_foo)
dispatcher.add_listener('post.foo', post_foo)
dispatcher.dispatch('pre.foo')
print('Doo Foo work')
dispatcher.dispatch('post.foo')
```
=====
[](https://travis-ci.org/onema/evee)
[](https://www.codacy.com/app/onema/evee?utm_source=github.com&utm_medium=referral&utm_content=onema/evee&utm_campaign=Badge_Grade)
[](https://www.codacy.com/app/onema/evee?utm_source=github.com&utm_medium=referral&utm_content=onema/evee&utm_campaign=Badge_Coverage)
[](https://codeclimate.com/github/onema/evee)
[](https://scrutinizer-ci.com/g/onema/evee/?branch=master)
Summary
_______
This is a port for Python `v3.6+` of the Symfony Event Dispatcher.
This event dispatcher follows a pattern called the ["Mediator" pattern](https://sourcemaking.com/design_patterns/mediator).
> In software engineering, the mediator pattern defines an object that encapsulates how a set of objects interact. This pattern is considered to be a behavioral pattern due to the way it can alter the program's running behavior.
Install
--------
`pip install evee`
Usage
--------
### Dispatching simple events
```python
from evee import EventDispatcher
from evee import Event
def pre_foo(self, event: Event, event_name: str):
print("pre_foo was called")
def post_foo(self, event: Event, event_name: str):
print("post_foo was called")
dispatcher = EventDispatcher()
dispatcher.add_listener('pre.foo', pre_foo)
dispatcher.add_listener('post.foo', post_foo)
dispatcher.dispatch('pre.foo')
print('Doo Foo work')
dispatcher.dispatch('post.foo')
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
evee-0.2.0.tar.gz
(4.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
evee-0.2.0-py3-none-any.whl
(15.9 kB
view details)
File details
Details for the file evee-0.2.0.tar.gz.
File metadata
- Download URL: evee-0.2.0.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/36.2.7 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c62ceeb5391a6268712bfb47ba876064c3387911f00c4b1515180be461545503
|
|
| MD5 |
7d16d7232cee7117a16ea28e68750f04
|
|
| BLAKE2b-256 |
f3b0ece07628dd92ed84b78203a2f9f2bb3e3d126ec56b8689666cca2153bdfc
|
File details
Details for the file evee-0.2.0-py3-none-any.whl.
File metadata
- Download URL: evee-0.2.0-py3-none-any.whl
- Upload date:
- Size: 15.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/36.2.7 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14c8ca2e36e35923737e2f869428565f74c937e55ff8517eacdccfd11f509880
|
|
| MD5 |
af6b89e8ab2c8a89b802be1f3b8322c7
|
|
| BLAKE2b-256 |
0c894cb7ea725b1ce1b0296a7855a8031bd26990cbeefecb1874f2bb1c7a117a
|