ierandra commented on code in PR #1861:
URL: https://github.com/apache/jackrabbit-oak/pull/1861#discussion_r1863782781


##########
oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureBlobStoreBackend.java:
##########
@@ -47,81 +70,46 @@
 import java.util.UUID;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
+import java.util.stream.Collectors;
 
-import org.apache.jackrabbit.guava.common.base.Strings;
-import org.apache.jackrabbit.guava.common.cache.Cache;
-import org.apache.jackrabbit.guava.common.cache.CacheBuilder;
-import org.apache.jackrabbit.guava.common.collect.AbstractIterator;
-import org.apache.jackrabbit.guava.common.collect.Maps;
-import com.microsoft.azure.storage.AccessCondition;
-import com.microsoft.azure.storage.LocationMode;
-import com.microsoft.azure.storage.ResultContinuation;
-import com.microsoft.azure.storage.ResultSegment;
-import com.microsoft.azure.storage.RetryPolicy;
-import com.microsoft.azure.storage.StorageException;
-import com.microsoft.azure.storage.blob.BlobListingDetails;
-import com.microsoft.azure.storage.blob.BlobRequestOptions;
-import com.microsoft.azure.storage.blob.BlockEntry;
-import com.microsoft.azure.storage.blob.BlockListingFilter;
-import com.microsoft.azure.storage.blob.CloudBlob;
-import com.microsoft.azure.storage.blob.CloudBlobContainer;
-import com.microsoft.azure.storage.blob.CloudBlobDirectory;
-import com.microsoft.azure.storage.blob.CloudBlockBlob;
-import com.microsoft.azure.storage.blob.CopyStatus;
-import com.microsoft.azure.storage.blob.ListBlobItem;
-import com.microsoft.azure.storage.blob.SharedAccessBlobHeaders;
-import com.microsoft.azure.storage.blob.SharedAccessBlobPermissions;
-import org.apache.commons.io.IOUtils;
-import org.apache.jackrabbit.core.data.DataIdentifier;
-import org.apache.jackrabbit.core.data.DataRecord;
-import org.apache.jackrabbit.core.data.DataStoreException;
-import org.apache.jackrabbit.oak.commons.PropertiesUtil;
 import 
org.apache.jackrabbit.oak.plugins.blob.datastore.directaccess.DataRecordDownloadOptions;
 import 
org.apache.jackrabbit.oak.plugins.blob.datastore.directaccess.DataRecordUpload;
 import 
org.apache.jackrabbit.oak.plugins.blob.datastore.directaccess.DataRecordUploadException;
 import 
org.apache.jackrabbit.oak.plugins.blob.datastore.directaccess.DataRecordUploadOptions;
 import 
org.apache.jackrabbit.oak.plugins.blob.datastore.directaccess.DataRecordUploadToken;
-import org.apache.jackrabbit.oak.spi.blob.AbstractDataRecord;
-import org.apache.jackrabbit.oak.spi.blob.AbstractSharedBackend;
-import org.apache.jackrabbit.util.Base64;
-import org.jetbrains.annotations.NotNull;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
-public class AzureBlobStoreBackend extends AbstractSharedBackend {
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.BUFFERED_STREAM_THRESHOLD;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.DEFAULT_CONCURRENT_REQUEST_COUNT;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.LAST_MODIFIED_KEY;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MAX_ALLOWABLE_UPLOAD_URIS;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MAX_BINARY_UPLOAD_SIZE;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MAX_CONCURRENT_REQUEST_COUNT;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MAX_MULTIPART_UPLOAD_PART_SIZE;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MAX_SINGLE_PUT_UPLOAD_SIZE;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.META_DIR_NAME;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.META_KEY_PREFIX;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.MIN_MULTIPART_UPLOAD_PART_SIZE;
+import static 
org.apache.jackrabbit.oak.blob.cloud.azure.blobstorage.Constants.REF_KEY;
+
+
+public class AzureBlobStoreBackend extends AbstractAzureBlobStoreBackend {
 
     private static final Logger LOG = 
LoggerFactory.getLogger(AzureBlobStoreBackend.class);
     private static final Logger LOG_STREAMS_DOWNLOAD = 
LoggerFactory.getLogger("oak.datastore.download.streams");
     private static final Logger LOG_STREAMS_UPLOAD = 
LoggerFactory.getLogger("oak.datastore.upload.streams");
 
-    private static final String META_DIR_NAME = "META";
-    private static final String META_KEY_PREFIX = META_DIR_NAME + "/";
-
-    private static final String REF_KEY = "reference.key";
-    private static final String LAST_MODIFIED_KEY = "lastModified";
-
-    private static final long BUFFERED_STREAM_THRESHOLD = 1024 * 1024;
-    static final long MIN_MULTIPART_UPLOAD_PART_SIZE = 1024 * 1024 * 10; // 
10MB
-    static final long MAX_MULTIPART_UPLOAD_PART_SIZE = 1024 * 1024 * 100; // 
100MB
-    static final long MAX_SINGLE_PUT_UPLOAD_SIZE = 1024 * 1024 * 256; // 
256MB, Azure limit
-    static final long MAX_BINARY_UPLOAD_SIZE = (long) Math.floor(1024L * 1024L 
* 1024L * 1024L * 4.75); // 4.75TB, Azure limit
-    private static final int MAX_ALLOWABLE_UPLOAD_URIS = 50000; // Azure limit
-    private static final int MAX_UNIQUE_RECORD_TRIES = 10;
-    private static final int DEFAULT_CONCURRENT_REQUEST_COUNT = 2;
-    private static final int MAX_CONCURRENT_REQUEST_COUNT = 50;
-
     private Properties properties;
     private AzureBlobContainerProvider azureBlobContainerProvider;
     private int concurrentRequestCount = DEFAULT_CONCURRENT_REQUEST_COUNT;
-    private RetryPolicy retryPolicy;
+    private RequestRetryOptions retryOptions;
     private Integer requestTimeout;

Review Comment:
   this is not used anymore.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: oak-dev-unsubscr...@jackrabbit.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to