Documentation
¶
Index ¶
- type DefaultEmitterLogger
- func (e *DefaultEmitterLogger) Debug(event *Event, factoryParams ...any)
- func (e *DefaultEmitterLogger) Error(event *Event, factoryParams ...any)
- func (e *DefaultEmitterLogger) Fatal(event *Event, factoryParams ...any)
- func (e *DefaultEmitterLogger) Info(event *Event, factoryParams ...any)
- func (e *DefaultEmitterLogger) Trace(event *Event, factoryParams ...any)
- func (e *DefaultEmitterLogger) Warn(event *Event, factoryParams ...any)
- type DefaultEventEmitter
- func (e *DefaultEventEmitter) Emit(event *Event)
- func (e *DefaultEventEmitter) RegisterGlobalListener(callback EventCallback) EventEmitter
- func (e *DefaultEventEmitter) RegisterListener(eventType EventType, callback EventCallback) EventEmitter
- func (e *DefaultEventEmitter) RemoveGlobalListener(id string)
- func (e *DefaultEventEmitter) RemoveListener(eventType EventType, id string)
- func (e *DefaultEventEmitter) WithTimeout(timeout *time.Duration) *DefaultEventEmitter
- type EmitterLogger
- type Event
- type EventCallback
- type EventEmitter
- type EventType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefaultEmitterLogger ¶
type DefaultEmitterLogger struct {
// contains filtered or unexported fields
}
DefaultEmitterLogger is a struct that can emit events and log messages.
func NewEmitterLogger ¶
func NewEmitterLogger( eventEmitter EventEmitter, loggerFactoryFn logging.LoggerFactoryFn, ) *DefaultEmitterLogger
NewEmitterLogger creates a new EmitterLogger.
Parameters:
- eventEmitter: An EventEmitter.
- loggerFactoryFn: A LoggerFactoryFn.
Returns:
- *DefaultEmitterLogger: A new DefaultEmitterLogger instance.
func NewNoopEmitterLogger ¶
func NewNoopEmitterLogger() *DefaultEmitterLogger
NewNoopEmitterLogger creates a new EmitterLogger that does nothing.
Returns:
- *DefaultEmitterLogger: A new DefaultEmitterLogger instance.
func (*DefaultEmitterLogger) Debug ¶
func (e *DefaultEmitterLogger) Debug(event *Event, factoryParams ...any)
Debug emits an event and logs at the Debug level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
func (*DefaultEmitterLogger) Error ¶
func (e *DefaultEmitterLogger) Error(event *Event, factoryParams ...any)
Error emits an event and logs at the Error level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
func (*DefaultEmitterLogger) Fatal ¶
func (e *DefaultEmitterLogger) Fatal(event *Event, factoryParams ...any)
Fatal emits an event and logs at the Fatal level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
func (*DefaultEmitterLogger) Info ¶
func (e *DefaultEmitterLogger) Info(event *Event, factoryParams ...any)
Info emits an event and logs at the Info level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
func (*DefaultEmitterLogger) Trace ¶
func (e *DefaultEmitterLogger) Trace(event *Event, factoryParams ...any)
Trace emits an event and logs at the Trace level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
func (*DefaultEmitterLogger) Warn ¶
func (e *DefaultEmitterLogger) Warn(event *Event, factoryParams ...any)
Warn emits an event and logs at the Warn level.
Parameters:
- event The event to emit and log.
- factoryParams: The parameters to pass to the logger factory function.
type DefaultEventEmitter ¶
type DefaultEventEmitter struct {
// contains filtered or unexported fields
}
EventEmitter is responsible for emitting events.
func NewEventEmitter ¶
func NewEventEmitter() *DefaultEventEmitter
NewEventEmitter creates a new DefaultEventEmitter.
Parameters:
- opts: Options to configure the DefaultEventEmitter.
Returns:
- *DefaultEventEmitter: A new DefaultEventEmitter.
func (*DefaultEventEmitter) Emit ¶
func (e *DefaultEventEmitter) Emit(event *Event)
Emit emits an event to all registered listeners. It runs each callback in a separate goroutine. If timeout is set for the eventEmitter, the callbacks will be run with the specified timeout. If the timeout is exceeded, an error message will be printed to stderr.
Parameters:
- event: The event to emit.
Returns:
- *eventEmitter: The eventEmitter.
func (*DefaultEventEmitter) RegisterGlobalListener ¶
func (e *DefaultEventEmitter) RegisterGlobalListener( callback EventCallback, ) EventEmitter
RegisterGlobalListener registers a callback to listen to all events.
Parameters:
- callback: The function to call when an event is emitted.
Returns:
- *eventEmitter: The eventEmitter.
func (*DefaultEventEmitter) RegisterListener ¶
func (e *DefaultEventEmitter) RegisterListener( eventType EventType, callback EventCallback, ) EventEmitter
RegisterListener registers a listener for a specific event type.
Parameters:
- eventType: The type of the event.
- callback: The function to call when the event is emitted.
Returns:
- *eventEmitter: The eventEmitter.
func (*DefaultEventEmitter) RemoveGlobalListener ¶
func (e *DefaultEventEmitter) RemoveGlobalListener(id string)
RemoveGlobalListener removes a global listener based on its ID.
Parameters:
- id: The ID of the listener to remove.
Returns:
- *eventEmitter: The eventEmitter.
func (*DefaultEventEmitter) RemoveListener ¶
func (e *DefaultEventEmitter) RemoveListener( eventType EventType, id string, )
RemoveListener removes a listener for a specific event type.
Parameters:
- eventType: The type of the event.
- listener: The listener function.
Returns:
- *eventEmitter: The eventEmitter.
func (*DefaultEventEmitter) WithTimeout ¶
func (e *DefaultEventEmitter) WithTimeout( timeout *time.Duration, ) *DefaultEventEmitter
WithTimeout sets the timeout for each callback. If the timeout is exceeded, an error message will be printed to stderr. It will return a new eventEmitterOption.
Parameters:
- timeout: The timeout duration.
Returns:
- *DefaultEventEmitter: A new DefaultEventEmitter.
type EmitterLogger ¶
type EmitterLogger interface {
Debug(event *Event, factoryParams ...any)
Info(event *Event, factoryParams ...any)
Warn(event *Event, factoryParams ...any)
Error(event *Event, factoryParams ...any)
Fatal(event *Event, factoryParams ...any)
Trace(event *Event, factoryParams ...any)
}
EmitterLogger is an interface that can emit events and log messages.
type Event ¶
Event represents an emitted event.
type EventCallback ¶
type EventCallback func(event *Event)
EventCallback is a function that handles an event.
type EventEmitter ¶
type EventEmitter interface {
RegisterListener(eventType EventType, callback EventCallback) EventEmitter
RemoveListener(eventType EventType, id string)
Emit(event *Event)
}
EventEmitter is responsible for emitting events.