Class AzureConfigurationParserUtils


  • public class AzureConfigurationParserUtils
    extends Object
    Utility class for parsing Oak Segment Azure configuration (e.g. connection string, container name, uri, etc.) from custom encoded String or Azure standard URI.
    • Method Detail

      • isCustomAzureConnectionString

        public static boolean isCustomAzureConnectionString​(String conn)
        Parameters:
        conn - the connection string
        Returns:
        true if this is a custom encoded Azure connection String, false otherwise
      • parseAzureConfigurationFromCustomConnection

        public static Map<String,​String> parseAzureConfigurationFromCustomConnection​(String connectionString)
        Parses a custom encoded connection string of the form (line breaks added for clarity):

        DefaultEndpointsProtocol=https;
        AccountName=devstoreaccount1;
        AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;
        SharedAccessSignature=mySasToken==;
        BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;
        ContainerName=mycontainer;
        Directory=mydir

        where the first 5 lines in the string represent a standard Azure Connection String and the last two lines are Oak Segment Azure specific arguments. Please note that all configuration keys are semicolon separated, except for the last entry. The order of keys is not important.
        Parameters:
        connectionString - the connection string
        Returns:
        parsed configuration map containing the Azure connectionString, containerName, dir and sharedAccessSignature (key names in bold)
      • parseAzureConfigurationFromUri

        public static Map<String,​String> parseAzureConfigurationFromUri​(String uriStr)
        Parses a standard Azure URI in the format https://myaccount.blob.core.windows.net/container/repo?sasToken. The sasToken is optional.
        Parameters:
        uriStr - the Azure URI as string
        Returns:
        parsed configuration map containing accountName, storageUri, dir, and sharedAccessSignature (key names in bold)