-
- Type Parameters:
V
- type of thevalue
.
- All Superinterfaces:
EventSource<ObservableEvent<V>,ObservableEventListener<? super V>>
,MarshallableObject
,Marshaller<Object>
,Marshalling<Object>
,MarshallingObject
,ObservableValue<V>
,PropertyPath<V>
,ReadableProperty<V>
,ReadableTypedValue<V>
,ReadableValue<V>
,Supplier<V>
,TypedPropertyPath<V>
,UnmarshallableObject
,Unmarshaller<Object>
,Validatable
,WritableObservableValue<V>
,WritableValue<V>
- All Known Subinterfaces:
WritableBeanProperty<V>
,WritableBigDecimalProperty
,WritableBigIntegerProperty
,WritableBooleanProperty
,WritableByteProperty
,io.github.mmm.property.container.collection.WritableCollectionProperty<V,E>
,WritableContainerProperty<V,E>
,WritableDoubleProperty
,WritableFloatProperty
,WritableInstantProperty
,WritableIntegerProperty
,WritableListProperty<E>
,WritableLocalDateProperty
,WritableLocalDateTimeProperty
,WritableLocalTimeProperty
,WritableLongProperty
,WritableMapProperty<K,V>
,WritableNumberProperty<N>
,WritableObjectProperty<V>
,WritableOffsetDateTimeProperty
,WritableOffsetTimeProperty
,WritableRangeProperty<V>
,WritableSetProperty<E>
,WritableShortProperty
,WritableSimpleProperty<V>
,WritableStringProperty
,WritableZonedDateTimeProperty
- All Known Implementing Classes:
BeanProperty
,BigDecimalProperty
,BigIntegerProperty
,BooleanProperty
,ByteProperty
,io.github.mmm.property.container.collection.CollectionProperty
,ContainerProperty
,DoubleProperty
,DurationInSecondsProperty
,FloatProperty
,IdProperty
,InstantProperty
,IntegerProperty
,LinkProperty
,ListProperty
,LocalDateProperty
,LocalDateTimeProperty
,LocalTimeProperty
,LongProperty
,MapProperty
,NumberProperty
,ObjectProperty
,OffsetDateTimeProperty
,OffsetTimeProperty
,Property
,RangeProperty
,SetProperty
,ShortProperty
,SimpleProperty
,StringListProperty
,StringProperty
,TemporalProperty
,ZonedDateTimeProperty
public interface WritableProperty<V> extends WritableObservableValue<V>, ReadableProperty<V>, MarshallingObject
Aproperty
with write access (e.g.WritableValue.set(Object)
). However, it can still beread-only
preventing modifications.- Since:
- 1.0.0
-
-
Field Summary
Fields Modifier and Type Field Description static WritableProperty<?>[]
NO_PROPERTIES
Empty array instance.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description WritableProperty<V>
copy(String newName, PropertyMetadata<V> newMetadata)
static <P extends WritableProperty<?>>
Pcopy(P property)
static <P extends WritableProperty<?>>
Pcopy(P property, String newName)
static <V,P extends WritableProperty<V>>
Pcopy(P property, String newName, PropertyMetadata<V> newMetadata)
WritableProperty<V>
getReadOnly()
static <P extends WritableProperty<?>>
PgetReadOnly(P property)
-
Methods inherited from interface io.github.mmm.event.EventSource
addListener, addListener, addWeakListener, removeListener
-
Methods inherited from interface io.github.mmm.marshall.MarshallableObject
write, writeObject
-
Methods inherited from interface io.github.mmm.value.observable.ObservableValue
toString
-
Methods inherited from interface io.github.mmm.property.ReadableProperty
getMetadata, getName, isReadOnly, isTransient, isValid
-
Methods inherited from interface io.github.mmm.value.ReadableTypedValue
getValueClass
-
Methods inherited from interface io.github.mmm.value.ReadableValue
get, getSafe
-
Methods inherited from interface io.github.mmm.marshall.UnmarshallableObject
read, readObject
-
Methods inherited from interface io.github.mmm.validation.Validatable
validate
-
Methods inherited from interface io.github.mmm.value.observable.WritableObservableValue
bindOneWay, bindTwoWay, isBoundOneWay, unbindOneWay, unbindTwoWay
-
Methods inherited from interface io.github.mmm.value.WritableValue
set
-
-
-
-
Field Detail
-
NO_PROPERTIES
static final WritableProperty<?>[] NO_PROPERTIES
Empty array instance.
-
-
Method Detail
-
getReadOnly
WritableProperty<V> getReadOnly()
- Returns:
- the
read only
view on this property. - See Also:
ReadableProperty.isReadOnly()
,getReadOnly(WritableProperty)
-
copy
WritableProperty<V> copy(String newName, PropertyMetadata<V> newMetadata)
-
getReadOnly
static <P extends WritableProperty<?>> P getReadOnly(P property)
- Type Parameters:
P
- type of the property.- Parameters:
property
- theproperty
to get asread-only
view.- Returns:
- the
read-only view
of the givenproperty
.
-
copy
static <P extends WritableProperty<?>> P copy(P property)
-
copy
static <P extends WritableProperty<?>> P copy(P property, String newName)
-
copy
static <V,P extends WritableProperty<V>> P copy(P property, String newName, PropertyMetadata<V> newMetadata)
- Type Parameters:
V
- type of theproperties value
.P
- type of the property.- Parameters:
property
- theproperty
to copy.newName
- the newname
. May benull
to keep the current name.newMetadata
- the newmetadata
. May benull
to keep the current metadata.- Returns:
- a
copy
of the givenproperty
with empty value and the given parameters applied.
-
-