Code: Select all
@Override
public FieldProviderResponse extractValue(ExtractValueRequest extractValueRequest, Property property) {
String entity = extractValueRequest.getEntity().getClass().getName();
String clazz = DiscreteOrderItemImpl.class.getName();
if(entity.equals(clazz)){
if(property.getName().equals("name")){
DiscreteOrderItem orderItem = (DiscreteOrderItem) extractValueRequest.getEntity();
property.setValue(orderItem.getProduct().getDefaultCategory().getName() + " " + orderItem.getProduct().getName() + " " + orderItem.getName());
property.setDisplayValue(orderItem.getProduct().getDefaultCategory().getName() + " " + orderItem.getProduct().getName() + " " + orderItem.getName());
return FieldProviderResponse.HANDLED;
}
}
return FieldProviderResponse.NOT_HANDLED;
}
Hacky work around
Code: Select all
@Override
public FieldProviderResponse extractValue(ExtractValueRequest extractValueRequest, Property property) {
String entity = extractValueRequest.getEntity().getClass().getName();
String clazz = DiscreteOrderItemImpl.class.getName();
if(entity.equals(clazz)){
DiscreteOrderItem orderItem = (DiscreteOrderItem) extractValueRequest.getEntity();
String name = orderItem.getProduct().getDefaultCategory().getName() + " " + orderItem.getProduct().getName() + " " + orderItem.getName();
List<Property> props = extractValueRequest.getProps();
for(int i =0; i < props.size(); i++){
if(props.get(i).getName().equals("name")){
props.get(i).setValue(name);
break;
}
}
return FieldProviderResponse.HANDLED;
}
return FieldProviderResponse.NOT_HANDLED;
}