code: public ValueModel add(String propertyName, ValueModel valueModel, FieldMetadata metadata) {
  		fieldMetadata.put(propertyName, metadata);
  
  		valueModel = preProcessNewValueModel(propertyName, valueModel);
  		propertyValueModels.put(propertyName, valueModel);
  
  		if (logger.isDebugEnabled()) {
  			logger.debug("Registering '" + propertyName + "' form property, property value model=" + valueModel);
  		}
  		postProcessNewValueModel(propertyName, valueModel);
  		return valueModel;
  	}
docs: {@inheritDoc}