1 { z   z z z z z z z z z z [ z z z       z z z z z % z % 2   z ! ." # $% 2&' 4 ,( 4) 4&* z+ z,- z. 2 z/012 3 45 E67 E8 z9 z:; z<=> z?@ zAB 2C zDE GF GHI ,JKL zMN # $  3 zO PQ zR zS GT zUV [W & GXY [Z [[\]^ z_ z`a zbcd xfg LoaderVisitor InnerClassesloader&Loracle/classloader/PolicyClassLoader; includeSystemZloadersLjava/util/List; codeSourcesAPPLICATION_FILTER&Loracle/classloader/ClassLoaderFilter;()VCodeLineNumberTableLocalVariableTablethis+Loracle/classloader/query/DuplicateClasses;getDescription()Ljava/lang/String;createQueryReport([Ljava/lang/String;)Vargs[Ljava/lang/String;csIndexLjava/util/Map;csDuplicateCountscsDuplicateResourcescsDuplicateClassescsRedundantCodeSourcesloadedDuplicates Exceptionsh parseArgsargLjava/lang/String;iIfilter loaderSetvisitor9Loracle/classloader/query/DuplicateClasses$LoaderVisitor;collectDuplicateClassesFrom!(Ljava/util/List;)Ljava/util/Map;dupsclsLjava/lang/Class;nameprevLjava/lang/Object; iterator1Ljava/util/Iterator;listiteratornames duplicatesgetCodeSourcesOf"(Ljava/util/List;)Ljava/util/List;source%Loracle/classloader/SharedCodeSource;sources&[Loracle/classloader/SharedCodeSource;setLjava/util/HashSet;result reportHeader(I)VloadedDuplicatesFoundreportCodeSourcesWithDuplicates(Ljava/util/Map;)VeEntryLjava/util/Map$Entry;cscounts[IduplicateCounts lineNumberreportDuplicateResources"(Ljava/util/List;Ljava/util/Map;)VduplicateResourcesindexreportDuplicateClassesduplicateClassesreportRedundantCodeSources(Ljava/util/List;)VredundantCodeSourcesduplicateCountappendCodeSourceAndLoaders((Loracle/classloader/SharedCodeSource;)V subscribers'[Loracle/classloader/PolicyClassLoader;reportDuplicatesByPathkeyduplicatePathsreportDuplicatesByCodeSourcepathsbufferLjava/lang/StringBuffer; startLength endLengthpath indentCountLjava/util/HashMap;collectResourcePathInfoa(Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/List;Ljava/util/List;Ljava/util/List;)ILjava/util/ArrayList;isClassvalue isDuplicate checkedCount classesFoundi shouldInclude((Loracle/classloader/SharedCodeSource;)Z(Ljava/lang/String;)ZfileNamereportLoadedDuplicates SourceFileDuplicateClasses.java )List duplicate classes, both loaded and in code-sources. Args: [loaderName] [-systemCodeSources] By default, all loaders and all application code-sources are checked. Use loaderName to limit the code-source search to a specific search path. Use -systemCodeSources to include system code-sources. java/util/HashMapjava/util/ArrayList j kl -systemCodeSources m no ~"java/lang/IllegalArgumentExceptionjava/lang/StringBuilderLoader " pq " not found. r s tu vu tw 7oracle/classloader/query/DuplicateClasses$LoaderVisitor x yz {u |} ~ $oracle/classloader/PolicyClassLoader java/lang/Class   java/util/List java/util/HashSet  6-------- Duplicate Classes Query Results -------------   Loaders checked: p  Loaded duplicates found:  Code-sources checked: $Code-sources containing duplicates: java/util/Map$Entry #oracle/classloader/SharedCodeSource   . Duplicate classes: p , resources: &Duplicate resources by resource path: /Code-source sets containing duplicate classes: 2Code-sources containing identical resource paths:   , in use by:  , java/lang/String , found in:   l   .class  /   manifest.mfLoaded duplicates: , by:   (from ).+oracle/classloader/query/DuplicateClasses$1)oracle/classloader/query/DuplicateClasses#oracle/classloader/ClassLoaderQueryjava/lang/Exceptionjava/io/IOException java/util/Mapsize()IequalsIgnoreCase findLoader:(Ljava/lang/String;)Loracle/classloader/PolicyClassLoader;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString(Ljava/lang/String;)V getAllLoaders()Ljava/util/List;getAllCodeSources8(Loracle/classloader/ClassLoaderFilter;)Ljava/util/List;(Z)VvisitLoadersInSearchOrderP(Loracle/classloader/PolicyClassLoader;Loracle/classloader/ClassLoaderVisitor;)V getLoaders()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;getLoadedClasses)(Ljava/lang/ClassLoader;)Ljava/util/List;getNameget&(Ljava/lang/Object;)Ljava/lang/Object;put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;add(Ljava/lang/Object;)ZgetCodeSources)(Z)[Loracle/classloader/SharedCodeSource;containsappendln(Ljava/lang/Object;)VentrySet()Ljava/util/Set; java/util/SetgetKeygetValueindentLineNumberappendDisplayPath(I)Ljava/lang/Object;getSubscribers$()Loracle/classloader/SubscriberSet; oracle/classloader/SubscriberSet)()[Loracle/classloader/PolicyClassLoader;getDisplayNameindentgetReportBuffer()Ljava/lang/StringBuffer;java/lang/StringBufferlength appendSpaces listFilePaths()[Ljava/lang/String;endsWith nativeOnly lastIndexOf(Ljava/lang/String;)I substring(I)Ljava/lang/String;getLoaderNameFor%(Ljava/lang/Class;)Ljava/lang/String;getCodeSourceFor8(Ljava/lang/Class;)Loracle/classloader/SharedCodeSource;!z{~3* ' -B t*+YMYNY:Y:Y:* :* ,- W*  **-**,*,>OP QRS'T0U9VIWTXZY_Ze[l\s]Rtt g_V'M0D9;y=+M+2N- *2*-*#YY-* ** *! J*"*"M,#N*-$ $%Y*&M*,',(N*-$ V`a bce%f,gL`RnYogqqsxuvwy{|}~R @P   YLYM*)N-*-+,:-:):*p+.:/:+0:  +1W=,02:  !Y:   3W, 1W 3We,R +2EQXbgup - Q^XWbM ;w+~2  i4Y5LYM*)N-*J-+,:6:6)2:+7+8W,3Wէ,6  +3>ENU^dgRE6.+9~31PiaY@*9:*;*<=**>?*@=*?*A=** >?*;*  #(.;?@@)*B=*+ ?*;=+CDN-*V-+E:FG:HII:*J*K*L=*.M*N=*.?*;F+6BQY_ems{~H6EB9Q*"\mS *O=*+,P   S *Q=*+,R   E*S=+>=*?*;>&*`J+TG:*U*;*;2  $06:@D40 (EE 8<*+K*V=+WXM>,#,2 *Y=*,2Z=ݱ*     ! % +5 ;*&<<)g +>>*?*;6~+T[:*`J*=*\=*;,02:):*3+G:*]*]` *^=*U*;Ʉ*;Z  &!."4#:$>%K&^'j(n)r*{+-./12\ j!T:&hKCSYN6+>O+T[:,02:-_2:Y:-`W3W-a6*?*;6-bD:*+E:F2:H2: 6 ):  *N +G:  **c:  d6*J d6d6 * e* U*;*; ):  *$ +[: *]*]* =*;*;5*;,?@A#B0C;D@EIFRH\@bMhNnOrPuQRSTUVWXYZ[\]^_ab cde&f2g6h:i@jDkGlKmNoRp#90,;! W < U 2 +  SSSKhu O6*):*:+G:f#6 6 g: 6     2:  h  ij6+ 0:6+ 1Wd262:3WE6 3W - 3WY:kWkW+ 1WK ,0II: YOYO:,1W\.`O \.`O   3W-!),/6AHPS\adnqv*28?IL 5\nqH 9 , / 6 !( AOOOOOOL 7 *l  +*mj*mn<*`oM,p"  ')  + *q=*+ ?*;=+CDN-*-+E:F[:H2:*J*=*r=*;):*5+.:*s*t=*u=*v=*w:*;s*;b+6BNV\bfy    \ #o<6yBmNa"# xYy"!}%z| E x