code: @BetaApi
    public final Operation createSnapshotDisk(
        String disk, Boolean guestFlush, Snapshot snapshotResource) {
  
      CreateSnapshotDiskHttpRequest request =
          CreateSnapshotDiskHttpRequest.newBuilder()
              .setDisk(disk)
              .setGuestFlush(guestFlush)
              .setSnapshotResource(snapshotResource)
              .build();
      return createSnapshotDisk(request);
    }
docs: Creates a snapshot of a specified persistent disk.
  
  <p>Sample code:
  
  <pre><code>
  try (DiskClient diskClient = DiskClient.create()) {
  ProjectZoneDiskName disk = ProjectZoneDiskName.of("[PROJECT]", "[ZONE]", "[DISK]");
  Boolean guestFlush = false;
  Snapshot snapshotResource = Snapshot.newBuilder().build();
  Operation response = diskClient.createSnapshotDisk(disk.toString(), guestFlush, snapshotResource);
  }
  </code></pre>
  
  @param disk Name of the persistent disk to snapshot.
  @param guestFlush
  @param snapshotResource A persistent disk snapshot resource. (== resource_for beta.snapshots
  ==) (== resource_for v1.snapshots ==)
  @throws com.google.api.gax.rpc.ApiException if the remote call fails