7  java/lang/Object()V   %net/luminis/quic/stream/StreamManager connection%Lnet/luminis/quic/QuicConnectionImpl;  roleLnet/luminis/quic/Role;  logLnet/luminis/quic/log/Logger;  net/luminis/quic/Roleother()Lnet/luminis/quic/Role;  computeMaxStreamId(ILnet/luminis/quic/Role;Z)I  !"maxOpenStreamIdUniI $ %"maxOpenStreamIdBidi '() *+net/luminis/quic/Version getDefault()Lnet/luminis/quic/Version; - ./ quicVersionLnet/luminis/quic/Version;1&java/util/concurrent/ConcurrentHashMap 0 4 56streamsLjava/util/Map;8java/util/concurrent/Semaphore 7: ;(I)V = >?openBidirectionalStreams Ljava/util/concurrent/Semaphore; A B?openUnidirectionalStreams D EServer G HClient' LMN OPjava/util/concurrent/TimeUnitDAYSLjava/util/concurrent/TimeUnit; R ST createStream@(ZJLjava/util/concurrent/TimeUnit;)Lnet/luminis/quic/QuicStream;V%java/util/concurrent/TimeoutExceptionXjava/lang/RuntimeException W[ \]apply<()Lnet/luminis/quic/stream/StreamManager$QuicStreamSupplier; _ S`(ZJLjava/util/concurrent/TimeUnit;Lnet/luminis/quic/stream/StreamManager$QuicStreamSupplier;)Lnet/luminis/quic/stream/QuicStreamImpl; 7b cd tryAcquire#(JLjava/util/concurrent/TimeUnit;)Z Ugjava/lang/InterruptedExceptioni-blocked createStream operation is interrupted klm nonet/luminis/quic/log/Loggerdebug(Ljava/lang/String;)Vqoperation interrupted Us o u vwgenerateStreamId(Z)I y z{flowController%Lnet/luminis/quic/stream/FlowControl; }~ \8net/luminis/quic/stream/StreamManager$QuicStreamSupplier(Lnet/luminis/quic/Version;ILnet/luminis/quic/QuicConnectionImpl;Lnet/luminis/quic/stream/FlowControl;Lnet/luminis/quic/log/Logger;)Lnet/luminis/quic/stream/QuicStreamImpl;  java/lang/IntegervalueOf(I)Ljava/lang/Integer;   java/util/Mapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; L P MILLISECONDS['net/luminis/quic/stream/EarlyDataStream  " nextStreamId  "net/luminis/quic/frame/StreamFrame getStreamId()I get&(Ljava/lang/Object;)Ljava/lang/Object;&net/luminis/quic/stream/QuicStreamImpl add'(Lnet/luminis/quic/frame/StreamFrame;)V isFinal()Z  isPeerInitiated(I)Z  ;increaseMaxOpenStreams  isUni  isBidi makeConcatWithConstants(II)Ljava/lang/String; (Lnet/luminis/quic/Version;ILnet/luminis/quic/QuicConnectionImpl;Lnet/luminis/quic/stream/FlowControl;Lnet/luminis/quic/log/Logger;)V  peerInitiatedStreamCallbackLjava/util/function/Consumer;  java/util/function/Consumeraccept(Ljava/lang/Object;)Vnet/luminis/quic/TransportError  1net/luminis/quic/QuicConstants$TransportErrorCodeSTREAM_LIMIT_ERROR3Lnet/luminis/quic/QuicConstants$TransportErrorCode; 6(Lnet/luminis/quic/QuicConstants$TransportErrorCode;)V (I)Ljava/lang/String; k oerror 'net/luminis/quic/frame/StopSendingFrame  getErrorCode()J  resetStream(J)V 'net/luminis/quic/frame/ResetStreamFrame  getFinalSize terminateStream(JJ)V  maxOpenStreamsUniUpdateQueuedZ \F(Lnet/luminis/quic/stream/StreamManager;)Ljava/util/function/Function;   net/luminis/quic/EncryptionLevelApp"Lnet/luminis/quic/EncryptionLevel; F(Lnet/luminis/quic/stream/StreamManager;)Ljava/util/function/Consumer;  #net/luminis/quic/QuicConnectionImplsend`(Ljava/util/function/Function;ILnet/luminis/quic/EncryptionLevel;Ljava/util/function/Consumer;)V  maxOpenStreamsBidiUpdateQueued $net/luminis/quic/ImplementationError   &net/luminis/quic/frame/MaxStreamsFrame   (JZ)V   isAppliesToBidirectional  createMaxStreamsUpdateBidi%(I)Lnet/luminis/quic/frame/QuicFrame;  B(Lnet/luminis/quic/frame/QuicFrame;Ljava/util/function/Consumer;)V  createMaxStreamsUpdateUni   ! getMaxStreams # $%maxStreamsAcceptedByPeerBidiLjava/lang/Long; '() *java/lang/Long longValue, -(IJ)Ljava/lang/String; '/ 0(J)Ljava/lang/Long; 72 3;release 5 6%maxStreamsAcceptedByPeerUni, 9 :;values()Ljava/util/Collection; =>? @Ajava/util/Collectionstream()Ljava/util/stream/Stream; C D()Ljava/util/function/Consumer; FGH IJjava/util/stream/StreamforEach (Ljava/util/function/Consumer;)V L M(J)Ljava/lang/String;QYServer initial max streams bidirectional is larger than supported; limiting to 2147483647 S T%(Ljava/lang/Long;J)Ljava/lang/String; LWZServer initial max streams unidirectional is larger than supported; limiting to 2147483647 S Z [abort])net/luminis/quic/QuicClientConnectionImpl _ `(Lnet/luminis/quic/Version;ILnet/luminis/quic/QuicClientConnectionImpl;Lnet/luminis/quic/stream/FlowControl;Lnet/luminis/quic/log/Logger;)V SignatureLLjava/util/Map;;^(Lnet/luminis/quic/QuicConnectionImpl;Lnet/luminis/quic/Role;Lnet/luminis/quic/log/Logger;II)VCodeLineNumberTableLocalVariableTablethis'Lnet/luminis/quic/stream/StreamManager;quicConnectionmaxOpenStreamsUnimaxOpenStreamsBidi maxStreamspeerRole bidirectional maxStreamId StackMapTable (Z)Lnet/luminis/quic/QuicStream;e'Ljava/util/concurrent/TimeoutException;timeoutJ timeoutUnit Exceptionsacquired Ljava/lang/InterruptedException;unit streamFactory:Lnet/luminis/quic/stream/StreamManager$QuicStreamSupplier;streamId(Lnet/luminis/quic/stream/QuicStreamImpl;createEarlyDataStream,(Z)Lnet/luminis/quic/stream/EarlyDataStream;idsetFlowController((Lnet/luminis/quic/stream/FlowControl;)Vprocessframe$Lnet/luminis/quic/frame/StreamFrame;java/lang/Throwable,(Lnet/luminis/quic/frame/StopSendingFrame;)VstopSendingFrame)Lnet/luminis/quic/frame/StopSendingFrame;,(Lnet/luminis/quic/frame/ResetStreamFrame;)VresetStreamFrame)Lnet/luminis/quic/frame/ResetStreamFrame;maxSizeretransmitMaxStreams%(Lnet/luminis/quic/frame/QuicFrame;)V"Lnet/luminis/quic/frame/QuicFrame; lostFrame(Lnet/luminis/quic/frame/MaxStreamsFrame;+(Lnet/luminis/quic/frame/MaxStreamsFrame;)V incrementabortAllsetPeerInitiatedStreamCallbackstreamProcessorLocalVariableTypeTable?(Ljava/util/function/Consumer;)VsetInitialMaxStreamsBidiinitialMaxStreamsBidisetInitialMaxStreamsUniinitialMaxStreamsUnigetMaxBidirectionalStreamsgetMaxUnirectionalStreamslambda$abortAll$2+(Lnet/luminis/quic/stream/QuicStreamImpl;)Vslambda$createEarlyDataStream$1loggerlambda$createStream$0 SourceFileStreamManager.java NestMembersBootstrapMethods  "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;      $java/lang/invoke/StringConcatFactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;?B?de\**+*, *-**,**,#*&,*0Y23*7Y9<*7Y9@f. :; <=>"?1@8ACBOC[Dg>\hi\j \\\k"\l"e2h6,C ,F ,F f"KMNQR!U,V/Xg42hi2m"2n2o-p"q Sreo*IKQMWYY Uf] ^ `g  sthioqLUSTeV* Z^feg*hiouvwPxUS`eM|*< a6*@ a6 UYe:*hjUYpr*t6*,**x*|:*3W,/ff6 lmpr$s,x/u1v<wFzM{h|y}gf y y1sz|hi|o|uv|{P||}M/~"h@q  BfxUeo* ^MUfg sthioqRU"vwe**x* F`=*Y`f(g *hi*o"qTe>*+xf ghiz{e+=*3N--++****Y:* **l*#d*l`jY*,**x*N*3-W-+* *-+*Yʷпç :*CfV.6>Ccwg*hi~"@q 6Q Exey!*3+ٸM, ,+ܶf g !hi! @q e}%*3+M,,++f$g %hi%@q$;ev*YM*4*Y`*Q** **1*Y#`#* ** **,çN,-mppspf2  5=GNfkugvhiv~"q=-De1  Y *YM*,çN,- Y*lf!g1hi1"q e1  Y *YM*,çN,- Y*#lf!g1hi1"q e8+ M,******f  # 7g 8hi83q # eip* Ffghi~"qQ@eL pfg hi ~"q @eL pfg hi ~"q @!e+I+*"&}+*"&e=*++j*+."*<1F+*4&7+*4&e=*+7j*+.4*@1f6 $ 7!B"J#M&\'j(})*-g*$&"j&"hiqMBeG*38<BEf 01g hi!JeP*+f 45ghi ca!eb*"*"&>*Kj*."N*PN@*<1**"Rf& <=">*?2@>ABCNFaHgbhibvq. !eb*4*4&>*Uj*.4N*VN@*@1**4Xf& OP"Q*R2S>TBVNYa[gbhibvq. !e2*"&f^g hi!e2*4&fbg hi e/*Yf0g  ecY*,\-^fg4./~" z{ e`Y*,-ffg4./~" z{}n}@