Author: tomekr
Date: Thu Aug  2 09:52:56 2018
New Revision: 1837286

URL: http://svn.apache.org/viewvc?rev=1837286&view=rev
Log:
OAK-7674: Allow to specify the connection string for AzureBlobStore

Modified:
    
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureConstants.java
    
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/Utils.java
    
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/test/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/UtilsTest.java

Modified: 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureConstants.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureConstants.java?rev=1837286&r1=1837285&r2=1837286&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureConstants.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureConstants.java
 Thu Aug  2 09:52:56 2018
@@ -31,6 +31,11 @@ public final class AzureConstants {
     public static final String AZURE_STORAGE_ACCOUNT_KEY = "secretKey";
 
     /**
+     * Azure connection string (overrides {@link #AZURE_SAS} and {@link 
#AZURE_BLOB_ENDPOINT}).
+     */
+    public static final String AZURE_CONNECTION_STRING = 
"azureConnectionString";
+
+    /**
      * Azure shared access signature token
      */
     public static final String AZURE_SAS = "azureSas";

Modified: 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/Utils.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/Utils.java?rev=1837286&r1=1837285&r2=1837286&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/Utils.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/Utils.java
 Thu Aug  2 09:52:56 2018
@@ -104,6 +104,11 @@ public final class Utils {
 
         String sasUri = properties.getProperty(AzureConstants.AZURE_SAS, "");
         String blobEndpoint = 
properties.getProperty(AzureConstants.AZURE_BLOB_ENDPOINT, "");
+        String connectionString = 
properties.getProperty(AzureConstants.AZURE_CONNECTION_STRING, "");
+
+        if (!connectionString.isEmpty()) {
+            return connectionString;
+        }
 
         if (!sasUri.isEmpty()) {
             return getConnectionStringForSas(sasUri, blobEndpoint);

Modified: 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/test/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/UtilsTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-blob-cloud-azure/src/test/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/UtilsTest.java?rev=1837286&r1=1837285&r2=1837286&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/test/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/UtilsTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-blob-cloud-azure/src/test/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/UtilsTest.java
 Thu Aug  2 09:52:56 2018
@@ -25,6 +25,14 @@ import static org.junit.Assert.assertEqu
 public class UtilsTest {
 
     @Test
+    public void testConnectionStringIsBasedOnProperty() {
+        Properties properties = new Properties();
+        properties.put(AzureConstants.AZURE_CONNECTION_STRING, 
"DefaultEndpointsProtocol=https;AccountName=accountName;AccountKey=accountKey");
+        String connectionString = 
Utils.getConnectionStringFromProperties(properties);
+        
assertEquals(connectionString,"DefaultEndpointsProtocol=https;AccountName=accountName;AccountKey=accountKey");
+    }
+
+    @Test
     public void testConnectionStringIsBasedOnSAS() {
         Properties properties = new Properties();
         properties.put(AzureConstants.AZURE_SAS, "sas");


Reply via email to