Class CapacityReservationGroupInner

java.lang.Object
com.azure.core.management.ProxyResource
com.azure.core.management.Resource
com.azure.resourcemanager.compute.fluent.models.CapacityReservationGroupInner
All Implemented Interfaces:
com.azure.json.JsonSerializable<com.azure.core.management.ProxyResource>

public final class CapacityReservationGroupInner extends com.azure.core.management.Resource
Specifies information about the capacity reservation group that the capacity reservations should be assigned to. Currently, a capacity reservation can only be added to a capacity reservation group at creation time. An existing capacity reservation cannot be added or moved to another capacity reservation group.
  • Constructor Details

    • CapacityReservationGroupInner

      public CapacityReservationGroupInner()
      Creates an instance of CapacityReservationGroupInner class.
  • Method Details

    • zones

      public List<String> zones()
      Get the zones property: Availability Zones to use for this capacity reservation group. The zones can be assigned only during creation. If not provided, the group supports only regional resources in the region. If provided, enforces each capacity reservation in the group to be in one of the zones.
      Returns:
      the zones value.
    • withZones

      public CapacityReservationGroupInner withZones(List<String> zones)
      Set the zones property: Availability Zones to use for this capacity reservation group. The zones can be assigned only during creation. If not provided, the group supports only regional resources in the region. If provided, enforces each capacity reservation in the group to be in one of the zones.
      Parameters:
      zones - the zones value to set.
      Returns:
      the CapacityReservationGroupInner object itself.
    • id

      public String id()
      Get the id property: Fully qualified resource Id for the resource.
      Overrides:
      id in class com.azure.core.management.ProxyResource
      Returns:
      the id value.
    • name

      public String name()
      Get the name property: The name of the resource.
      Overrides:
      name in class com.azure.core.management.ProxyResource
      Returns:
      the name value.
    • type

      public String type()
      Get the type property: The type of the resource.
      Overrides:
      type in class com.azure.core.management.ProxyResource
      Returns:
      the type value.
    • withLocation

      public CapacityReservationGroupInner withLocation(String location)
      Overrides:
      withLocation in class com.azure.core.management.Resource
    • withTags

      Overrides:
      withTags in class com.azure.core.management.Resource
    • capacityReservations

      public List<SubResourceReadOnly> capacityReservations()
      Get the capacityReservations property: A list of all capacity reservation resource ids that belong to capacity reservation group.
      Returns:
      the capacityReservations value.
    • virtualMachinesAssociated

      public List<SubResourceReadOnly> virtualMachinesAssociated()
      Get the virtualMachinesAssociated property: A list of references to all virtual machines associated to the capacity reservation group.
      Returns:
      the virtualMachinesAssociated value.
    • instanceView

      public CapacityReservationGroupInstanceView instanceView()
      Get the instanceView property: The capacity reservation group instance view which has the list of instance views for all the capacity reservations that belong to the capacity reservation group.
      Returns:
      the instanceView value.
    • sharingProfile

      public ResourceSharingProfile sharingProfile()
      Get the sharingProfile property: Specifies the settings to enable sharing across subscriptions for the capacity reservation group resource. Pls. keep in mind the capacity reservation group resource generally can be shared across subscriptions belonging to a single azure AAD tenant or cross AAD tenant if there is a trust relationship established between the AAD tenants. **Note:** Minimum api-version: 2023-09-01. Please refer to https://aka.ms/computereservationsharing for more details.
      Returns:
      the sharingProfile value.
    • withSharingProfile

      public CapacityReservationGroupInner withSharingProfile(ResourceSharingProfile sharingProfile)
      Set the sharingProfile property: Specifies the settings to enable sharing across subscriptions for the capacity reservation group resource. Pls. keep in mind the capacity reservation group resource generally can be shared across subscriptions belonging to a single azure AAD tenant or cross AAD tenant if there is a trust relationship established between the AAD tenants. **Note:** Minimum api-version: 2023-09-01. Please refer to https://aka.ms/computereservationsharing for more details.
      Parameters:
      sharingProfile - the sharingProfile value to set.
      Returns:
      the CapacityReservationGroupInner object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<com.azure.core.management.ProxyResource>
      Overrides:
      toJson in class com.azure.core.management.Resource
      Throws:
      IOException
    • fromJson

      public static CapacityReservationGroupInner fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of CapacityReservationGroupInner from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of CapacityReservationGroupInner if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IllegalStateException - If the deserialized JSON object was missing any required properties.
      IOException - If an error occurs while reading the CapacityReservationGroupInner.