-
- 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
Apropertywith write access (e.g.WritableValue.set(Object)). However, it can still beread-onlypreventing modifications.- Since:
- 1.0.0
-
-
Field Summary
Fields Modifier and Type Field Description static WritableProperty<?>[]NO_PROPERTIESEmpty 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 onlyview 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- thepropertyto get asread-onlyview.- Returns:
- the
read-only viewof 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- thepropertyto copy.newName- the newname. May benullto keep the current name.newMetadata- the newmetadata. May benullto keep the current metadata.- Returns:
- a
copyof the givenpropertywith empty value and the given parameters applied.
-
-