001package arez.spy;
002
003import java.util.Map;
004import java.util.Objects;
005import javax.annotation.Nonnull;
006
007/**
008 * Notification when ObservableValue is disposed.
009 */
010public final class ObservableValueDisposeEvent
011  implements SerializableEvent
012{
013  @Nonnull
014  private final ObservableValueInfo _observableValue;
015
016  public ObservableValueDisposeEvent( @Nonnull final ObservableValueInfo observableValue )
017  {
018    _observableValue = Objects.requireNonNull( observableValue );
019  }
020
021  @Nonnull
022  public ObservableValueInfo getObservableValue()
023  {
024    return _observableValue;
025  }
026
027  @Override
028  public void toMap( @Nonnull final Map<String, Object> map )
029  {
030    map.put( "type", "ObservableValueDispose" );
031    map.put( "name", getObservableValue().getName() );
032  }
033}