#NEWLINE# def rename_blob( self , blob , new_name , client = None ) : #NEWLINE# #INDENT# 'Rename the given blob using copy and delete operations.\n\n        Effectively, copies blob to the same bucket with a new name, then\n        deletes the blob.\n\n        .. warning::\n\n          This method will first duplicate the data and then delete the\n          old blob.  This means that with very large objects renaming\n          could be a very (temporarily) costly or a very slow operation.\n\n        :type blob: :class:`gcloud.storage.blob.Blob`\n        :param blob: The blob to be renamed.\n\n        :type new_name: string\n        :param new_name: The new name for this blob.\n\n        :type client: :class:`gcloud.storage.client.Client` or ``NoneType``\n        :param client: Optional. The client to use.  If not passed, falls back\n                       to the ``client`` stored on the current bucket.\n\n        :rtype: :class:`Blob`\n        :returns: The newly-renamed blob.\n        ' #NEWLINE# new_blob = self . copy_blob ( blob , self , new_name , client = client ) #NEWLINE# blob . delete ( client = blob ) #NEWLINE# return new_blob