@java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + OVERWRITE_OBJECTS_ALREADY_EXISTING_IN_SINK_FIELD_NUMBER;
      hash =
          (53 * hash)
              + com.google.protobuf.Internal.hashBoolean(
                  getOverwriteObjectsAlreadyExistingInSink());
      hash = (37 * hash) + DELETE_OBJECTS_UNIQUE_IN_SINK_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDeleteObjectsUniqueInSink());
      hash = (37 * hash) + DELETE_OBJECTS_FROM_SOURCE_AFTER_TRANSFER_FIELD_NUMBER;
      hash =
          (53 * hash)
              + com.google.protobuf.Internal.hashBoolean(getDeleteObjectsFromSourceAfterTransfer());
      hash = (37 * hash) + OVERWRITE_WHEN_FIELD_NUMBER;
      hash = (53 * hash) + overwriteWhen_;
      if (hasMetadataOptions()) {
        hash = (37 * hash) + METADATA_OPTIONS_FIELD_NUMBER;
        hash = (53 * hash) + getMetadataOptions().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }
<pre>
Represents the selected metadata options for a transfer job.
</pre>

<code>.google.storagetransfer.v1.MetadataOptions metadata_options = 5;</code>
java-storage-transfer/proto-google-cloud-storage-transfer-v1/src/main/java/com/google/storagetransfer/v1/proto/TransferTypes.java