code: def update_storage_class(self, new_class, client=None):
          
          if new_class not in self._STORAGE_CLASSES:
              raise ValueError("Invalid storage class: %s" % (new_class,))
  
          # Update current blob's storage class prior to rewrite
          self._patch_property("storageClass", new_class)
  
          # Execute consecutive rewrite operations until operation is done
          token, _, _ = self.rewrite(self)
          while token is not None:
              token, _, _ = self.rewrite(self, token=token)
docs: Update blob's storage class via a rewrite-in-place. This helper will
          wait for the rewrite to complete before returning, so it may take some
          time for large files.
  
          See
          https://cloud.google.com/storage/docs/per-object-storage-class
  
          If :attr:`user_project` is set on the bucket, bills the API request
          to that project.
  
          :type new_class: str
          :param new_class: new storage class for the object
  
          :type client: :class:`~google.cloud.storage.client.Client`
          :param client: Optional. The client to use.  If not passed, falls back
                         to the ``client`` stored on the blob's bucket.