
org.apache.jackrabbit.oak.spi.blob.AbstractBlobStore.class Maven / Gradle / Ivy
???? 2i
?IJ
I
KL ?M ?N ?OP
I ?Q
?R
ST ?U VW ?X
?YZ[
\]
\^
_
?`
ab
cde
I
?f
g
hi
?jVk
lmno
%pq
rst
uvw
?x
+y
uz{
s|
u}~
2I
2
2?
??
??
2???
:???
s?
s?
??
s?????
DI
D???? ??
???
r?
??
??
?? ??
s??
R?????
? ?
??
?
??
??
??
$?
??
??
??
?
??
??
?? ??V?
?
??
j?
????
m?
m??????
??
??
h?
j?V?
??
??
??
???
2??
$\?
??
?? ??
?????
2?
?????
???
???
$?
???
????
??????
ChunkIterator InnerClasses Data BlockId HASH_ALGORITHM Ljava/lang/String;
ConstantValue TYPE_DATA I TYPE_HASH BLOCK_SIZE_LIMIT 0 inUse Ljava/util/Map; Signature TLjava/util/Map;>; blockSizeMin blockSize blockBuffer -Ljava/util/concurrent/atomic/AtomicReference; 1Ljava/util/concurrent/atomic/AtomicReference<[B>; ALGORITHM referenceKey [B log Lorg/slf4j/Logger; statsCollector =Lorg/apache/jackrabbit/oak/spi/blob/stats/BlobStatsCollector; ()V Code LineNumberTable LocalVariableTable this 6Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore; setBlockSizeMin (I)V x getBlockSizeMin ()J setBlockSize setStatsCollector @(Lorg/apache/jackrabbit/oak/spi/blob/stats/BlobStatsCollector;)V stats getStatsCollector ?()Lorg/apache/jackrabbit/oak/spi/blob/stats/BlobStatsCollector; validateBlockSize
StackMapTable getBlockSize ()I writeBlob &(Ljava/lang/String;)Ljava/lang/String; tempFilePath file Ljava/io/File; in Ljava/io/InputStream;??]??
Exceptions )(Ljava/io/InputStream;)Ljava/lang/String; e Ljava/io/IOException; idStream Ljava/io/ByteArrayOutputStream; id blobIden getInputStream )(Ljava/lang/String;)Ljava/io/InputStream; getReference mac Ljavax/crypto/Mac; hash (Ljava/security/NoSuchAlgorithmException; #Ljava/security/InvalidKeyException; &Ljava/io/UnsupportedEncodingException;??? "RuntimeVisibleParameterAnnotations Ljavax/annotation/Nonnull; getBlobId reference colon getOrCreateReferenceKey ()[B referenceKeyValue getReferenceKey setReferenceKey ([B)V setReferenceKeyEncoded (Ljava/lang/String;)V
encodedKey setReferenceKeyPlainText textKey
usesBlobId
clearInUse convertBlobToId 9(Ljava/io/InputStream;Ljava/io/ByteArrayOutputStream;IJ)V
messageDigest Ljava/security/MessageDigest; digest start J idBlock blockLen level totalLength count block?
storeBlock ([BI[B)V startMark sweep
isMarkEnabled ()Z mark A(Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore$BlockId;)V markInUse i$ Ljava/util/Iterator;? readBlob (Ljava/lang/String;J[BII)I len readPos Ljava/io/ByteArrayInputStream; type pos buff off length? readBlock ([BJ)[B >Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore$BlockId; load {(Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore$BlockId;)Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore$Data; Ljava/lang/Exception; data? readBlockFromBackend B(Lorg/apache/jackrabbit/oak/spi/blob/AbstractBlobStore$BlockId;)[B
getBlobLength (Ljava/lang/String;)J digestLength !(Ljava/io/ByteArrayInputStream;)V
resolveChunks ((Ljava/lang/String;)Ljava/util/Iterator; <(Ljava/lang/String;)Ljava/util/Iterator; deleteChunks (Ljava/util/List;J)Z chunkIds Ljava/util/List; maxLastModifiedTime LocalVariableTypeTable $Ljava/util/List; ((Ljava/util/List;J)Z &(Ljava/lang/Object;)Ljava/lang/Object; x0 Ljava/lang/Object; BackendLjava/lang/Object;Lorg/apache/jackrabbit/oak/spi/blob/GarbageCollectableBlobStore;Lorg/apache/jackrabbit/oak/commons/cache/Cache$Backend;
SourceFile AbstractBlobStore.java ? ? java/util/WeakHashMap??? ? ? ? ? ? ? +java/util/concurrent/atomic/AtomicReference ? ?????? ? ??? ? ? ? ? ? "java/lang/IllegalArgumentException FThe minimum size must be bigger than a content hash itself; limit = 48 ? ? java/io/File java/io/FileInputStream ?? ? ??????? java/io/ByteArrayOutputStream ? ? ?? ? java/io/IOException 7org/apache/jackrabbit/oak/spi/blob/BlobStoreInputStream ? BlobId must be specified HmacSHA1
javax/crypto/spec/SecretKeySpec ? ? ?
UTF-8 java/lang/StringBuilder &java/security/NoSuchAlgorithmException java/lang/IllegalStateException ? !java/security/InvalidKeyException $java/io/UnsupportedEncodingException ! ? ?"# 6Possibly invalid reference as blobId does not match {}$%& java/security/SecureRandom' ? ?Reference key is not specified for the BlobStore in use. Generating a random key. For stable reference ensure that reference key is specified( ? ? ? ? ? ~Reference key already initialized by default means. To explicitly set it, setReferenceKey must be invoked before its first use)*+,- ? ?./01 java/lang/ref/WeakReference ?234 5 ?6B789: ?;<:= SHA-256?>?= ?@A: ?BC ?DEFGHIJKL ?M ? java/io/ByteArrayInputStream ? ?N2 java/util/ArrayListOP ?QRS?TUV java/lang/String ?WX ?Y ?Z[\]^_)* Unknown blobs id type `
for blob