def self.read_one(reader)
return nil unless reader.forward
object = Api.new
object.href = reader.get_attribute('href')
value = reader.get_attribute('time')
object.time = value if not value.nil?
empty = reader.empty_element?
reader.read
return object if empty
while reader.forward do
case reader.node_name
when 'product_info'
object.product_info = ProductInfoReader.read_one(reader)
when 'special_objects'
object.special_objects = SpecialObjectsReader.read_one(reader)
when 'summary'
object.summary = ApiSummaryReader.read_one(reader)
when 'time'
object.time = Reader.read_date(reader)
when 'authenticated_user'
object.authenticated_user = UserReader.read_one(reader)
when 'effective_user'
object.effective_user = UserReader.read_one(reader)
else
reader.next_element
end
end
reader.read
return object
end