4  .io/moquette/broker/AbstractSessionMessageQueue()V   java/lang/StringisEmpty()Z"java/lang/IllegalArgumentException*queueName parameter can't be empty or null  (Ljava/lang/String;)Vorg/h2/mvstore/MVMap$Builder 0io/moquette/persistence/EnqueuedMessageValueType    valueType>(Lorg/h2/mvstore/type/DataType;)Lorg/h2/mvstore/MVMap$Builder;  ! "#)io/moquette/persistence/H2PersistentQueuestoreLorg/h2/mvstore/MVStore; % &' queueNameLjava/lang/String;)java/lang/StringBuilder (,queue_ (. /0append-(Ljava/lang/String;)Ljava/lang/StringBuilder; (2 34toString()Ljava/lang/String; 678 9:org/h2/mvstore/MVStoreopenMapK(Ljava/lang/String;Lorg/h2/mvstore/MVMap$MapBuilder;)Lorg/h2/mvstore/MVMap; < =>queueMapLorg/h2/mvstore/MVMap;@_meta 6B 9C*(Ljava/lang/String;)Lorg/h2/mvstore/MVMap; E F> metadataMapHhead JKL MNorg/h2/mvstore/MVMap containsKey(Ljava/lang/Object;)Z JP QRget&(Ljava/lang/Object;)Ljava/lang/Object;Tjava/lang/Long SV WX longValue()J SZ [\valueOf(J)Ljava/lang/Long; J^ _`put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;b&java/util/concurrent/atomic/AtomicLong ad e(J)V g Hh(Ljava/util/concurrent/atomic/AtomicLong;jtail l jh n opcheckEnqueuePreconditions(Ljava/lang/Object;)V ar sXgetAndIncrement u vcheckDequeuePreconditions xyz {Njava/lang/Objectequals}2io/moquette/broker/SessionRegistry$EnqueuedMessage J Rremove  checkIsEmptyPreconditions a intValue()I  closedZ   dropQueue 6  removeMap(Lorg/h2/mvstore/MVMap;)V  dequeue6()Lio/moquette/broker/SessionRegistry$EnqueuedMessage;  enqueue7(Lio/moquette/broker/SessionRegistry$EnqueuedMessage;)V Signature\Lorg/h2/mvstore/MVMap;:Lorg/h2/mvstore/MVMap;-(Lorg/h2/mvstore/MVStore;Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethis+Lio/moquette/persistence/H2PersistentQueue;messageTypeBuilderLorg/h2/mvstore/MVMap$Builder;headIdxJtailIdxLocalVariableTypeTabledLorg/h2/mvstore/MVMap$Builder; StackMapTablet4Lio/moquette/broker/SessionRegistry$EnqueuedMessage;nextHeadnextTail closeAndPurge()Ljava/lang/Object;fLio/moquette/broker/AbstractSessionMessageQueue; SourceFileH2PersistentQueue.java InnerClassesBuilderorg/h2/mvstore/MVMap$MapBuilder MapBuilder"io/moquette/broker/SessionRegistryEnqueuedMessage =>F>Hhjh"#&'*, , YYYN*+*,$**(Y*+-*$-1-5;*+(Y*+-,-?-1AD 7*DGI*DGOSU7*DGY]W*aYcf 7*DiI*DiOSU7*DiY]W*aYckR#$%'')++0,5-W.w1z2357:;<>@A>"#&'+z|= + 6 /y+*+m*fqA*; Y+]W*DG aY]WEF GH*I ++ I*t*f*kw*kq@*;YO|N*;Y~W*Di aY]W-"MNOQR+S7TGU I-+j U**f*kd Z[ @@***$`a b H**(Y*+-+-1A**(Y*+-+-?-1Ae!fGgHH&'A/* Ap3 *+|  J J |