package com.dooapp.fxform.reflection.classcast; import com.dooapp.fxform.annotation.Accessor; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleObjectProperty; /** * A Device use for testing. * <br> * Created at 13/12/13 16:58.<br> * * @author Bastien */ @Accessor(Accessor.AccessType.METHOD) public class Device<MODEL extends DeviceModel> extends SuperDevice<Device<?>> { private ObjectProperty<MODEL> model; public ObjectProperty<MODEL> modelProperty() { if (this.model == null) { this.model = createModelProperty(); } return this.model; } protected ObjectProperty<MODEL> createModelProperty() { return new SimpleObjectProperty<MODEL>(); } public MODEL getModel() { return modelProperty().get(); } public void setModel(MODEL myModel) { this.modelProperty().set(myModel); } }