ManagedProperty managedProp = managedObject.getProperty(propName);
MetaType metaType = managedProp.getMetaType();
PropertyAdapter propertyAdapter = PropertyAdapterFactory.getPropertyAdapter(metaType);
PropertyDefinition mapMemberPropDef = propDefMap.get(propName);
if (managedProp.getValue() == null) {
MetaValue managedPropMetaValue = propertyAdapter.convertToMetaValue(mapMemberProp, mapMemberPropDef,
metaType);
managedProp.setValue(managedPropMetaValue);
} else {
MetaValue managedPropMetaValue = (MetaValue) managedProp.getValue();
propertyAdapter.populateMetaValueFromProperty(mapMemberProp, managedPropMetaValue, mapMemberPropDef);