'Return status of ISE volume'

def _get_volume_info(self, vol_name):

    vol_info = {}
    vol_info['value'] = ''
    vol_info['string'] = NOTFOUND_STATUS
    vol_info['details'] = ''
    vol_info['location'] = ''
    vol_info['size'] = ''
    url = ('/storage/arrays/%s/volumes' % self._get_ise_globalid())
    resp = self._send_cmd('GET', url, {'name': vol_name})
    if (resp['status'] != 200):
        LOG.warning('Could    not    get    status    for    %(name)s    (%(status)d).', {'name': vol_name, 'status': resp['status']})
        return vol_info
    root = etree.fromstring(resp['content'])
    volume_node = root.find('volume')
    if (volume_node is None):
        LOG.warning('No    volume    node    in    XML    content.')
        return vol_info
    vol_info['location'] = volume_node.attrib['self']
    status = volume_node.find('status')
    if (status is None):
        LOG.warning('No    status    payload    for    volume    %s.', vol_name)
        return vol_info
    vol_info['value'] = status.attrib['value']
    vol_info['string'] = status.attrib['string'].upper()
    details = status.find('details')
    if (details is not None):
        detail = details.find('detail')
        if (detail is not None):
            vol_info['details'] = detail.text.upper()
    size_tag = volume_node.find('size')
    if (size_tag is not None):
        vol_info['size'] = size_tag.text
    return vol_info
