1                                 ! " #$ % &' ( ) &* + ,- ,./0 ;1 2 &3 &4 5 &6 78 1+9 D: ; ;<= >? ;@ ;A B ;CD EF G H ;I J KL WM WN O ;PQ \M ;R DS ;T \U &V &W &X &Y &Z 1[ 1\ \] ^ &_ ;`ab mc md e f mg mh :i j O 1e 1+ k 1Ol m ;n :op :q rs t uvwx rescanThreadLjava/lang/Thread; threadLockLjava/lang/Object;sharedFilesServiceLphex/share/SharedFilesService;sharedDirectoryFilesLjava/util/ArrayList; Signature)Ljava/util/ArrayList;exclusionPatternsLjava/util/List;+Ljava/util/List;sharedDirectoryMapLjava/util/HashMap;?Ljava/util/HashMap;sharedDirectoryListLjava/util/HashSet;1Ljava/util/HashSet;isInitialRescanZsharedFilesCacheGLjava/util/HashMap;#(Lphex/share/SharedFilesService;Z)VCodeLineNumberTableLocalVariableTablethisLphex/share/FileRescanRunner;sharedFilesSerivcerescan$(Lphex/share/SharedFilesService;ZZ)Vexp Ljava/lang/InterruptedException;runnerallowInterruptsync()VrundirLjava/io/File;dirStrLjava/lang/String;i$Ljava/util/Iterator; scannedDirMapLocalVariableTypeTable9Ljava/util/HashMap;buildSharedFilesCache cachedFile Lphex/xml/sax/share/DSharedFile;library#Lphex/xml/sax/share/DSharedLibrary;iterator6Ljava/util/Iterator;scanDir$(Ljava/io/File;Ljava/util/HashMap;)VLjava/io/IOException;jI canonicalPathfiles[Ljava/io/File;J(Ljava/io/File;Ljava/util/HashMap;)VhandleScannedDir(Ljava/io/File;)VfilesharedDirectoryLphex/share/SharedDirectory;parenthandleScannedFiledFile shareFileLphex/share/ShareFile;removeUnsharedFilesi sharedFilessize(Ljava/util/List;isInSharedDirectory(Ljava/io/File;)Z sharedDirFilesetSharedDirectories(Ljava/lang/String;)VdirstokensLjava/util/StringTokenizer;countsetExclusionFilter(Ljava/util/List;)VpatternLjava/util/regex/Pattern;(Ljava/util/regex/PatternSyntaxException;regExp exclusionList$Ljava/util/List;'(Ljava/util/List;)V isFileInvalidisExcludedRegExpmLjava/util/regex/Matcher;name SourceFileFileRescanRunner.java java/util/ArrayList java/util/HashMap java/util/HashSet y z{ |{phex/share/FileRescanRunnerInterrupting rescan thread.} ~ &Waiting for interrupted rescan thread. java/lang/InterruptedException  java/lang/Thread java/lang/StringBuilderFileRescanRunner-       y "Waiting for running rescan thread.Staring file rescan (Initial: ).  java/util/Collection  java/util/List     { java/lang/String java/io/File    phex/xml/sax/share/DSharedFile   java/io/IOException  { { ' ' is not a directory.  { phex/share/SharedDirectory   phex/share/ShareFile              java/util/StringTokenizer;    y {    &java/util/regex/PatternSyntaxException   .dl  java/util/regex/Pattern  {java/lang/Objectjava/lang/Runnable(I)V isInterrupted()ZisAlivephex/common/log/NLoggerdebug&(Ljava/lang/Class;Ljava/lang/Object;)V interruptjoinwarn;(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Throwable;)Vphex/common/ThreadTrackingrootThreadGroupLjava/lang/ThreadGroup;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;hashCode()Ijava/lang/Integer toHexString(I)Ljava/lang/String;toString()Ljava/lang/String;@(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;)V setDaemon(Z)V setPrioritystart(Z)Ljava/lang/StringBuilder;phex/prefs/core/LibraryPrefsSharedDirectoriesSetLphex/prefs/api/Setting;phex/prefs/api/Settingget()Ljava/lang/Object;(Ljava/util/Collection;)VLibraryExclusionRegExListphex/share/SharedFilesServiceclearSharedFilessetCalculationRunnerPause()Ljava/util/Iterator;java/util/IteratorhasNextnextupdateSharedDirecotries)(Ljava/util/HashMap;Ljava/util/HashSet;)VtriggerSaveSharedFilesloadSharedLibrary%()Lphex/xml/sax/share/DSharedLibrary;!phex/xml/sax/share/DSharedLibrarygetSubElementList()Ljava/util/List; getFileNameput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;getCanonicalPath containsKey(Ljava/lang/Object;)Zexists isDirectory listFiles()[Ljava/io/File;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;errorisFile&(Ljava/lang/Object;)Ljava/lang/Object;setType(S)Vadd getParentFile()Ljava/io/File;getAbsolutePathgetLastModified()J lastModifiedupdateFromCache#(Lphex/xml/sax/share/DSharedFile;)VaddUrn2FileMapping(Lphex/share/ShareFile;)VqueueUrnCalculation addSharedFile getFileByName*(Ljava/lang/String;)Lphex/share/ShareFile;getSharedFiles(I)Ljava/lang/Object; getSystemFileremoveSharedFileequals'(Ljava/lang/String;Ljava/lang/String;)V countTokensclearensureCapacity hasMoreTokens nextTokentrimcontainscompile-(Ljava/lang/String;)Ljava/util/regex/Pattern;getName toLowerCaseendsWith(Ljava/lang/String;)Zmatcher3(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;java/util/regex/Matchermatches! 1***+*Y*Y * Y HI JKL$M0N 111 [ YNF@7.: KY*:YY !"#$%&-ç :-0>AFZ\"_*b0g8i>nAkCmMp\rgtvwxz{4C g= : YK²&' L++*çM*,#&14474& #&'/9 'Y(*)*"*Y+,-./*0,12**3*4*5*6YL*/7M,83,9:N;Y-<:*+= *6** * >*?*6:*6yz!5BKLSZcdhkoxy4#9W WO*Y@*AL++BCM,8&,9DN*@-E-FWױ* "4>KN*> O<"- "-z+GN:,-I,-JFW+K+L*+M+N:"YO+PQ"R65,*2S2T *2UɱH^ &-.5:@E c dx H g:@b )* +VWM,'WY+XM,Y* +,FW* ,ZW,Y+[N-C-L4* -VWM,$WY-XM,Y* -,FW* ,ZW-[NZ$ & ()+#,(-2.;/>2C6H7L9S;_<c>l?q@{ADEF*wHE.*X\Y+]M*@+^VDN--_+`,-a*,b*,c*,d6*+^eM,&\Y+]M*,c*,dRKMOP/S4U<V?YGZP\Q_Y`\dhelguh}ikmp4:Lh(S*fL+g=>?6+h\:i:*j K *k±& tuvx+y2zC|LvR>+!2ASKD K8*/7M,8(,9:N;Y-<:+[l%1364%.88ImY+noM,p>*/q*/r,s%,tu:*/v */wWڱ*  &/;EH4/II >9H*x+yM,81,9:N-z:*{W:}̱#58|&  #)58:DG>) : #!7HH Ha+~*+C+L+~M*yN-8#-9:,:&  ,4<>A>4 ,)CC5# Y 2