# File lib/tapkit/access/snapshot.rb, line 151
                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