'Retrieve status info from volume group.'

def _update_volume_status(self):

    LOG.debug('Updating    volume    status')
    self._stats = None
    data = {}
    backend_name = self.configuration.safe_get('volume_backend_name')
    data['volume_backend_name'] = (backend_name or self.__class__.__name__)
    data['vendor_name'] = 'Oracle'
    data['driver_version'] = self.VERSION
    data['storage_protocol'] = self.protocol
    lcfg = self.configuration
    (avail, total) = self.zfssa.get_project_stats(lcfg.zfssa_pool, lcfg.zfssa_project)
    if ((avail is None) or (total is None)):
        return
    host = lcfg.san_ip
    pool = lcfg.zfssa_pool
    project = lcfg.zfssa_project
    auth_str = ('%s:%s' % (lcfg.san_login, lcfg.san_password))
    auth_str = base64.encode_as_text(auth_str)
    zfssa_tgt_group = lcfg.zfssa_target_group
    repl_ip = lcfg.zfssa_replication_ip
    data['location_info'] = ('%s:%s:%s:%s:%s:%s' % (host, auth_str, pool, project, zfssa_tgt_group, repl_ip))
    data['total_capacity_gb'] = (int(total) / units.Gi)
    data['free_capacity_gb'] = (int(avail) / units.Gi)
    data['reserved_percentage'] = 0
    data['QoS_support'] = False
    pool_details = self.zfssa.get_pool_details(lcfg.zfssa_pool)
    data['zfssa_poolprofile'] = pool_details['profile']
    data['zfssa_volblocksize'] = lcfg.zfssa_lun_volblocksize
    data['zfssa_sparse'] = six.text_type(lcfg.zfssa_lun_sparse)
    data['zfssa_compression'] = lcfg.zfssa_lun_compression
    data['zfssa_logbias'] = lcfg.zfssa_lun_logbias
    self._stats = data
