'Deletes a logical volume.
:param volume: volume reference'

def delete_volume(self, volume):

    nfs_share = volume.get('provider_location')
    if nfs_share:
        nms = self.share2nms[nfs_share]
        (vol, parent_folder) = self._get_share_datasets(nfs_share)
        folder = ('%s/%s/%s' % (vol, parent_folder, volume['name']))
        mount_path = self.remote_path(volume).strip(('/%s' % self.VOLUME_FILE_NAME))
        if (mount_path in self._remotefsclient._read_mounts()):
            self._execute('umount', mount_path, run_as_root=True)
        try:
            props = (nms.folder.get_child_props(folder, 'origin') or {})
            nms.folder.destroy(folder, '-r')
        except exception.NexentaException as exc:
            if ('does    not    exist' in exc.args[0]):
                LOG.info('Folder    %s    does    not    exist,    it    was    already    deleted.', folder)
                return
            raise
        self._get_capacity_info(nfs_share)
        origin = props.get('origin')
        if (origin and self._is_clone_snapshot_name(origin)):
            try:
                nms.snapshot.destroy(origin, '')
            except exception.NexentaException as exc:
                if ('does    not    exist' in exc.args[0]):
                    LOG.info('Snapshot    %s    does    not    exist,    it    was    already    deleted.', origin)
                    return
                raise
