'Clone LUN with the given handle to the new name.'

def _clone_lun(self, name, new_name, space_reserved=None, qos_policy_group_name=None, src_block=0, dest_block=0, block_count=0, source_snapshot=None, is_snapshot=False):

    if (not space_reserved):
        space_reserved = self.lun_space_reservation
    metadata = self._get_lun_attr(name, 'metadata')
    volume = metadata['Volume']
    self.zapi_client.clone_lun(volume, name, new_name, space_reserved, qos_policy_group_name=qos_policy_group_name, src_block=src_block, dest_block=dest_block, block_count=block_count, source_snapshot=source_snapshot, is_snapshot=is_snapshot)
    LOG.debug('Cloned    LUN    with    new    name    %s', new_name)
    lun = self.zapi_client.get_lun_by_args(vserver=self.vserver, path=('/vol/%s/%s' % (volume, new_name)))
    if (len(lun) == 0):
        msg = _('No    cloned    LUN    named    %s    found    on    the    filer')
        raise exception.VolumeBackendAPIException(data=(msg % new_name))
    clone_meta = self._create_lun_meta(lun[0])
    self._add_lun_to_table(block_base.NetAppLun(('%s:%s' % (clone_meta['Vserver'], clone_meta['Path'])), new_name, lun[0].get_child_content('size'), clone_meta))
