@java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getCreateTime());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getUpdateTime());
    }
    for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
        internalGetLabels().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.String, java.lang.String> labels__ =
          LabelsDefaultEntryHolder.defaultEntry
              .newBuilderForType()
              .setKey(entry.getKey())
              .setValue(entry.getValue())
              .build();
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, labels__);
    }
    if (state_ != com.google.cloud.memorystore.v1.Instance.State.STATE_UNSPECIFIED.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(5, state_);
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getStateInfo());
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uid_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, uid_);
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeInt32Size(8, replicaCount_);
    }
    if (authorizationMode_
        != com.google.cloud.memorystore.v1.Instance.AuthorizationMode.AUTHORIZATION_MODE_UNSPECIFIED
            .getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(9, authorizationMode_);
    }
    if (transitEncryptionMode_
        != com.google.cloud.memorystore.v1.Instance.TransitEncryptionMode
            .TRANSIT_ENCRYPTION_MODE_UNSPECIFIED
            .getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, transitEncryptionMode_);
    }
    if (shardCount_ != 0) {
      size += com.google.protobuf.CodedOutputStream.computeInt32Size(11, shardCount_);
    }
    for (int i = 0; i < discoveryEndpoints_.size(); i++) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(12, discoveryEndpoints_.get(i));
    }
    if (nodeType_
        != com.google.cloud.memorystore.v1.Instance.NodeType.NODE_TYPE_UNSPECIFIED.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(13, nodeType_);
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getPersistenceConfig());
    }
    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(engineVersion_)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, engineVersion_);
    }
    for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
        internalGetEngineConfigs().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.String, java.lang.String> engineConfigs__ =
          EngineConfigsDefaultEntryHolder.defaultEntry
              .newBuilderForType()
              .setKey(entry.getKey())
              .setValue(entry.getValue())
              .build();
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(16, engineConfigs__);
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(17, getNodeConfig());
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(18, getZoneDistributionConfig());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeBoolSize(19, deletionProtectionEnabled_);
    }
    for (int i = 0; i < pscAutoConnections_.size(); i++) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(20, pscAutoConnections_.get(i));
    }
    for (int i = 0; i < pscAttachmentDetails_.size(); i++) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(
              21, pscAttachmentDetails_.get(i));
    }
    if (importSourcesCase_ == 23) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(
              23, (com.google.cloud.memorystore.v1.Instance.GcsBackupSource) importSources_);
    }
    if (importSourcesCase_ == 24) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(
              24, (com.google.cloud.memorystore.v1.Instance.ManagedBackupSource) importSources_);
    }
    for (int i = 0; i < endpoints_.size(); i++) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(25, endpoints_.get(i));
    }
    if (mode_ != com.google.cloud.memorystore.v1.Instance.Mode.MODE_UNSPECIFIED.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(26, mode_);
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeBoolSize(28, ondemandMaintenance_);
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(31, getMaintenancePolicy());
    }
    if (((bitField0_ & 0x00000400) != 0)) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(32, getMaintenanceSchedule());
    }
    if (((bitField0_ & 0x00000800) != 0)) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(
              33, getCrossInstanceReplicationConfig());
    }
    if (((bitField0_ & 0x00001000) != 0)) {
      size +=
          com.google.protobuf.CodedOutputStream.computeBoolSize(
              44, asyncInstanceEndpointsDeletionEnabled_);
    }
    if (((bitField0_ & 0x00002000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(47, backupCollection_);
    }
    if (((bitField0_ & 0x00004000) != 0)) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(48, getAutomatedBackupConfig());
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }
<pre>
Optional. The automated backup config for the instance.
</pre>

<code>
.google.cloud.memorystore.v1.AutomatedBackupConfig automated_backup_config = 48 [(.google.api.field_behavior) = OPTIONAL];
</code>
java-valkey/proto-google-cloud-valkey-v1/src/main/java/com/google/cloud/memorystore/v1/Instance.java