public Builder mergeFrom(
          com.google.storagetransfer.v1.proto.TransferTypes.ReplicationSpec other) {
        if (other
            == com.google.storagetransfer.v1.proto.TransferTypes.ReplicationSpec
                .getDefaultInstance()) return this;
        if (other.hasObjectConditions()) {
          mergeObjectConditions(other.getObjectConditions());
        }
        if (other.hasTransferOptions()) {
          mergeTransferOptions(other.getTransferOptions());
        }
        switch (other.getDataSourceCase()) {
          case GCS_DATA_SOURCE:
            {
              mergeGcsDataSource(other.getGcsDataSource());
              break;
            }
          case DATASOURCE_NOT_SET:
            {
              break;
            }
        }
        switch (other.getDataSinkCase()) {
          case GCS_DATA_SINK:
            {
              mergeGcsDataSink(other.getGcsDataSink());
              break;
            }
          case DATASINK_NOT_SET:
            {
              break;
            }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        onChanged();
        return this;
      }
<pre>
Specifies the configuration for a cross-bucket replication job. Cross-bucket
replication copies new or updated objects from a source Cloud Storage bucket
to a destination Cloud Storage bucket. Existing objects in the source bucket
are not copied by a new cross-bucket replication job.
</pre>

Protobuf type {@code google.storagetransfer.v1.ReplicationSpec}
java-storage-transfer/proto-google-cloud-storage-transfer-v1/src/main/java/com/google/storagetransfer/v1/proto/TransferTypes.java