Interface PropertyConfiguration<C extends Component,P extends Serializable>
- Type Parameters:
C- type of thecomponentexported as a web componentP- type of the property exposed on the web component
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
PropertyConfigurationImpl
public interface PropertyConfiguration<C extends Component,P extends Serializable>
extends Serializable
Offers a fluent API for configuring the properties of embedded web components
produced by
WebComponentExporter.- Since:
- 2.0
- Author:
- Vaadin Ltd.
-
Method Summary
Modifier and TypeMethodDescriptiononChange(SerializableBiConsumer<C, P> onChangeHandler) Sets a Property change handler.readOnly()Mark the property as read-only.
-
Method Details
-
onChange
Sets a Property change handler.onChangecan only be called once - multiple calls will throw an exception.The
onChangeHandleris called when the property's value changes on the client-side. If the property value isnullfor a property type which should not receive null-values, such asdouble, the method will be called with the property's default value. The default value is set byWebComponentExporterwhenaddProperty(propertyName, defaultValueis called.In the following example we export
MyComponentas a web component. TheMyComponentclass has a methodsetNamewhich will be called in response to changes to the registered property"name".@Tag("my-component") public class Exporter implements WebComponentExporter<MyComponent>() { // ... define the web component public Exporter() { super("my-component"); addProperty("name", "John Doe").onChange(MyComponent::setName); } }- Parameters:
onChangeHandler-component's method which is called with the property value- Returns:
- this
PropertyConfiguration
-
readOnly
PropertyConfiguration<C,P> readOnly()Mark the property as read-only. It cannot be written to by the client.- Returns:
- this
PropertyConfiguration
-