// Copyright 2021 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

syntax = "proto3";

package nearby.sharing.proto;

import "sharing/proto/field_mask.proto";
import "sharing/proto/rpc_resources.proto";

option optimize_for = LITE_RUNTIME;

// The request used to register a [location.nearby.sharing.proto.Device]
// with the server.
message UpdateDeviceRequest {
  // The [Device] to be updated.
  Device device = 1;

  // The FieldMask for updating specific columns in device table. For the
  // 'FieldMask' definition, see
  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
  FieldMask update_mask = 2;
}

// The response for UpdateDeviceRequest.
message UpdateDeviceResponse {
  // The [Device] to be returned.
  Device device = 1;

  // Optional. The user's name as displayed to the user when selecting a share
  // target. Ex: "Will Harmon"
  string person_name = 2;

  // Optional. The URL of an image displayed to the user when selecting a
  // share target.
  string image_url = 3;

  // Optional. A hash like value to determine if the profile image has changed
  // or not. Note, the image_url can change for the same image.
  string image_token = 4;
}
