class_docstr: Represent a GCS Object, including all its revisions.
class_docstr_tok: ["Represent","a","GCS","Object",",","including","all","its","revisions","."]
docstr: Create a new rewrite token for `Objects: rewrite`.
docstr_tok: ["Create","a","new","rewrite","token","for","`","Objects",":","rewrite","`","."]
code: def make_rewrite_operation(
      self, request, destination_bucket, destination_object
  ):
      """Create a new rewrite token for `Objects: rewrite`."""
      generation = request.args.get("sourceGeneration")
      if generation is None:
          generation = str(self.generation_generator)
      else:
          generation = generation
  
      self.rewrite_token_generator = self.rewrite_token_generator + 1
      body = json.loads(request.data)
      original_arguments = self.capture_rewrite_operation_arguments(
          request, destination_object, destination_object
      )
      operation = {
          "id": self.rewrite_token_generator,
          "original_arguments": original_arguments,
          "actual_generation": generation,
          "bytes_rewritten": 0,
          "body": body,
      }
      token = GcsObject.make_rewrite_token(
          operation, destination_bucket, destination_object, generation
      )
      return token, operation
  
imports: import base64
  import crc32c
  import error_response
  import hashlib
  import json
  import struct
  import testbench_utils
  import time
label_desc: Use image node_id 19 for calling the GcsObject obj's underlying member method code with example usage: obj.make_rewrite_operation(request, destination_bucket, destination_object) and returns: token,  operation