@java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
      return true;
    }
    if (!(obj instanceof com.google.cloud.speech.v2.BatchRecognizeFileMetadata)) {
      return super.equals(obj);
    }
    com.google.cloud.speech.v2.BatchRecognizeFileMetadata other =
        (com.google.cloud.speech.v2.BatchRecognizeFileMetadata) obj;

    if (hasConfig() != other.hasConfig()) return false;
    if (hasConfig()) {
      if (!getConfig().equals(other.getConfig())) return false;
    }
    if (hasConfigMask() != other.hasConfigMask()) return false;
    if (hasConfigMask()) {
      if (!getConfigMask().equals(other.getConfigMask())) return false;
    }
    if (!getAudioSourceCase().equals(other.getAudioSourceCase())) return false;
    switch (audioSourceCase_) {
      case 1:
        if (!getUri().equals(other.getUri())) return false;
        break;
      case 0:
      default:
    }
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }
<pre>
The list of fields in
[config][google.cloud.speech.v2.BatchRecognizeFileMetadata.config] that
override the values in the
[default_recognition_config][google.cloud.speech.v2.Recognizer.default_recognition_config]
of the recognizer during this recognition request. If no mask is provided,
all non-default valued fields in
[config][google.cloud.speech.v2.BatchRecognizeFileMetadata.config] override
the values in the recognizer for this recognition request. If a mask is
provided, only the fields listed in the mask override the config in the
recognizer for this recognition request. If a wildcard (`*`) is provided,
[config][google.cloud.speech.v2.BatchRecognizeFileMetadata.config]
completely overrides and replaces the config in the recognizer for this
recognition request.
</pre>

<code>.google.protobuf.FieldMask config_mask = 5;</code>
java-speech/proto-google-cloud-speech-v2/src/main/java/com/google/cloud/speech/v2/BatchRecognizeFileMetadata.java