
com.groupbyinc.flux.common.cache.Cache$CacheSegment.class Maven / Gradle / Ivy
???? 4 3com/groupbyinc/flux/common/cache/Cache$CacheSegment <Ljava/lang/Object; java/lang/Object
Cache.java &com/groupbyinc/flux/common/cache/Cache CacheSegment @com/groupbyinc/flux/common/cache/Cache$CacheSegment$SegmentStats
SegmentStats ,com/groupbyinc/flux/common/cache/Cache$Entry
Entry (com/groupbyinc/flux/common/cache/Cache$1 %java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles Lookup segmentLock *Ljava/util/concurrent/locks/ReadWriteLock; readLock ;Lcom/groupbyinc/flux/common/util/concurrent/ReleasableLock; writeLock map Ljava/util/Map; tLjava/util/Map;>;>; segmentStats BLcom/groupbyinc/flux/common/cache/Cache$CacheSegment$SegmentStats; $assertionsDisabled Z ()V # $
% 1java/util/concurrent/locks/ReentrantReadWriteLock '
( % * 9com/groupbyinc/flux/common/util/concurrent/ReleasableLock , (java/util/concurrent/locks/ReadWriteLock . #()Ljava/util/concurrent/locks/Lock; 0 / 1 $(Ljava/util/concurrent/locks/Lock;)V # 3
- 4 6 0 / 8 : java/util/HashMap <
= % ? -(Lcom/groupbyinc/flux/common/cache/Cache$1;)V # A
B D this =Lcom/groupbyinc/flux/common/cache/Cache$CacheSegment; 5Lcom/groupbyinc/flux/common/cache/Cache$CacheSegment; get ~(Ljava/lang/Object;JLjava/util/function/Predicate;Ljava/util/function/Consumer;)Lcom/groupbyinc/flux/common/cache/Cache$Entry; java/lang/Throwable K 'java/util/concurrent/ExecutionException M java/lang/InterruptedException O acquire =()Lcom/groupbyinc/flux/common/util/concurrent/ReleasableLock; Q R
- S
java/util/Map U &(Ljava/lang/Object;)Ljava/lang/Object; I W V X &java/util/concurrent/CompletableFuture Z $closeResource 1(Ljava/lang/Throwable;Ljava/lang/AutoCloseable;)V \ ]
^ java/util/function/Predicate ` java/util/function/Consumer b ()Ljava/lang/Object; I d
[ e ! " g isCompletedExceptionally ()Z i j
[ k java/lang/AssertionError m
n % miss p $
q java/lang/IllegalStateException s (Ljava/lang/Throwable;)V # u
t v test (Ljava/lang/Object;)Z x y a z accept (Ljava/lang/Object;)V | } c ~ hit ? $
?
accessTime J ? ? ? future `Ljava/util/concurrent/CompletableFuture;>; (Ljava/util/concurrent/CompletableFuture; ignored entry 6Lcom/groupbyinc/flux/common/cache/Cache$Entry; .Lcom/groupbyinc/flux/common/cache/Cache$Entry; e )Ljava/util/concurrent/ExecutionException; Ljava/lang/InterruptedException; key TK; Ljava/lang/Object; now isExpired VLjava/util/function/Predicate;>; Ljava/util/function/Predicate; onExpiration ULjava/util/function/Consumer;>; Ljava/util/function/Consumer; put Q(Ljava/lang/Object;Ljava/lang/Object;J)Lcom/groupbyinc/flux/common/collect/Tuple; ((Ljava/lang/Object;Ljava/lang/Object;J)V # ?
? completedFuture <(Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; ? ?
[ ? 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; ? ? V ? "java/lang/invoke/LambdaMetafactory ? metafactory ?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; ? ?
? ? ? ? lambda$put$0 s(Lcom/groupbyinc/flux/common/cache/Cache$Entry;Ljava/lang/Throwable;)Lcom/groupbyinc/flux/common/cache/Cache$Entry; ? ?
? ? ? apply !()Ljava/util/function/BiFunction; ? ? ? handle I(Ljava/util/function/BiFunction;)Ljava/util/concurrent/CompletableFuture; ? ?
[ ? java/lang/Exception ? (com/groupbyinc/flux/common/collect/Tuple ? tuple P(Ljava/lang/Object;Ljava/lang/Object;)Lcom/groupbyinc/flux/common/collect/Tuple; ? ?
? ? Ljava/lang/Exception; value TV; existing remove 2(Ljava/lang/Object;Ljava/util/function/Consumer;)V ? W V ? eviction ? $
? onRemoval Ljava/util/function/Consumer;>;>; D(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/Consumer;)V isDone ? j
[ ? ? ? ? java/util/Objects ? equals '(Ljava/lang/Object;Ljava/lang/Object;)Z ? ?
? ? ? ? V ? removed ok ex Ljava/lang/Throwable; java/lang/AutoCloseable ? close ? $ ? ?
addSuppressed ? u
L ? x0 x1 Ljava/lang/AutoCloseable;
% *Lcom/groupbyinc/flux/common/cache/Cache$1; java/lang/Class ? desiredAssertionStatus ? j
? ? Signature Code LocalVariableTable LocalVariableTypeTable LineNumberTable
StackMapTable ?(TK;JLjava/util/function/Predicate;>;Ljava/util/function/Consumer;>;)Lcom/groupbyinc/flux/common/cache/Cache$Entry; ?(TK;TV;J)Lcom/groupbyinc/flux/common/collect/Tuple;Lcom/groupbyinc/flux/common/cache/Cache$Entry;>; ?(TK;Ljava/util/function/Consumer;>;>;)V ?(TK;TV;Ljava/util/function/Consumer;>;>;)V BootstrapMethods
SourceFile InnerClasses ? ! " # $ ? ? O*? &*? (Y? )? +*? -Y*? +? 2 ? 5? 7*? -Y*? +? 9 ? 5? ;*? =Y? >? @*? Y? C? E? ? O F H ? O F G ? ? ? ? # ? 7 ? B ? I J ? ? ?*? 7? T::*? @+? Y ? [:? '? _? : : ?:
?
? _
?? k? f? :? 0:? h? ? l? ? nY? o?*? E? r?:? tY? w?? { ? *? E? r? ?*? E? ? ? ??*? E? r? * L 3 * 5 3 I S V N I S w P ? z ? ? ; ? S ? ? X ? ? y
? ? ? . ? ? ? F H ? ? ? ? ? ? ? ? ? ? ? ? D v ? ? ? R ? ? S ? ? ? . ? ? ? F G ? ? ? ? ? ? ? ? ? D v ? ? ? ^ ? ? ? * ? 3 ? D ? I ? S ? V ? X ? n ? u ? w ? y ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? q
? * a c - L LH L?
L? a c [ Q N? N? a c [ P? ? ? ? ? ? ? ? ?? Y+,!? ?::*? ;? T::*? @+? ?? ? ? [: ? ? ? ? ?? f? :? : ? tY ? w?? '? _? : : ?:
?
? _
?? İ F I N F I P U d L U m d o m ? \ / ? ? K
? ? f ? ? F H ? ? ? ? ? ? ? ? ? z ? ? w ? ? ? > / ? ? ? F G ? ? ? ? ? ? z ? ? w ? ? ? : ? ? ? ? / ? 4 ? > F I K U d ? m ~
? J ? F - L B ?N LH L?
L? ? ? ? ? ? e V*? ;? T::*? @+? ? ? [N? '? _? ::?:?
? _?-? *? E? ?,-? ? ) L 2 ) 4 2 ? > ? ? : ? V F H V ? ? V ? ? C ? ? ? 4 ? ? V F G V ? ? V ? ? C ? ? ? &