File indexing completed on 2025-01-18 09:55:12
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #ifndef DAVIX_AZURE_UTILS_HPP
0023 #define DAVIX_AZURE_UTILS_HPP
0024
0025 #include <params/davixrequestparams.hpp>
0026
0027 namespace Davix {
0028 namespace Azure {
0029
0030 namespace Resource {
0031 typedef enum {
0032 CONTAINER,
0033 BLOB
0034 } Type;
0035 }
0036
0037 namespace Permission {
0038 const std::string READ("r");
0039 const std::string CREATE("c");
0040 const std::string WRITE("w");
0041 const std::string LIST("l");
0042 const std::string DELETE("d");
0043
0044 typedef std::string Type;
0045 }
0046
0047 std::string extract_azure_filename(const Uri & url);
0048 std::string extract_azure_container(const Uri & url);
0049 std::string extract_azure_account(const Uri & url);
0050
0051 Uri transformURI(const Uri & original_url, const RequestParams & params, const bool addDelimiter);
0052
0053 Uri signURI(const AzureSecretKey key, const std::string method, const Uri & url, const time_t signDuration);
0054
0055 Uri signURI(const AzureSecretKey key, const Azure::Resource::Type resourceType, const Azure::Permission::Type permissions, const Uri & url,
0056 const time_t signDuration);
0057
0058 }
0059 }
0060
0061
0062
0063 #endif
0064