1U l l l l l l l l l l l l     l       l  l # l  & l  + l . .  1 l   8 l 8 8   ?`   D 8      H H H  l P P  P    O O ]!" #$ #% _& _'  ( _) * _+ ,- ,. l/ 012 345 6 37 _8 _9 v :;< v= v> v? _@ lA _B _C _D  E  F lG H _I J  K  L MN MO _P Q  R lS _T U V WX Y _Z _[ _\ ] _^ W_ _` _ab c lde fg  h i jk 3l Hm n o lp q r st Hu  v Hw xyz P{| P} _~   v u         l        InnerClassesSaveDownloadListJobSaveDownloadListTimerLoadDownloadListJobDownloadWorkerLauncherPRIORITY_MOVE_TO_TOPS ConstantValuePRIORITY_MOVE_UPPRIORITY_MOVE_DOWNPRIORITY_MOVE_TO_BOTTOMisManagerShutingDownZ workerListLjava/util/List; Signature;Ljava/util/List; downloadList9Ljava/util/List;urnToDownloadMapLjava/util/HashMap;MLjava/util/HashMap;ipDownloadCounterLphex/common/AddressCounter;temporaryWorker)Lphex/download/swarming/SWDownloadWorker;workerLauncher?Lphex/download/swarming/SwarmingManager$DownloadWorkerLauncher; dataWriter"Lphex/download/DownloadDataWriter;downloadWriteBufferTracker#Lphex/download/BufferVolumeTracker;downloadVerifyRunnerLphex/common/RunnerQueueWorker;saveDownloadListLockLjava/lang/Object;saveDownloadListJob8(Lphex/servent/Servent;Lphex/share/SharedFilesService;)VCodeLineNumberTableLocalVariableTablethis(Lphex/download/swarming/SwarmingManager;doStart()Vjob;getDownloadFile*(I)Lphex/download/swarming/SWDownloadFile;indexgetDownloadFilesAt,([I)[Lphex/download/swarming/SWDownloadFile;lengthindices[I;(JLphex/common/URN;)Lphex/download/swarming/SWDownloadFile;fileSizeJmatchURNgetDownloadFileByURN:(Lphex/common/URN;)Lphex/download/swarming/SWDownloadFile;isURNDownloaded(Lphex/common/URN;)ZreleaseCandidateAddress/(Lphex/download/swarming/SWDownloadCandidate;)V candidate,Lphex/download/swarming/SWDownloadCandidate;getCompletedDownloadFileslistLocalVariableTypeTableallocateDownloadSetQ(Lphex/download/swarming/SWDownloadWorker;)Lphex/download/swarming/SWDownloadSet;segmentAvailablesegmentAllocateableset&Lphex/download/swarming/SWDownloadSet;downloadCandidategetCandidateLogBuffer()Lphex/common/log/LogBuffer;notifyDownloadListChangetriggerSaveDownloadList(Z)VforceshutdownForceSaveDownloadListexp Ljava/lang/NullPointerException; Ljava/lang/InterruptedException;unsetTemporaryWorkernotifyWaitingWorkers waitForNotifygetRequiredDownloadWorkerCountcheckToStopWorker,(Lphex/download/swarming/SWDownloadWorker;)Z requiredCountnotifyWorkerShoutdown-(Lphex/download/swarming/SWDownloadWorker;Z)V isExpectedonDownloadFileCompletedEvent<(Ljava/lang/String;Lphex/download/swarming/SWDownloadFile;)VtopicdestFileRuntimeVisibleAnnotations7Lorg/bushe/swing/event/annotation/EventTopicSubscriber;phex:download/file/completedonDownloadCandidateEvent0(Ljava/lang/String;Lphex/event/ContainerEvent;)VeventLphex/event/ContainerEvent;phex:download/candidateonCandidateStatusChange-(Ljava/lang/String;Lphex/event/ChangeEvent;)VLphex/event/ChangeEvent;phex:download/candidate/statusfireDownloadFileAdded+(Lphex/download/swarming/SWDownloadFile;I)VpositionfireDownloadFileRemoved access$100+(Lphex/download/swarming/SwarmingManager;)Zx0 access$200+(Lphex/download/swarming/SwarmingManager;)I access$300S(Lphex/download/swarming/SwarmingManager;)Lphex/download/swarming/SWDownloadWorker; access$400:(Lphex/download/swarming/SwarmingManager;)Ljava/util/List; access$302|(Lphex/download/swarming/SwarmingManager;Lphex/download/swarming/SWDownloadWorker;)Lphex/download/swarming/SWDownloadWorker;x1 access$500 access$600=(Lphex/download/swarming/SwarmingManager;)Ljava/util/HashMap; access$700@(Lphex/download/swarming/SwarmingManager;)Lphex/servent/Servent; access$800S(Lphex/download/swarming/SwarmingManager;Lphex/download/swarming/SWDownloadFile;I)Vx2 access$900,(Lphex/download/swarming/SwarmingManager;Z)V access$1002,(Lphex/download/swarming/SwarmingManager;Z)Z access$1100()Ljava/lang/Object; access$1202(Lphex/download/swarming/SwarmingManager;Lphex/download/swarming/SwarmingManager$SaveDownloadListJob;)Lphex/download/swarming/SwarmingManager$SaveDownloadListJob; SourceFileSwarmingManager.java       X java/lang/NullPointerExceptionServent is null. SharedFilesService is null.     java/util/ArrayList java/util/HashMapphex/common/AddressCounter  java/lang/Integer X   phex/download/DownloadDataWriter  phex/common/RunnerQueueWorker !phex/download/BufferVolumeTracker    phex/common/log/LogBuffer    :phex/download/swarming/SwarmingManager$LoadDownloadListJob !phex/query/DownloadCandidateSnoop     phex/msg/QueryResponseMsg =phex/download/swarming/SwarmingManager$DownloadWorkerLauncher  ` ?.magma @A(phex/download/swarming/SwarmingManager$1 B Readout Magma CD E .metalink(phex/download/swarming/SwarmingManager$2Readout Metalink F.rss.xml(phex/download/swarming/SwarmingManager$3 Readout RSS GIJ KL  MkN O:phex/download/swarming/SWDownloadCandidate$CandidateStatusCandidateStatus PXphex:download/filephex/event/ContainerEvent Q RS TLjava/lang/Objectphex/common/AbstractLifeCycle(phex/download/swarming/SwarmingManager$4*org/apache/commons/httpclient/URIException(Ljava/lang/String;)Vphex/servent/ServentgetEventService()Lphex/event/PhexEventService;phex/event/PhexEventServiceprocessAnnotations(Ljava/lang/Object;)V(I)Vphex/prefs/core/DownloadPrefsMaxDownloadsPerIPLphex/prefs/api/Setting;phex/prefs/api/SettinggetintValue(IZ)V+(Lphex/download/swarming/SwarmingManager;)VMaxTotalDownloadWriteBuffer&(ILphex/download/DownloadDataWriter;)VCandidateLogBufferSize(J)VstartgetSecurityService%()Lphex/security/PhexSecurityManager;N(Lphex/download/swarming/SwarmingManager;Lphex/security/PhexSecurityManager;)VgetMessageService#()Lphex/msghandling/MessageService;phex/msghandling/MessageServiceaddMessageSubscriber8(Ljava/lang/Class;Lphex/msghandling/MessageSubscriber;)V setDaemonphex/common/Environment getInstance()Lphex/common/Environment;U(Lphex/download/swarming/SwarmingManager;Lphex/download/swarming/SwarmingManager$1;)VscheduleTimerTask(Ljava/util/TimerTask;JJ)V triggerCyclejava/util/ListsizetoArray(([Ljava/lang/Object;)[Ljava/lang/Object; stopWorkerisInsideCriticalSectionwaitTillFinishedshutdownappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;()Lphex/servent/Servent;getBandwidthService*()Lphex/common/bandwidth/BandwidthManager;&phex/common/bandwidth/BandwidthManagergetDownloadBandwidthController-()Lphex/common/bandwidth/BandwidthController;A(Ljava/lang/String;JLphex/common/bandwidth/BandwidthController;)VactivateShortTransferAvg(II)V(Lphex/download/swarming/SWDownloadFile;Lphex/download/BufferVolumeTracker;Lphex/download/DownloadDataWriter;Lphex/common/RunnerQueueWorker;)Vphex/download/RemoteFile getFileSize()JgetURN()Lphex/common/URN;~(Ljava/lang/String;Ljava/lang/String;JLphex/common/URN;Lphex/download/swarming/SwarmingManager;Lphex/event/PhexEventService;)VaddDownloadCandidate(Lphex/download/RemoteFile;)Zadd(Ljava/lang/Object;)Z getFileURNput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; setStatusphex/download/MagnetData parseFromURI?(Lorg/apache/commons/httpclient/URI;)Lphex/download/MagnetData; lookupSHA1URN-(Lphex/download/MagnetData;)Lphex/common/URN;phex/share/SharedFilesService isURNSharedphex/common/log/NLoggerisDebugEnabled(Ljava/lang/Class;)Z!org/apache/commons/httpclient/URIdebug&(Ljava/lang/Class;Ljava/lang/Object;)Vk(Lorg/apache/commons/httpclient/URI;Lphex/download/swarming/SwarmingManager;Lphex/event/PhexEventService;)VgetDestinationDirectory()Ljava/io/File;DestinationDirectory'(Ljava/lang/String;Ljava/lang/String;)VexistsmkdirsetDestinationDirectory(Ljava/io/File;)VisFileCompletedOrMovedisDownloadStopped stopDownloadindexOf(Ljava/lang/Object;)Iremove(I)Ljava/lang/Object;&(Ljava/lang/Object;)Ljava/lang/Object;removeIncompleteDownloadFilevalueOf(I)Ljava/lang/Integer;(ILjava/lang/Object;)Viterator()Ljava/util/Iterator;java/util/IteratorhasNextnext getStatus(Ljava/util/Collection;)VgetTotalDataSize containsKey*phex/download/swarming/SWDownloadCandidategetHostAddress#()Lphex/common/address/DestAddress; relaseAddress$(Lphex/common/address/DestAddress;)VisFileCompletedisAbleToBeAllocatedisScopeAllocateable$(Lphex/download/DownloadScopeList;)Z setMaxCountallocateDownloadCandidates(Lphex/download/swarming/SWDownloadWorker;Lphex/common/AddressCounter;)Lphex/download/swarming/SWDownloadCandidate;getAvailableScopeList#()Lphex/download/DownloadScopeList;releaseDownloadCandidateincrementWorkerCountl(Lphex/servent/Servent;Lphex/download/swarming/SWDownloadFile;Lphex/download/swarming/SWDownloadCandidate;)VtriggerFollowUpSave setPriorityjoinerror;(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Throwable;)VsetTemporaryWorker notifyAllwaitMaxWorkerPerDownloadMaxTotalDownloadWorkerjava/lang/Mathmin(II)I isRunningisTemporaryWorkerjava/lang/Thread interrupted-(Ljava/lang/Object;)Ljava/lang/StringBuilder;(Z)Ljava/lang/StringBuilder;getDestinationFileAutoReadoutMagmaFiles booleanValuegetNameendsWith(Ljava/lang/String;)Z9(Lphex/download/swarming/SwarmingManager;Ljava/io/File;)VexecuteOnThreadPool)(Ljava/lang/Runnable;Ljava/lang/String;)VAutoReadoutMetalinkFilesAutoReadoutRSSFilesgetTypeType"()Lphex/event/ContainerEvent$Type;phex/event/ContainerEvent$TypeADDED Lphex/event/ContainerEvent$Type;E$SwitchMap$phex$download$swarming$SWDownloadCandidate$CandidateStatusphex/event/ChangeEvent getNewValueordinalH(Lphex/event/ContainerEvent$Type;Ljava/lang/Object;Ljava/lang/Object;I)Vpublish'(Ljava/lang/String;Ljava/lang/Object;)VREMOVED!l      ;^* + Y, Y+**+*,** *Y *Y*Y*Y* Y*!"*#Y$%*&Y'*"()**+Y*,-R */49>JVay   q.Y*/L+0*1Y**234*56*47*8Y*9:*:;*:<*"=>?Y*@AACDYEW. 1=ELShpq hC*YL* +çM+,*: *:F* GHL* +IW=++2N--J=++2N--K-L*" *"M*N V !.9AEIMS[_jnt{ >E;_U.Y !"#{5OYPYQRS+TSUVXYZ[M,\,*3 55$%* &'()/*" *+/*)! ,-/*%& ./I]Y+*)*"*%^+0%!12. _Y,-+`+a**b:+cW*Y:*G6*dWe:*fWç :*g*:F**\__d_:25"7*95:A;H<M>Y@gAoBuC|FHHH34567898i$%5O:!1;)+hN- -i:*j*klmlPYQnS+oSUp_Y+**qN-e:*Y:*G6*-dW*-fWç :*--g*:F*-nVXZ [ ]^(`*e3fOi`kfnnpyqrtvwxy|}R34 !<=>?@`\$%fV34yC:AB!1C1  ,+h:!i:*j*klmlPYQnS+oSUp_Y+**q:r:rs:tu:vY,w:x yWze:*Y: *G6 *dW*fW ç :   * g*:F*z +-6Rdkpz} 34 #<=zD8  >? E8 @d$%kFGD8wHG[34H: ABIJG *+{*   0%KLi=+*+2{* MNOJ_+|+}+~*YN*+=*W*++e: *W-ç :-+PSSWS6 $(39?DNZ^*?34__0%$;:PQ`*+=   0% :RL{*YM>+b*+26I6*G6*W*+2*+2*+2,ç :,pssws:"!%"8$<&H'V(_)hn,z-4%CSK: e{{MNTUl*YN*+66>+%16*Gd6*G-ì*W*+*+*+-ì-ì:-rsV:<=?@<C?DBFEGHIKJNL[OnQsTUVWXZ[4S:0%VWX4 *Gc  WYG=*YN*:_:-ç :- ;>>B>"kl n*p3r6t9uEv4* 0%%Z[GG\E]^X_<*YM*N-8-_:,ç :, SVVZV&  'HKNQ]*''0%>Z[_]]_`\*YL*M,7,_N-+ì+ç :+JSKPSSWS"$DGKNZ $'0%=Z[\ab6 Y*  cde1*YM*G,ð*_,ðN,-,+,,/,,11fgh`*YM+>_:6>+.+.*G S*+._S,ð:,XYY]Y.  069NTY4A OiIMN``jkdl1*Y:*-: ðð:#)$()).)$)*0%11mn1o4pqx*YN*+_M,-ð:- o4 0%rsq+*YM*+,ìN,-  o4tuD *+    vw!xbM*YL»YM*N-"-_: ,dW,+ð:+EFFJF"')*.,6.?0B1F2*.$%(Z[6yMz 6yc!{| *YMN*:_:6*+*N--6 -YX-:+* *,ð,ç : , ^;= >*@2E5I=JBLEQXScUgZj^u`zefilnprtuR=k}u3~*~$%Z[ w/*- 4*  I *lpYM* **Y**,çN,-@CCFC.   !(+7>HIIdlpYL**Y** *+çM+,** *L Ll++477:7CSV<WZF!(+2<CLSVWZ[c W[d"K* * *:F  !3*  !6*  AXK!*h !!G* =* * G'++J* +W+* .  $/6;=CE! GGBElPYQS+SUp+J* +W+* *:F)"+&,1-8/=1D2 EEE,N ->Y*-²ö -Ķ>Y*-Ƕ²ȶ -ɶ>Y*-̶±"FG J1SLV]axdl*80%G sU,ͲΦ*ϱr tv 8 sP,Ҷ.A :AAAAAAAAAA*ϧ|HLO PP8P s]XԻY+*ֹ  0%]XԻY+*ֹ  0%/* K /* K /* K /* K ;*+Z K/*K /*K /*K E*+K %:*K;*ZKK;*+ZK# YڳR ll?l.l8lW@H@