Class ReadOnlyJavaBeanObjectProperty<T>
- Type Parameters:
T- the type of the wrappedObject
- All Implemented Interfaces:
Observable,ReadOnlyJavaBeanProperty<T>,ReadOnlyProperty<T>,ObservableObjectValue<T>,ObservableValue<T>
ReadOnlyJavaBeanObjectProperty provides an adapter between a regular
read only Java Bean property of T and a JavaFX
ReadOnlyObjectProperty. It cannot be created directly, but a
ReadOnlyJavaBeanObjectPropertyBuilder has to be used.
As a minimum, the Java Bean class must implement a getter for the
property.
The class, as well as the getter method, must be declared public.
If the getter of an instance of this class is called, the property of
the Java Bean is returned. If the Java Bean property is bound (i.e. it supports
PropertyChangeListeners), this ReadOnlyJavaBeanObjectProperty will be
aware of changes in the Java Bean. Otherwise it can be notified about
changes by calling fireValueChangedEvent().
Deploying an Application as a Module
If the Java Bean class is in a named module, then it must be reflectively
accessible to the javafx.base module.
A class is reflectively accessible if the module
opens the containing package to at
least the javafx.base module.
For example, if com.foo.MyBeanClass is in the foo.app module,
the module-info.java might
look like this:
module foo.app {
opens com.foo to javafx.base;
}
Alternatively, a class is reflectively accessible if the module
exports the containing package
unconditionally.
- Since:
- JavaFX 2.1
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoiddispose()Signals to the JavaFX property that it will not be used anymore and any references can be removed.voidSends notifications to all attachedInvalidationListenersandChangeListeners.get()Returns the current value of thisObservableObjectValue<T>.getBean()Returns theObjectthat contains this property.getName()Returns the name of this property.Methods declared in class javafx.beans.property.ReadOnlyObjectPropertyBase
addListener, addListener, removeListener, removeListenerMethods declared in class javafx.beans.property.ReadOnlyObjectProperty
toStringMethods declared in class javafx.beans.binding.ObjectExpression
asString, asString, asString, getValue, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotNull, isNull, objectExpressionMethods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods declared in interface javafx.beans.Observable
addListener, removeListener, subscribeMethods declared in interface javafx.beans.value.ObservableValue
addListener, flatMap, getValue, map, orElse, removeListener, subscribe, subscribe, when
-
Method Details
-
get
Returns the current value of thisObservableObjectValue<T>.- Specified by:
getin interfaceObservableObjectValue<T>- Returns:
- The current value
- Throws:
UndeclaredThrowableException- if calling the getter of the Java Bean property throws anIllegalAccessExceptionor anInvocationTargetException.
-
getBean
Returns theObjectthat contains this property. If this property is not contained in anObject,nullis returned.- Specified by:
getBeanin interfaceReadOnlyProperty<T>- Returns:
- the containing
Objectornull
-
getName
Returns the name of this property. If the property does not have a name, this method returns an emptyString.- Specified by:
getNamein interfaceReadOnlyProperty<T>- Returns:
- the name or an empty
String
-
fireValueChangedEvent
public void fireValueChangedEvent()Sends notifications to all attachedInvalidationListenersandChangeListeners. This method needs to be called, if the value of this property changes.- Specified by:
fireValueChangedEventin interfaceReadOnlyJavaBeanProperty<T>- Overrides:
fireValueChangedEventin classReadOnlyObjectPropertyBase<T>
-
dispose
public void dispose()Signals to the JavaFX property that it will not be used anymore and any references can be removed. A call of this method usually results in the property stopping to observe the Java Bean property by unregistering its listener(s).- Specified by:
disposein interfaceReadOnlyJavaBeanProperty<T>
-