def self.read_one(reader)
return nil unless reader.forward
object = GlusterVolume.new
object.href = reader.get_attribute('href')
value = reader.get_attribute('comment')
object.comment = value if not value.nil?
value = reader.get_attribute('description')
object.description = value if not value.nil?
value = reader.get_attribute('disperse_count')
object.disperse_count = value if not value.nil?
value = reader.get_attribute('id')
object.id = value if not value.nil?
value = reader.get_attribute('name')
object.name = value if not value.nil?
value = reader.get_attribute('redundancy_count')
object.redundancy_count = value if not value.nil?
value = reader.get_attribute('replica_count')
object.replica_count = value if not value.nil?
value = reader.get_attribute('status')
object.status = value if not value.nil?
value = reader.get_attribute('stripe_count')
object.stripe_count = value if not value.nil?
value = reader.get_attribute('volume_type')
object.volume_type = value if not value.nil?
empty = reader.empty_element?
reader.read
return object if empty
while reader.forward do
case reader.node_name
when 'comment'
object.comment = Reader.read_string(reader)
when 'description'
object.description = Reader.read_string(reader)
when 'disperse_count'
object.disperse_count = Reader.read_integer(reader)
when 'id'
object.id = Reader.read_string(reader)
when 'name'
object.name = Reader.read_string(reader)
when 'options'
object.options = OptionReader.read_many(reader)
when 'redundancy_count'
object.redundancy_count = Reader.read_integer(reader)
when 'replica_count'
object.replica_count = Reader.read_integer(reader)
when 'status'
object.status = Reader.read_string(reader)
when 'stripe_count'
object.stripe_count = Reader.read_integer(reader)
when 'transport_types'
object.transport_types = Reader.read_strings(reader)
when 'volume_type'
object.volume_type = Reader.read_string(reader)
when 'bricks'
object.bricks = GlusterBrickReader.read_many(reader)
when 'cluster'
object.cluster = ClusterReader.read_one(reader)
when 'statistics'
object.statistics = StatisticReader.read_many(reader)
when 'link'
read_link(reader, object)
else
reader.next_element
end
end
reader.read
return object
end