lib/travis/client/session.rb in travis-1.6.7.travis.442.6 vs lib/travis/client/session.rb in travis-1.6.7.travis.443.6
- old
+ new
@@ -131,17 +131,23 @@
end
def load(data)
result = {}
(data || {}).each_pair do |key, value|
- type = Entity.subclass_for(key)
- if value.respond_to? :to_ary
- result[key] = value.to_ary.map { |e| create_entity(type, e) }
- else
- result[key] = create_entity(type, value)
- end
+ entity = load_entity(key, value)
+ result[key] = entity if entity
end
result
+ end
+
+ def load_entity(key, value)
+ type = Entity.subclass_for(key)
+ if value.respond_to? :to_ary
+ value.to_ary.map { |e| create_entity(type, e) }
+ else
+ create_entity(type, value)
+ end
+ rescue IndexError
end
def preload(list)
list.group_by(&:class).each do |type, instances|
next unless type.preloadable?