Package xyz.cofe.typeconv
Class MutableWeightedCaster
java.lang.Object
xyz.cofe.typeconv.WeightedCaster
xyz.cofe.typeconv.MutableWeightedCaster
- All Implemented Interfaces:
java.util.function.Function<java.lang.Object,java.lang.Object>,GetWeight,SetWeight,WeightChangeSender
- Direct Known Subclasses:
SequenceCaster
public abstract class MutableWeightedCaster extends WeightedCaster implements SetWeight, WeightChangeSender
Взешенный caster, с возможностью установки веса
- Author:
- Kamnev Georgiy (nt.gocha@gmail.com)
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<WeightChangeListener>listenersprotected java.util.List<java.lang.ref.WeakReference<WeightChangeListener>>weakListeners -
Constructor Summary
Constructors Constructor Description MutableWeightedCaster()MutableWeightedCaster(double weight) -
Method Summary
Modifier and Type Method Description java.lang.AutoCloseableaddWeightChangeListener(WeightChangeListener listener)Добавляет подписчика на изменение весаjava.lang.AutoCloseableaddWeightChangeListener(WeightChangeListener listener, boolean softLink)Добавляет подписчика на изменение весаprotected voidfireEvent(java.lang.Double old, java.lang.Double newv)protected voidfireEvent(WeightChangeEvent ev)protected voidfireEventHardListeners(WeightChangeEvent ev)protected voidfireEventWeakListeners(WeightChangeEvent ev)voidremoveWeightChangeListener(WeightChangeListener listener)Удаляет подписчика на изменение весаvoidsetWeight(java.lang.Double w)Указывает вес
-
Field Details
-
Constructor Details
-
MutableWeightedCaster
public MutableWeightedCaster() -
MutableWeightedCaster
public MutableWeightedCaster(double weight)
-
-
Method Details
-
fireEventWeakListeners
-
fireEventHardListeners
-
fireEvent
-
fireEvent
protected void fireEvent(java.lang.Double old, java.lang.Double newv) -
setWeight
public void setWeight(java.lang.Double w)Description copied from interface:SetWeightУказывает вес -
addWeightChangeListener
Description copied from interface:WeightChangeSenderДобавляет подписчика на изменение веса- Specified by:
addWeightChangeListenerin interfaceWeightChangeSender- Parameters:
listener- подписчик- Returns:
- отписка от уведомлений
-
addWeightChangeListener
public java.lang.AutoCloseable addWeightChangeListener(WeightChangeListener listener, boolean softLink)Description copied from interface:WeightChangeSenderДобавляет подписчика на изменение веса- Specified by:
addWeightChangeListenerin interfaceWeightChangeSender- Parameters:
listener- подписчикsoftLink- добавить подписчика как weak/soft ссылку- Returns:
- отписка от уведомлений
-
removeWeightChangeListener
Description copied from interface:WeightChangeSenderУдаляет подписчика на изменение веса- Specified by:
removeWeightChangeListenerin interfaceWeightChangeSender- Parameters:
listener- подписчик
-