Class ImmutabilityPolicyProperties
java.lang.Object
com.azure.resourcemanager.storage.models.ImmutabilityPolicyProperties
- All Implemented Interfaces:
com.azure.json.JsonSerializable<ImmutabilityPolicyProperties>
public final class ImmutabilityPolicyProperties
extends Object
implements com.azure.json.JsonSerializable<ImmutabilityPolicyProperties>
The properties of an ImmutabilityPolicy of a blob container.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an instance of ImmutabilityPolicyProperties class. -
Method Summary
Modifier and TypeMethodDescriptionGet the allowProtectedAppendWrites property: This property can only be changed for unlocked time-based retention policies.Get the allowProtectedAppendWritesAll property: This property can only be changed for unlocked time-based retention policies.etag()Get the etag property: ImmutabilityPolicy Etag.static ImmutabilityPolicyPropertiesfromJson(com.azure.json.JsonReader jsonReader) Reads an instance of ImmutabilityPolicyProperties from the JsonReader.Get the immutabilityPeriodSinceCreationInDays property: The immutability period for the blobs in the container since the policy creation, in days.state()Get the state property: The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked.com.azure.json.JsonWritertoJson(com.azure.json.JsonWriter jsonWriter) Get the updateHistory property: The ImmutabilityPolicy update history of the blob container.voidvalidate()Validates the instance.withAllowProtectedAppendWrites(Boolean allowProtectedAppendWrites) Set the allowProtectedAppendWrites property: This property can only be changed for unlocked time-based retention policies.withAllowProtectedAppendWritesAll(Boolean allowProtectedAppendWritesAll) Set the allowProtectedAppendWritesAll property: This property can only be changed for unlocked time-based retention policies.withImmutabilityPeriodSinceCreationInDays(Integer immutabilityPeriodSinceCreationInDays) Set the immutabilityPeriodSinceCreationInDays property: The immutability period for the blobs in the container since the policy creation, in days.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.azure.json.JsonSerializable
toJson, toJson, toJsonBytes, toJsonString
-
Constructor Details
-
ImmutabilityPolicyProperties
public ImmutabilityPolicyProperties()Creates an instance of ImmutabilityPolicyProperties class.
-
-
Method Details
-
etag
Get the etag property: ImmutabilityPolicy Etag.- Returns:
- the etag value.
-
updateHistory
Get the updateHistory property: The ImmutabilityPolicy update history of the blob container.- Returns:
- the updateHistory value.
-
immutabilityPeriodSinceCreationInDays
Get the immutabilityPeriodSinceCreationInDays property: The immutability period for the blobs in the container since the policy creation, in days.- Returns:
- the immutabilityPeriodSinceCreationInDays value.
-
withImmutabilityPeriodSinceCreationInDays
public ImmutabilityPolicyProperties withImmutabilityPeriodSinceCreationInDays(Integer immutabilityPeriodSinceCreationInDays) Set the immutabilityPeriodSinceCreationInDays property: The immutability period for the blobs in the container since the policy creation, in days.- Parameters:
immutabilityPeriodSinceCreationInDays- the immutabilityPeriodSinceCreationInDays value to set.- Returns:
- the ImmutabilityPolicyProperties object itself.
-
state
Get the state property: The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked.- Returns:
- the state value.
-
allowProtectedAppendWrites
Get the allowProtectedAppendWrites property: This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API.- Returns:
- the allowProtectedAppendWrites value.
-
withAllowProtectedAppendWrites
public ImmutabilityPolicyProperties withAllowProtectedAppendWrites(Boolean allowProtectedAppendWrites) Set the allowProtectedAppendWrites property: This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API.- Parameters:
allowProtectedAppendWrites- the allowProtectedAppendWrites value to set.- Returns:
- the ImmutabilityPolicyProperties object itself.
-
allowProtectedAppendWritesAll
Get the allowProtectedAppendWritesAll property: This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to both 'Append and Bock Blobs' while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API. The 'allowProtectedAppendWrites' and 'allowProtectedAppendWritesAll' properties are mutually exclusive.- Returns:
- the allowProtectedAppendWritesAll value.
-
withAllowProtectedAppendWritesAll
public ImmutabilityPolicyProperties withAllowProtectedAppendWritesAll(Boolean allowProtectedAppendWritesAll) Set the allowProtectedAppendWritesAll property: This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to both 'Append and Bock Blobs' while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API. The 'allowProtectedAppendWrites' and 'allowProtectedAppendWritesAll' properties are mutually exclusive.- Parameters:
allowProtectedAppendWritesAll- the allowProtectedAppendWritesAll value to set.- Returns:
- the ImmutabilityPolicyProperties object itself.
-
validate
public void validate()Validates the instance.- Throws:
IllegalArgumentException- thrown if the instance is not valid.
-
toJson
- Specified by:
toJsonin interfacecom.azure.json.JsonSerializable<ImmutabilityPolicyProperties>- Throws:
IOException
-
fromJson
public static ImmutabilityPolicyProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException Reads an instance of ImmutabilityPolicyProperties from the JsonReader.- Parameters:
jsonReader- The JsonReader being read.- Returns:
- An instance of ImmutabilityPolicyProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
- Throws:
IOException- If an error occurs while reading the ImmutabilityPolicyProperties.
-