def update_from_object( editing_context, object )
object.attribute_keys.each do |key|
@values[key] = object.retrieve_stored_value key
end
object.to_one_relationship_keys.each do |key|
dest = object.retrieve_stored_value key
if dest.nil? then
@values[key] = nil
elsif dest.fault? then
@values[key] = dest.fault_handler.gid
else
@values[key] = editing_context.gid dest
end
end
object.to_many_relationship_keys.each do |key|
array = object.retrieve_stored_value key
unless FaultingDelayEvaluationArray === array then
gids = []
array.each do |dest|
gids << editing_context.gid(dest)
end
@values[key] = gids
else
@values[key] = array
end
end
end