Documentation / listeners / com.femastudios.listeners / ListenersManager

ListenersManager

interface ListenersManager<in Interface : Any>

An object that allows to register (and unregister) listeners.

Functions

addStrongly

Adds a listener, keeping a strong reference. This means that if nobody else keeps a pointer to the listener, it won't be disposed by the Garbage Collector and will be kept in this object forever.

abstract fun addStrongly(listener: Interface): Unit

addWeakly

Adds a listener, keeping a weak reference. This means that if nobody else keeps a pointer to the listener, it'll at some point automatically disposed by the Garbage Collector.

abstract fun addWeakly(listener: Interface): Unit

contains

Returns whether or not the given listener is contained in this listener manager

abstract fun contains(listener: Interface): Boolean

remove

Removes the specified listener.

abstract fun remove(listener: Interface): Unit

Inheritors

BaseListenersManager

Base implementation for ListenersManager.

abstract class BaseListenersManager<Interface : Any> : FlexibleSet<Interface>, ListenersManager<Interface>

CallableListenersManager

A CallableListenersManager allows to invoke methods on registered listeners, by using call.

interface CallableListenersManager<Interface : Any> : ListenersManager<Interface>

NoOpListenersManager

A ListenersManager that does nothing. It can be used in situations where it is known that listeners won't ever be invoked

object NoOpListenersManager : ListenersManager<Any>