design_pytterns.observer package¶
EventPublisher class¶
-
class
design_pytterns.observer.
EventPublisher
(events: Sequence[Hashable])¶ Bases:
object
Event based Publisher-pattern.
- Parameters
events (Sequence) – The sequence that contains all the possible hashable events
-
notify
(event: Hashable, *args: Any, **kwargs: Any) → None¶ Execute the
update
method of all the event subscribers.- Parameters
event (Hashable) – The event which all its subscribers are notified.
*args (Any) – Variable length contextual arguments.
**kwargs (Any) – Contextual keyword arguments.
-
subscribe
(event: Hashable, subscriber: design_pytterns.observer.subscriber.Subscriber) → None¶ Register a new subscriber for an event.
If the subscriber instance is already registered for the event the subscription is discarded.
- Parameters
event (Hashable) – The event which the subscriber registers to.
subscriber (Subscriber) – The subscriber instance to register.
-
unsubscribe
(event: Hashable, subscriber: design_pytterns.observer.subscriber.Subscriber) → None¶ Deregister the subscriber from an event.
If the subscriber instance is unknown for the given event, the unsubscription is discarded.
- Parameters
event (Hashable) – The event which the subscriber deregister from.
subscriber (Subscriber) – The subscriber instance to deregister.
Publisher class¶
-
class
design_pytterns.observer.
Publisher
¶ Bases:
object
Generic Publisher-pattern.
-
notify
(*args: Any, **kwargs: Any) → None¶ Execute the
update
method of all the registered subscribers.- Parameters
*args (Any) – Variable length contextual arguments.
**kwargs (Any) – Contextual keyword arguments.
-
subscribe
(subscriber: design_pytterns.observer.subscriber.Subscriber) → None¶ Register a new subscriber.
If the subscriber instance is already registered the subscription is discarded.
- Parameters
subscriber (Subscriber) – The subscriber instance to register.
-
unsubscribe
(subscriber: design_pytterns.observer.subscriber.Subscriber) → None¶ Deregister the subscriber.
If the subscriber instance is unknown, the unsubscription is discarded.
- Parameters
subscriber (Subscriber) – The subscriber instance to deregister.
-