'Creates a volume from a snapshot.'

def create_volume_from_snapshot(self, volume, snapshot):

    LOG.debug('create_volume_from_snapshot,    volume    id:    %(vid)s,    snap    id:    %(sid)s,    enter    method.', {'vid': volume['id'], 'sid': snapshot['id']})
    (location, metadata) = self.common.create_volume_from_snapshot(volume, snapshot)
    v_metadata = self._get_metadata(volume)
    metadata.update(v_metadata)
    LOG.debug('create_volume_from_snapshot,    info:    %s,    exit    method.', metadata)
    return {'provider_location': six.text_type(location), 'metadata': metadata}
