'Return size of snapshot to be managed by manage_existing_snapshot.
existing_ref is a dictionary of the form:
{\'source-name\': <name of the snapshot>}'

def manage_existing_snapshot_get_size(self, snapshot, existing_ref):

    target_snap_name = self._get_existing_volume_ref_name(existing_ref, is_snapshot=True)
    if re.match('osv-*|oss-*|vvs-*|unm-*', target_snap_name):
        reason = _('Reference    must    be    for    an    unmanaged    snapshot.')
        raise exception.ManageExistingInvalidReference(existing_ref=target_snap_name, reason=reason)
    try:
        snap = self.client.getVolume(target_snap_name)
    except hpeexceptions.HTTPNotFound:
        err = (_("Snapshot    '%s'    doesn't    exist    on    array.") % target_snap_name)
        LOG.error(err)
        raise exception.InvalidInput(reason=err)
    return int(math.ceil((float(snap['sizeMiB']) / units.Ki)))
