/** * Gets the top level name of this property. * * @return the top level property name, not <code>null</code> * @since 8.3 */ public default String getTopLevelName() { return getName(); }
@Override public String getName() { return parent.getName() + "." + super.getName(); }
private boolean handleProperty(Field field, Object objectWithMemberFields, BiFunction<String, Class<?>, Boolean> propertyHandler) { Optional<PropertyDefinition<BEAN, ?>> descriptor = getPropertyDescriptor( field); if (!descriptor.isPresent()) { return false; } String propertyName = descriptor.get().getName(); if (boundProperties.containsKey(propertyName)) { return false; } BindingBuilder<BEAN, ?> tentativeBinding = getIncompleteMemberFieldBinding( field, objectWithMemberFields); if (tentativeBinding != null) { tentativeBinding.bind(propertyName); return false; } Boolean isPropertyBound = propertyHandler.apply(propertyName, descriptor.get().getType()); assert boundProperties.containsKey(propertyName); return isPropertyBound; }
(AbstractRenderer) renderer).setId(definition.getName()) .setCaption(definition.getCaption());
.getProperties().filter(p -> p.getName().equals(id)) .findFirst(); Column<T, ?> column;
/** * Get the default column ids of this listing, i.e. the ids of all detected bean property columns and any added * virtual column. * @return the default column ids */ protected List<String> getDefaultColumnIds() { return propertySet.getProperties().map(p -> p.getName()).collect(Collectors.toList()); }
/** * Refreshes the item detail. * This method is triggered by {@link ItemPreviewComponent#onValueChange(Object)} in case of value changes. */ protected Component refreshItemDetail(T item) { FormLayout itemDetail = new FormLayout(); itemDetail.addStyleName("file-details"); getPropertySet().getProperties() .map(property -> this.createDetailComponent(property.getName(), property.getGetter().apply(item))) .forEach(itemDetail::addComponent); return itemDetail; }
/** * Constructor. * @param beanType Bean type (not null) */ public DefaultBeanListingBuilder(Class<T> beanType) { super(new DefaultBeanListing<>(beanType), String.class); this.beanType = beanType; // read bean property names getInstance().getPropertyDefinitions().forEach(p -> { dataSourceBuilder.withProperty(p.getName(), p.getType(), false); dataSourceBuilder.propertyId(p.getName(), p.getName()); if (p.isReadOnly()) { dataSourceBuilder.readOnly(p.getName(), true); } if (p.getBeanProperty().isPresent()) { dataSourceBuilder.sortable(p.getName(), true); } }); PropertySet<T> propertySet = BeanPropertySet.get(beanType); propertySet.getProperties().forEach(p -> { dataSourceBuilder.withProperty(p.getName(), p.getType()); }); }