Class AccountSasPermission

java.lang.Object
com.azure.storage.common.sas.AccountSasPermission

public final class AccountSasPermission extends Object
This is a helper class to construct a string representing the permissions granted by an Account SAS. Setting a value to true means that any SAS which uses these permissions will grant permissions for that operation. Once all the values are set, this should be serialized with toString and set as the permissions field on AccountSasSignatureValues.

It is possible to construct the permissions string without this class, but the order of the permissions is particular and this class guarantees correctness.

See Also:
  • Constructor Details

    • AccountSasPermission

      public AccountSasPermission()
      Initializes an AccountSasPermission object with all fields set to false.
  • Method Details

    • parse

      public static AccountSasPermission parse(String permissionString)
      Creates an AccountSasPermission from the specified permissions string. This method will throw an IllegalArgumentException if it encounters a character that does not correspond to a valid permission.
      Parameters:
      permissionString - A String which represents the AccountSasPermission.
      Returns:
      An AccountSasPermission object generated from the given String.
      Throws:
      IllegalArgumentException - If permString contains a character other than r, w, d, x, l, a, c, u, p, t, f or i.
    • hasReadPermission

      public boolean hasReadPermission()
      Returns:
      the read permission status
    • setReadPermission

      public AccountSasPermission setReadPermission(boolean hasReadPermission)
      Sets the read permission status.
      Parameters:
      hasReadPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasAddPermission

      public boolean hasAddPermission()
      Returns:
      the add permission status
    • setAddPermission

      public AccountSasPermission setAddPermission(boolean hasAddPermission)
      Sets the add permission status.
      Parameters:
      hasAddPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasCreatePermission

      public boolean hasCreatePermission()
      Returns:
      the create permission status
    • setCreatePermission

      public AccountSasPermission setCreatePermission(boolean hasCreatePermission)
      Sets the create permission status.
      Parameters:
      hasCreatePermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasWritePermission

      public boolean hasWritePermission()
      Returns:
      the write permission status
    • setWritePermission

      public AccountSasPermission setWritePermission(boolean hasWritePermission)
      Sets the write permission status.
      Parameters:
      hasWritePermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasDeletePermission

      public boolean hasDeletePermission()
      Returns:
      the delete permission status
    • setDeletePermission

      public AccountSasPermission setDeletePermission(boolean hasDeletePermission)
      Sets the delete permission status.
      Parameters:
      hasDeletePermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasDeleteVersionPermission

      public boolean hasDeleteVersionPermission()
      Returns:
      the delete version permission status
    • setDeleteVersionPermission

      public AccountSasPermission setDeleteVersionPermission(boolean hasDeleteVersionPermission)
      Sets the delete version permission status.
      Parameters:
      hasDeleteVersionPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasPermanentDeletePermission

      public boolean hasPermanentDeletePermission()
      Returns:
      the permanent delete permission status.
    • setPermanentDeletePermission

      public AccountSasPermission setPermanentDeletePermission(boolean permanentDeletePermission)
      Sets the permanent delete permission status.
      Parameters:
      permanentDeletePermission - Permission status to set
      Returns:
      the updated AccountSasPermission object.
    • hasListPermission

      public boolean hasListPermission()
      Returns:
      the list permission status
    • setListPermission

      public AccountSasPermission setListPermission(boolean hasListPermission)
      Sets the list permission status. This permission grants the ability to list blob containers, blobs, shares, directories, and files.
      Parameters:
      hasListPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasUpdatePermission

      public boolean hasUpdatePermission()
      Returns the update permission status, it allows the update of queue message and tables.
      Returns:
      the update permission status
    • setUpdatePermission

      public AccountSasPermission setUpdatePermission(boolean hasUpdatePermission)
      Sets the update permission status, it allows the update of queue messages and tables.
      Parameters:
      hasUpdatePermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasProcessMessages

      public boolean hasProcessMessages()
      Returns the process messages permission, this allows the retrieval and deletion of queue messages.
      Returns:
      the process messages permission status.
    • setProcessMessages

      public AccountSasPermission setProcessMessages(boolean hasProcessMessagesPermission)
      Sets the process messages permission, this allows the retrieval and deletion of queue messages.
      Parameters:
      hasProcessMessagesPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object
    • hasTagsPermission

      public boolean hasTagsPermission()
      Returns:
      the tags permission status.
    • setTagsPermission

      public AccountSasPermission setTagsPermission(boolean tagsPermission)
      Sets the tags permission status.
      Parameters:
      tagsPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object.
    • hasFilterTagsPermission

      public boolean hasFilterTagsPermission()
      Returns:
      the filter tags permission status.
    • setFilterTagsPermission

      public AccountSasPermission setFilterTagsPermission(boolean filterTagsPermission)
      Sets the filter tags permission status.
      Parameters:
      filterTagsPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object.
    • hasImmutabilityPolicyPermission

      public boolean hasImmutabilityPolicyPermission()
      Returns:
      the set immutability policy permission status.
    • setImmutabilityPolicyPermission

      public AccountSasPermission setImmutabilityPolicyPermission(boolean immutabilityPolicyPermission)
      Sets the set immutability policy permission status.
      Parameters:
      immutabilityPolicyPermission - Permission status to set
      Returns:
      the updated AccountSasPermission object.
    • toString

      public String toString()
      Converts the given permissions to a String. Using this method will guarantee the permissions are in an order accepted by the service.
      Overrides:
      toString in class Object
      Returns:
      A String which represents the AccountSasPermission.