/*
 * Copyright 2023 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/cloud/compute/v1/compute.proto

package com.google.cloud.compute.v1;

public interface InstanceGroupManagerActionsSummaryOrBuilder
    extends
    // @@protoc_insertion_point(interface_extends:google.cloud.compute.v1.InstanceGroupManagerActionsSummary)
    com.google.protobuf.MessageOrBuilder {

  /**
   *
   *
   * <pre>
   * [Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
   * </pre>
   *
   * <code>optional int32 abandoning = 440023373;</code>
   *
   * @return Whether the abandoning field is set.
   */
  boolean hasAbandoning();
  /**
   *
   *
   * <pre>
   * [Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
   * </pre>
   *
   * <code>optional int32 abandoning = 440023373;</code>
   *
   * @return The abandoning.
   */
  int getAbandoning();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
   * </pre>
   *
   * <code>optional int32 creating = 209809081;</code>
   *
   * @return Whether the creating field is set.
   */
  boolean hasCreating();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
   * </pre>
   *
   * <code>optional int32 creating = 209809081;</code>
   *
   * @return The creating.
   */
  int getCreating();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
   * </pre>
   *
   * <code>optional int32 creating_without_retries = 369916745;</code>
   *
   * @return Whether the creatingWithoutRetries field is set.
   */
  boolean hasCreatingWithoutRetries();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
   * </pre>
   *
   * <code>optional int32 creating_without_retries = 369916745;</code>
   *
   * @return The creatingWithoutRetries.
   */
  int getCreatingWithoutRetries();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
   * </pre>
   *
   * <code>optional int32 deleting = 282846120;</code>
   *
   * @return Whether the deleting field is set.
   */
  boolean hasDeleting();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
   * </pre>
   *
   * <code>optional int32 deleting = 282846120;</code>
   *
   * @return The deleting.
   */
  int getDeleting();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.
   * </pre>
   *
   * <code>optional int32 none = 3387192;</code>
   *
   * @return Whether the none field is set.
   */
  boolean hasNone();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.
   * </pre>
   *
   * <code>optional int32 none = 3387192;</code>
   *
   * @return The none.
   */
  int getNone();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
   * </pre>
   *
   * <code>optional int32 recreating = 339057132;</code>
   *
   * @return Whether the recreating field is set.
   */
  boolean hasRecreating();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
   * </pre>
   *
   * <code>optional int32 recreating = 339057132;</code>
   *
   * @return The recreating.
   */
  int getRecreating();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
   * </pre>
   *
   * <code>optional int32 refreshing = 215044903;</code>
   *
   * @return Whether the refreshing field is set.
   */
  boolean hasRefreshing();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
   * </pre>
   *
   * <code>optional int32 refreshing = 215044903;</code>
   *
   * @return The refreshing.
   */
  int getRefreshing();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
   * </pre>
   *
   * <code>optional int32 restarting = 372312947;</code>
   *
   * @return Whether the restarting field is set.
   */
  boolean hasRestarting();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
   * </pre>
   *
   * <code>optional int32 restarting = 372312947;</code>
   *
   * @return The restarting.
   */
  int getRestarting();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
   * </pre>
   *
   * <code>optional int32 resuming = 201100714;</code>
   *
   * @return Whether the resuming field is set.
   */
  boolean hasResuming();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
   * </pre>
   *
   * <code>optional int32 resuming = 201100714;</code>
   *
   * @return The resuming.
   */
  int getResuming();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be started or are currently being started.
   * </pre>
   *
   * <code>optional int32 starting = 243064896;</code>
   *
   * @return Whether the starting field is set.
   */
  boolean hasStarting();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be started or are currently being started.
   * </pre>
   *
   * <code>optional int32 starting = 243064896;</code>
   *
   * @return The starting.
   */
  int getStarting();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
   * </pre>
   *
   * <code>optional int32 stopping = 105035892;</code>
   *
   * @return Whether the stopping field is set.
   */
  boolean hasStopping();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
   * </pre>
   *
   * <code>optional int32 stopping = 105035892;</code>
   *
   * @return The stopping.
   */
  int getStopping();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
   * </pre>
   *
   * <code>optional int32 suspending = 29113894;</code>
   *
   * @return Whether the suspending field is set.
   */
  boolean hasSuspending();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
   * </pre>
   *
   * <code>optional int32 suspending = 29113894;</code>
   *
   * @return The suspending.
   */
  int getSuspending();

  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
   * </pre>
   *
   * <code>optional int32 verifying = 451612873;</code>
   *
   * @return Whether the verifying field is set.
   */
  boolean hasVerifying();
  /**
   *
   *
   * <pre>
   * [Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
   * </pre>
   *
   * <code>optional int32 verifying = 451612873;</code>
   *
   * @return The verifying.
   */
  int getVerifying();
}
