code: public final Device updateDevice(Device device, FieldMask updateMask) {
  
      UpdateDeviceRequest request =
          UpdateDeviceRequest.newBuilder().setDevice(device).setUpdateMask(updateMask).build();
      return updateDevice(request);
    }
docs: Updates a device.
  
  <p>Sample code:
  
  <pre><code>
  try (DeviceManagerClient deviceManagerClient = DeviceManagerClient.create()) {
  Device device = Device.newBuilder().build();
  FieldMask updateMask = FieldMask.newBuilder().build();
  Device response = deviceManagerClient.updateDevice(device, updateMask);
  }
  </code></pre>
  
  @param device The new values for the device. The `id` and `num_id` fields must be empty, and
  the field `name` must specify the name path. For example,
  `projects/p0/locations/us-central1/registries/registry0/devices/device0`or
  `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.
  @param updateMask Only updates the `device` fields indicated by this mask. The field mask must
  not be empty, and it must not contain fields that are immutable or only set by the server.
  Mutable top-level fields: `credentials`, `blocked`, and `metadata`
  @throws com.google.api.gax.rpc.ApiException if the remote call fails