- Type Parameters:
V
- type of thevalue
.
- All Superinterfaces:
AttributeReadOnly
,io.github.mmm.value.CriteriaObject<V>
,io.github.mmm.event.EventSource<ObservableEvent<V>,
,ObservableEventListener<? super V>> io.github.mmm.marshall.MarshallableObject
,io.github.mmm.marshall.Marshaller<Object>
,io.github.mmm.marshall.Marshalling<Object>
,io.github.mmm.marshall.MarshallingObject
,ObservableValue<V>
,io.github.mmm.value.PropertyPath<V>
,io.github.mmm.value.ReadablePath
,ReadableProperty<V>
,io.github.mmm.value.ReadableTypedValue<V>
,io.github.mmm.value.ReadableValue<V>
,Supplier<V>
,io.github.mmm.value.TypedPropertyPath<V>
,io.github.mmm.marshall.UnmarshallableObject
,io.github.mmm.marshall.Unmarshaller<Object>
,Validatable
,WritableObservableValue<V>
,io.github.mmm.value.WritableValue<V>
- All Known Subinterfaces:
WritableBigDecimalProperty
,WritableBigIntegerProperty
,WritableBooleanProperty
,WritableByteProperty
,io.github.mmm.property.container.collection.WritableCollectionProperty<V,
,E> io.github.mmm.property.comparable.WritableComparableProperty<V>
,WritableContainerProperty<V,
,E> WritableDoubleProperty
,WritableDurationProperty
,WritableFloatProperty
,WritableInstantProperty
,WritableIntegerProperty
,WritableListProperty<E>
,WritableLocalDateProperty
,WritableLocalDateTimeProperty
,WritableLocalTimeProperty
,WritableLongProperty
,WritableMapProperty<K,
,V> WritableNumberProperty<N>
,WritableObjectProperty<V>
,WritableOffsetDateTimeProperty
,WritableOffsetTimeProperty
,WritablePasswordProperty
,WritablePatternProperty
,WritableRangeProperty<V>
,WritableSetProperty<E>
,WritableShortProperty
,WritableSimpleProperty<V>
,WritableStringProperty
,WritableZonedDateTimeProperty
- All Known Implementing Classes:
BigDecimalProperty
,BigIntegerProperty
,BooleanProperty
,ByteProperty
,io.github.mmm.property.container.collection.CollectionProperty
,ContainerProperty
,DoubleProperty
,DurationInSecondsProperty
,DurationProperty
,FloatProperty
,InstantProperty
,IntegerProperty
,ListProperty
,LocalDateProperty
,LocalDateTimeProperty
,LocalTimeProperty
,LongProperty
,MapProperty
,NumberProperty
,ObjectProperty
,OffsetDateTimeProperty
,OffsetTimeProperty
,PasswordProperty
,PatternProperty
,Property
,RangeProperty
,SetProperty
,ShortProperty
,SimpleProperty
,StringListProperty
,StringProperty
,TemporalAmountProperty
,TemporalProperty
,ZonedDateTimeProperty
public interface WritableProperty<V>
extends WritableObservableValue<V>, ReadableProperty<V>, io.github.mmm.marshall.MarshallingObject
A
property
with write access (e.g. WritableValue.set(Object)
). However, it can still be
read-only
preventing modifications.- Since:
- 1.0.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.github.mmm.value.ReadablePath
io.github.mmm.value.ReadablePath.PathBuilder
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptioncopy
(String newName, PropertyMetadata<V> newMetadata) static <P extends WritableProperty<?>>
Pcopy
(P property) static <P extends WritableProperty<?>>
Pstatic <V,
P extends WritableProperty<V>>
Pcopy
(P property, String newName, PropertyMetadata<V> newMetadata) static <P extends WritableProperty<?>>
PgetReadOnly
(P property) Methods inherited from interface io.github.mmm.property.AttributeReadOnly
isReadOnly
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.value.PropertyPath
pathSegment
Methods inherited from interface io.github.mmm.value.ReadablePath
path, path
Methods inherited from interface io.github.mmm.property.ReadableProperty
computeSize, count, eq, eq, getMetadata, getName, getTypeMapper, isTransient, isValid, neq, neq, parentPath
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, validateOrThrow
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 Details
-
NO_PROPERTIES
Empty array instance.
-
-
Method Details
-
getReadOnly
WritableProperty<V> getReadOnly()- Returns:
- the
read only
view on this property. - See Also:
-
copy
-
getReadOnly
- Type Parameters:
P
- type of the property.- Parameters:
property
- theproperty
to get asread-only
view.- Returns:
- the
read-only view
of the givenproperty
.
-
copy
-
copy
-
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.
-