com.beans.observables.properties.ObservableProperty Maven / Gradle / Ivy
package com.beans.observables.properties;
import com.beans.Property;
import com.beans.observables.ObservableValue;
/**
*
* A mutable property. Provides access to a value which could be modified by other sources.
* Listeners can be attached to listen for changes of the value. Calling {@link #set(Object)}
* will invoke any added listeners.
*
*
* A property is nullable.
*
*
* @param type of data
*
* @since JavaBeans 1.0
*/
public interface ObservableProperty extends ObservableValue, Property {
/**
* {@inheritDoc}
*
* This call invokes any listeners which are added if it changes
* the value which is stored by the property.
*
*/
@Override
void set(T value);
void bindBidirectional(ObservableProperty observableProperty);
}