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

    if (state_ != other.state_) return false;
    if (stateInitiator_ != other.stateInitiator_) return false;
    if (!getStateDataCase().equals(other.getStateDataCase())) return false;
    switch (stateDataCase_) {
      case 2:
        if (!getCreatingData().equals(other.getCreatingData())) return false;
        break;
      case 3:
        if (!getAcceptedData().equals(other.getAcceptedData())) return false;
        break;
      case 4:
        if (!getProvisioningData().equals(other.getProvisioningData())) return false;
        break;
      case 5:
        if (!getFailedData().equals(other.getFailedData())) return false;
        break;
      case 6:
        if (!getDeletingData().equals(other.getDeletingData())) return false;
        break;
      case 7:
        if (!getActiveData().equals(other.getActiveData())) return false;
        break;
      case 8:
        if (!getSuspendingData().equals(other.getSuspendingData())) return false;
        break;
      case 9:
        if (!getSuspendedData().equals(other.getSuspendedData())) return false;
        break;
      case 0:
      default:
    }
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }
<pre>
Output only. The initiator of the QueuedResources's current state. Used to
indicate whether the SUSPENDING/SUSPENDED state was initiated by the user
or the service.
</pre>

<code>
.google.cloud.tpu.v2.QueuedResourceState.StateInitiator state_initiator = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
</code>

@return The stateInitiator.
java-tpu/proto-google-cloud-tpu-v2/src/main/java/com/google/cloud/tpu/v2/QueuedResourceState.java