1 I hJ KL MNO P@@ QR ST U hVW I hXY I hZ [\] ^` [_` I ha hb hc de fg hh i i hj hk lm hno *p lq *r ls lt lu *v lw *x ly hz l{ h| l} ~   h h     *    *q  h        * * h@Y Q   < < <  ~ ~  h a e e  d   o n  u d n  h     n        I        h    *s < *  *  *t *u *       InnerClassesSaveHostsContainerTimerSaveHostsContainerRunner HIGH_PRIORITYS ConstantValueNORMAL_PRIORITY LOW_PRIORITYFREE_SLOT_SET_SIZEI caughtHosts'Lphex/common/collections/PriorityQueue;uniqueCaughtHostsLjava/util/HashSet; Signature+Ljava/util/HashSet;catchedHostCacheLphex/host/CatchedHostCache;freeLeafSlotSetLjava/util/Set;'Ljava/util/Set;freeUltrapeerSlotSethasChangedSinceLastSaveZhostFetchingStrategy Lphex/host/HostFetchingStrategy;serventLphex/servent/Servent;$assertionsDisabled(Lphex/servent/Servent;)VCodeLineNumberTableLocalVariableTablethis Lphex/host/CaughtHostsContainer; capacities[IsetHostFetchingStrategy#(Lphex/host/HostFetchingStrategy;)VinitializeCaughtHostsContainer()V catchHosts(Lphex/msg/PongMsg;)Zpriority ipPortAdd!Lphex/common/address/DestAddress;i$Ljava/util/Iterator;pongMsgLphex/msg/PongMsg; pongAddressvalid caughtHostLphex/host/CaughtHost; dailyUptimevendorLjava/lang/String; ipPortPairsisNewLocalVariableTypeTable2Ljava/util/Set; addCaughtHost%(Lphex/common/address/DestAddress;S)VaddressaddToCaughtHostFetcher(Lphex/host/CaughtHost;S)ZremovedLjava/lang/Object;addPersistentCaughtHost(Lphex/host/CaughtHost;)V existingHostgetCaughtHostsCount()IgetNextCaughtHost#()Lphex/common/address/DestAddress;hostonConnectionStatusEvent<(Ljava/lang/String;Lphex/connection/ConnectionStatusEvent;)Vtopicevent'Lphex/connection/ConnectionStatusEvent; hostAddressRuntimeVisibleAnnotations7Lorg/bushe/swing/event/annotation/EventTopicSubscriber;phex:net/connectionStatusonGnutellaNetworkEvent-(Ljava/lang/String;Lphex/event/ChangeEvent;)VLphex/event/ChangeEvent;phex:servent/gnutellaNetworkensureMinCaughHostsminCountisValidCaughtHostAddress$(Lphex/common/address/DestAddress;)ZaddToFreeUltrapeerSlotSetaddToFreeLeafSlotSetgetFreeUltrapeerSlotHosts()Ljava/util/List; freeHostsLjava/util/ArrayList;-Ljava/util/ArrayList;*()Ljava/util/List;getFreeLeafSlotHostsloadHostsFromFilebrLjava/io/BufferedReader;inStreamLjava/io/InputStream;accessLphex/security/AccessType;fileLjava/io/File; securityMgr#Lphex/security/PhexSecurityManager;line usedPriorityexpLjava/io/IOException;parseCaughtHostFromLine*(Ljava/lang/String;)Lphex/host/CaughtHost;hostAddressStrlastFailedconnectionJlastSuccessfulConnection!Ljava/lang/NumberFormatException; tokenizerLjava/util/StringTokenizer; tokenCountvendorVersionMajorvendorVersionMinor isUltrapeerip[BportsaveHostsContainersaveCaughtHostsiteratorbwLjava/io/BufferedWriter;,Ljava/util/Iterator; SourceFileCaughtHostsContainer.java   java/lang/Integer     %phex/common/collections/PriorityQueue  java/util/HashSet phex/host/CatchedHostCache  6phex/host/CaughtHostsContainer$SaveHostsContainerTimer  1org/apache/commons/collections/set/ListOrderedSet     !  phex/host/CaughtHost     ! " # $% &' () *'  +'  ,-. B/0 1' 2phex/common/address/DestAddress  34 54 67 84 9 :; 5 8 <  =' >? @ ACD EF GFH IJ KL ML @ NOP RST UV W' X' Y'Z [ \ 8] java/lang/AssertionError)freeUltrapeerSlotSet grows over max size. $freeLeafSlotSet grows over max size.java/util/ArrayList ^ _phex/host/CaughtHostsContainerLoading hosts file.` ab cde fgh i'java/io/BufferedReaderjava/io/FileReader j kLoad default hosts file.phex/resources/phex.hostsl mnjava/io/InputStreamReader o"Default Phex Hosts file not found. pq r!#s tu 01v wx yz { |} ~java/io/IOException java/util/StringTokenizer,   ! java/lang/NumberFormatException  ujava/lang/StringBuilderUnknown HostCache line format:  ! b  &phex/common/address/DefaultDestAddress - 4 AStart saving caught hosts.java/io/BufferedWriterjava/io/FileWriter  ! J  J  <'    Finish saving caught hosts. 'java/lang/Object phex/host/CaughtHostsContainer$17phex/host/CaughtHostsContainer$SaveHostsContainerRunnerphex/prefs/core/NetworkPrefsMaxHostInHostCacheLphex/prefs/api/Setting;phex/prefs/api/Settingget()Ljava/lang/Object; doubleValue()Djava/lang/Mathround(D)JintValue([I)Vphex/common/Environment getInstance()Lphex/common/Environment;E(Lphex/host/CaughtHostsContainer;Lphex/host/CaughtHostsContainer$1;)VscheduleTimerTask(Ljava/util/TimerTask;JJ)Vphex/servent/ServentgetEventService()Lphex/event/PhexEventService;phex/event/PhexEventServiceprocessAnnotations(Ljava/lang/Object;)Vclearphex/msg/PongMsggetPongAddress$(Lphex/common/address/DestAddress;)VgetDailyUptimesetDailyUptime(I)V getVendor()Ljava/lang/String;getVendorVersionMajorgetVendorVersionMinor setVendor(Ljava/lang/String;II)VisUltrapeerMarked()Z setUltrapeer(Z)VhasFreeLeafSlotshasFreeUPSlotsgetIPPDestAddresses()Ljava/util/Set; java/util/Set()Ljava/util/Iterator;java/util/IteratorhasNextnextcontains(Ljava/lang/Object;)Zadd addToHead'(Ljava/lang/Object;I)Ljava/lang/Object;removegetHostAddress getCaughHost9(Lphex/common/address/DestAddress;)Lphex/host/CaughtHost;getSizeisEmptyremoveMaxPriority%phex/connection/ConnectionStatusEvent getHostAddres getStatusStatus0()Lphex/connection/ConnectionStatusEvent$Status;,phex/connection/ConnectionStatusEvent$Status SUCCESSFUL.Lphex/connection/ConnectionStatusEvent$Status;HANDSHAKE_REJECTEDjava/lang/SystemcurrentTimeMillis()JsetLastSuccessfulConnection(J)VsetLastFailedConnectionceil(D)D-phex/host/HostFetchingStrategy$FetchingReasonFetchingReasonEnsureMinHosts/Lphex/host/HostFetchingStrategy$FetchingReason;phex/host/HostFetchingStrategy fetchNewHosts2(Lphex/host/HostFetchingStrategy$FetchingReason;)V isLocalHostisValidAddressisSiteLocalAddressphex/utils/IPUtilsisPortInUserInvalidListsize(I)Ljava/lang/Object;(Ljava/util/Collection;)V trimToSizephex/common/log/NLoggerdebug&(Ljava/lang/Class;Ljava/lang/Object;)VgetGnutellaNetwork()Lphex/common/GnutellaNetwork;phex/common/GnutellaNetwork getHostsFile()Ljava/io/File; java/io/Fileexists(Ljava/io/File;)V(Ljava/io/Reader;)Vjava/lang/ClassLoadergetSystemResourceAsStream)(Ljava/lang/String;)Ljava/io/InputStream;(Ljava/io/InputStream;)VgetSecurityService%()Lphex/security/PhexSecurityManager;readLinejava/lang/String startsWith(Ljava/lang/String;)Z!phex/security/PhexSecurityManagercontrolHostAddressAccess=(Lphex/common/address/DestAddress;)Lphex/security/AccessType;#$SwitchMap$phex$security$AccessTypephex/security/AccessTypeordinalisFull(I)Zclosewarn;(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Throwable;)V'(Ljava/lang/String;Ljava/lang/String;)V countTokens nextTokenjava/lang/Long parseLong(Ljava/lang/String;)JparseInt(Ljava/lang/String;)Ijava/lang/Boolean parseBooleanappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString phex/common/address/AddressUtilsparseIP(Ljava/lang/String;)[B parsePort([BI)Vequals(Ljava/io/Writer;)VgetFullHostNamegetLastFailedConnection(J)Ljava/lang/StringBuilder;getLastSuccessfulConnection(I)Ljava/lang/StringBuilder;(Z)Ljava/lang/StringBuilder;write(Ljava/lang/String;)VnewLineerrorjava/lang/ClassdesiredAssertionStatus!h 1**+ M,k o O,,.gk o O, ,.d,.dO* Y,*Y*YY**Y*Y* +!*">ef h i(kHm_okqvrtxy|~  >*+# R*$*%*&*'  +(M*,)>*Y,+:+,6 -+.:+/+01+23+2#6+4 *5+6*76+8:69:  :# ;<: * ) *=W*>*=6  v !&-38GPWZagntwz Z *  !3zQK K$*+)>*Y++:*>*=W #4$$$"2>*+?&*+@>*+A: *BW !&04!2220Z*YM+CN*-D:*+E%*F+G +G-*E*&,ç :,ORRVR6     #&/6?HMY * A7ZZ!2*H) !q)*I*J*K*L*+BW+C5689":'>)3,LN*-)6*Y:*-D:*Y-+: *F,MN ,MOPQ PR*E*&ç :wzzzJJK LNPR$S)U3V6Z?^Sa[b^efiojtkl>$P   ~  w  sO *S* tuv       st4ToV<*H*#*#WX~'34l(+Y+Z +[+\$&((U*YM*+]W*^*_W`*^ aYbc,çN,-LOORO ,JTUUU*YM*+]W*^*_W`*^ aYdc,çN,-LOORO ,JTUU *YL»eY*fM,g,+ðN+-   *YL»eY*fM,g,+ðN+- !9 hij*klL+mnYoY+pqM1hrjstN-nYuY-vqM hwj*xN6,yY:z{*|:-C}:~.C\*>* `6*=Wq, Lh++Z[#*-5;?ORZ[cfpz}   !#$%*')+z *"#O"#; $%p]&'()["#c*+m,f-./ 01RY+M,>: 6 6 6 +:677 z,:,7 :7,7 :7,6:6R,: ,6 :6 ,6 :6 ,6 hY+:6Y:*Y+: 3 - R Q     1ENQXadktw:: ;ABCDE!G$H'I,J1K4L?NEQNVQSSUXYa^d[f]katfwcye|gilqnptyvxz{  '.5DO$$2' ,34154S.6f.6y.6.6.6Eq2tBNh34aU54RR, G78B923454? <: 9; 6< z=>l?W L@L*&**&  A hj*klLYY+M*YN*::;*:C::,YG,^-ç :-, Lh++hj*N#*3=IPWRIP W~3B()#CD./ 3BEF*h`?GH*hhhB@Q@