Êþº¾13com/xpn/xwiki/user/impl/xwiki/XWikiGroupServiceImpljava/lang/Object(com/xpn/xwiki/user/api/XWikiGroupService8com/xpn/xwiki/notify/XWikiDocChangeNotificationInterfaceCLASS_SUFFIX_XWIKIGROUPSLjava/lang/String; ConstantValue XWikiGroups CLASS_SUFFIX_XWIKIUSERS XWikiUsersCLASS_XWIKIGROUPSXWiki.XWikiGroupsCLASSTEMPLATE_XWIKIGROUPSXWiki.XWikiGroupTemplateCLASSTEMPLATE_XWIKIUSERSXWiki.XWikiUserTemplateFIELD_XWIKIGROUPS_MEMBERmemberDEFAULT_MEMBER_SPACEXWikiWIKI_FULLNAME_SEP:! SAME_NAME_SEP.$HQLLIKE_ALL_SYMBOL%' groupCacheLorg/xwiki/cache/Cache; Signature=Lorg/xwiki/cache/Cache;>;()VCode -. 0LineNumberTableLocalVariableTablethis5Lcom/xpn/xwiki/user/impl/xwiki/XWikiGroupServiceImpl;init4(Lcom/xpn/xwiki/XWiki;Lcom/xpn/xwiki/XWikiContext;)V Exceptionscom/xpn/xwiki/XWikiException9.org.aspectj.weaver.MethodDeclarationLineNumber initCache(Lcom/xpn/xwiki/XWikiContext;)V <= >com/xpn/xwiki/XWiki@getNotificationManager1()Lcom/xpn/xwiki/notify/XWikiNotificationManager; BC AD"com/xpn/xwiki/notify/DocChangeRuleF=(Lcom/xpn/xwiki/notify/XWikiDocChangeNotificationInterface;)V -H GI-com/xpn/xwiki/notify/XWikiNotificationManagerKaddGeneralRule/(Lcom/xpn/xwiki/notify/XWikiNotificationRule;)V MN LOxwikiLcom/xpn/xwiki/XWiki;contextLcom/xpn/xwiki/XWikiContext;com/xpn/xwiki/XWikiContextUgetWiki()Lcom/xpn/xwiki/XWiki; WX VY)xwiki.authentication.group.cache.capacity[Param&(Ljava/lang/String;)Ljava/lang/String; ]^ A_java/lang/IntegeraparseInt(Ljava/lang/String;)I cd be (ILcom/xpn/xwiki/XWikiContext;)V <g hjava/lang/Exceptionj iCapacityIcapacitygetCacheFactory ()Lorg/xwiki/cache/CacheFactory; op Aq)org/xwiki/cache/config/CacheConfigurations t0xwiki.groupservice.usergroupsvsetConfigurationId(Ljava/lang/String;)V xy tz1org/xwiki/cache/eviction/LRUEvictionConfiguration| }0 setMaxEntries(I)V € }�evictionƒput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; …† t‡org/xwiki/cache/CacheFactory‰newCacheD(Lorg/xwiki/cache/config/CacheConfiguration;)Lorg/xwiki/cache/Cache; ‹Œ Š� )* �Failed to initialize cache‘,(IILjava/lang/String;Ljava/lang/Throwable;)V -“ :”org/xwiki/cache/CacheException– cacheFactoryLorg/xwiki/cache/CacheFactory; configuration+Lorg/xwiki/cache/config/CacheConfiguration;lru3Lorg/xwiki/cache/eviction/LRUEvictionConfiguration;e Lorg/xwiki/cache/CacheException; flushCacheorg/xwiki/cache/Cache¡ removeAll £. ¢¤isAllGroupImplicit(Lcom/xpn/xwiki/XWikiContext;)Z+xwiki.authentication.group.allgroupimplicit¨ ParamAsLong(Ljava/lang/String;J)J ª« A¬implicitJlistGroupsForUserF(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/Collection;Z(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/Collection; getDatabase()Ljava/lang/String; ³´ Vµcom/xpn/xwiki/util/Util·getName ¹^ ¸ºjava/lang/String¼indexOf ¾d ½¿ substring(I)Ljava/lang/String; Á ½Ãjava/lang/StringBuilderÅvalueOf&(Ljava/lang/Object;)Ljava/lang/String; ÇÈ ½É -y ÆËappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; ÍÎ ÆÏtoString Ñ´ ÆÒget&(Ljava/lang/String;)Ljava/lang/Object; ÔÕ ¢Öjava/util/ListØgetNotCacheStore+()Lcom/xpn/xwiki/store/XWikiStoreInterface; ÚÛ AÜ'com/xpn/xwiki/store/XWikiHibernateStoreÞgetStore àÛ Aá;, BaseObject as obj, StringProperty as prop where obj.name=ãgetFullNameSQL å´ Aæ' and obj.className='XWiki.XWikiGroups' è2and obj.id = prop.id.id and prop.id.name='member' êand (prop.value='ìcom/xpn/xwiki/web/Utilsî SQLFilter ð^ ïñ' or prop.value='ó')õ'com/xpn/xwiki/store/XWikiStoreInterface÷searchDocumentsNames@(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List; ùú øû%com/xpn/xwiki/store/jcr/XWikiJcrStoreý °ú þÿ ¦§ XWiki.XWikiAllGroupequals(Ljava/lang/Object;)Z  ½xwiki:XWiki.XWikiAllGroup XWiki.XWikiGuest xwiki:XWiki.XWikiGuest contains  Ùadd  Ùset'(Ljava/lang/String;Ljava/lang/Object;)V  ¢ setDatabase y VusernamelistLjava/util/List;database shortname veryshortnamekeyLocalVariableTypeTable$Ljava/util/List;addUserToGroupU(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Vjava/util/ArrayList' (0groupisMemberEqualsg(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)ZequalsIgnoreCase(Ljava/lang/String;)Z -. ½/ currentMember memberWiki memberSpace memberNameZremoveUserOrGroupFromGroupv(Lcom/xpn/xwiki/doc/XWikiDocument;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Zcom/xpn/xwiki/doc/XWikiDocument8 getObjects&(Ljava/lang/String;)Ljava/util/Vector; :; 9<java/util/Vector>iterator()Ljava/util/Iterator; @A ?Bjava/util/IteratorDnext()Ljava/lang/Object; FG EH com/xpn/xwiki/objects/BaseObjectJgetStringValue L^ KM +, O removeObject%(Lcom/xpn/xwiki/objects/BaseObject;)Z QR 9ShasNext()Z UV EW groupDocument!Lcom/xpn/xwiki/doc/XWikiDocument; needUpdate groupVectorLjava/util/Vector;bobj"Lcom/xpn/xwiki/objects/BaseObject;6Ljava/util/Vector;removeUserOrGroupFromAllGroupsjava/lang/StringBufferb[, BaseObject as obj, StringProperty as prop where doc.fullName=obj.name and obj.className=?d cË and obj.id=prop.id.idg,(Ljava/lang/String;)Ljava/lang/StringBuffer; Íi cj and prop.name=?l and prop.value like ?n cÒsearchDocumentsP(Ljava/lang/String;Ljava/util/List;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List; qr øs ÙB 67 v saveDocument@(Lcom/xpn/xwiki/doc/XWikiDocument;Lcom/xpn/xwiki/XWikiContext;)V xy AzparameterValueswhereLjava/lang/StringBuffer; documentList$Ljava/util/List;3Ljava/util/List;listMemberForGroup DeprecatedT(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List;RuntimeVisibleAnnotationsLjava/lang/Deprecated;‡getHibernateStore+()Lcom/xpn/xwiki/store/XWikiHibernateStore; ‰Š A‹T, BaseObject as obj where obj.name=doc.fullName and obj.className='XWiki.XWikiUsers'�8/*/*/obj/XWiki/XWikiUsers/jcr:deref(@doc, '*')/@fullName�query‘ getPlugin[(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Lcom/xpn/xwiki/plugin/XWikiPluginInterface; “” A•&com/xpn/xwiki/plugin/query/QueryPlugin—xpath7(Ljava/lang/String;)Lcom/xpn/xwiki/plugin/query/IQuery; ™š ˜›!com/xpn/xwiki/plugin/query/IQuery�()Ljava/util/List; Ÿ ž B(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Ljava/lang/String; ¹¢ ¸£ getDocumentQ(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)Lcom/xpn/xwiki/doc/XWikiDocument; ¥¦ A§length()I ©ª ½« ,­'com/xpn/xwiki/objects/classes/ListClass¯getListFromString7(Ljava/lang/String;Ljava/lang/String;Z)Ljava/util/List; ±² °³addAll(Ljava/util/Collection;)Z µ¶ Ù·printStackTrace ¹. :ºsqlqp(Lcom/xpn/xwiki/plugin/query/QueryPlugin; gshortnamedocgroupgroupsmembersLcom/xpn/xwiki/XWikiException; listAllGroups.(Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List;B(Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List;U, BaseObject as obj where obj.name=doc.fullName and obj.className='XWiki.XWikiGroups'Ç9/*/*/obj/XWiki/XWikiGroups/jcr:deref(@doc, '*')/@fullNameÉnotifyŽ(Lcom/xpn/xwiki/notify/XWikiNotificationRule;Lcom/xpn/xwiki/doc/XWikiDocument;Lcom/xpn/xwiki/doc/XWikiDocument;ILcom/xpn/xwiki/XWikiContext;)V  . Í kºrule,Lcom/xpn/xwiki/notify/XWikiNotificationRule;newdocolddoceventLjava/lang/Exception;getAllMatchedUsersY([[Ljava/lang/Object;ZII[[Ljava/lang/Object;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List;getAllMatchedUsersOrGroupsZ(Z[[Ljava/lang/Object;ZII[[Ljava/lang/Object;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List; ØÙ Ú matchFields[[Ljava/lang/Object; withdetailsnbstartordergetAllMatchedGroupscreateWhereClauseM(Z[[Ljava/lang/Object;[[Ljava/lang/Object;Ljava/util/List;)Ljava/lang/String;a(Z[[Ljava/lang/Object;[[Ljava/lang/Object;Ljava/util/List;)Ljava/lang/String;, BaseObject as objæD where doc.fullName=obj.name and doc.fullName<>? and obj.className=?èXWiki.êjava/util/HashMapì í0 java/util/Mapï containsKey ñ ðòfieldô(I)Ljava/lang/StringBuilder; Íö Æ÷, ù as û and obj.id=ý.id.idÿ and .name=?&(Ljava/lang/Object;)Ljava/lang/Object; Ô ð and lower(.value) like ?  toLowerCase  ´ ½ ð‡ and lower(doc.) like ? c0 order byjava/lang/Boolean, .value doc. booleanValue !V " asc$ desc&2(Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer; Í( c)user documentClass classtemplatefromfieldMapLjava/util/Map; fieldIndexi fieldNametypevalue fieldPrefix orderStringascLjava/lang/Boolean;5Ljava/util/Map; ãä ;R(Ljava/lang/String;IILjava/util/List;Lcom/xpn/xwiki/XWikiContext;)Ljava/util/List; q= ø> ù= ø@/org/apache/commons/lang/NotImplementedExceptionB C0/*/*/obj/XWiki/E/jcr:deref(@doc, '*')/@fullNameGsize Iª ÙJsubList(II)Ljava/util/List; LM ÙN fromIndextoIndexcountAllMatchedUsersOrGroups4(Z[[Ljava/lang/Object;Lcom/xpn/xwiki/XWikiContext;)I1select count(distinct doc) from XWikiDocument docTsearch V= øW(I)Ljava/lang/Object; ÔY ÙZjava/lang/Number\intValue ^ª ]_countAllMatchedUsers3([[Ljava/lang/Object;Lcom/xpn/xwiki/XWikiContext;)I RS ccountAllMatchedGroupsgetAllGroupsNamesForMemberH(Ljava/lang/String;IILcom/xpn/xwiki/XWikiContext;)Ljava/util/Collection;\(Ljava/lang/String;IILcom/xpn/xwiki/XWikiContext;)Ljava/util/Collection; °± i(Ljava/util/Collection;)V -k (ljava/util/Collectionn groupNameListgetAllMembersNamesForGroup ‚ú r userNameListcountAllGroupsNamesForMember1(Ljava/lang/String;Lcom/xpn/xwiki/XWikiContext;)I fg w oJcountAllMembersNamesForGroup qg { SourceFileXWikiGroupServiceImpl.java!                  "#  %&  ()*+,-.//*·1±2>3 45!678:;tŽ/[*,¶?+¶E»GY*·J¶P±2vwx3 45QRST!<=8:;zb/‰!d=+¶Z\¶`N-Æ -¸f=§W*+¶i±k2|~ €‚„ …3*!45!STlm n !<g8:;‡ /îT,¶Z¶rN»tY·u:w¶{»}Y·~:¶‚„¶ˆW*-¹Žµ�§:»:Y>�’·•¿±@@—22 ‰‹Œ�!Ž'�1‘@’B“K”O“S–3HT45TlmTSTL˜™/š›!œ�BžŸ .;˜7/C*´�Æ *´�¹¥±2š›�3 45¦§;ŸÁ/W+¶Z© ¶­A ”š¬¬2   ¡3 45ST ®¯°±8:+²;¤—/‰ WN,¶¶:+¸»:%¶À`¶Ä:»ÆY¸Ê·Ì"¶Ð¶Ð¶Ó:Y:Â*´�Ç*,¶?*´�¹×ÀÙN-ÇÛ,¶Z¶ÝÁß™_,¶Z¶â»ÆYä·Ì,¶Z¶ç¶Ðé¶Ðë¶Ðí¶Ð+¸ò¶Ðô¶Ð¸ò¶Ðô¶Ð¸ò¶Ðö¶Ð¶Ó,¹üN§ ,¶Z¶ÝÁþ™,¶Z¶ÝÀþ+,¶N*,¶™A+¶š7+ ¶š-+ ¶š#+¶š-¹š -¹W*´�-¹çÿ-: ,¶ °: ,¶ ¿?9<<?<CL2ž'¦¨ª«¬9­?®F¯K²Z´^µk·r¸{¹Šº”»¨¼º¸½¼¾·Ã¶Ç½Ô¿ã¾äÂìÃöÄÅ ÆÇ È*Ë6­@ÏCÑIÏLÐNÑTÒ3RW45W WSTUO > .! 9" # U$%&8:;ØÝ/b+¸»:»ÆY,¸Ê·Ì"¶Ð¶Ð¶Ó:*´�Ç *¶?*´�¹×ÀÙ:Ç»(Y·):*´�¹-¹W±2* ÛÜ Þ'ß-â=äBåKæXéaê3Rb45b b b* bST\  B" =%# =%$+,;ö#¼/0¦6,ÆR+»ÆY,¸Ê·Ì"¶Ð¶Ð¶Ó¶€6-Æ -¶™$+»ÆY-¸Ê·Ì%¶Ð¶Ð¶Ó¶€6¶¶Æ¶¶,¶0™<+¶€6-Æ -¶™$+»ÆY-¸Ê·Ì%¶Ð¶Ð¶Ó¶€6¬2* ùûü(þ5ÿVju‚£ 3H¦45¦1 ¦2 ¦3 ¦4 ¦ST£567;)/ X6+¶=:ÆH¶C: §4 ¹IÀK:Æ#¶N: * ,-·P™ +¶T6 ¹XšÿȬ2*   &!+"4$C%K U+3f X45XYZX2 X3 X4 XSTU[5 M\]&/^_4 #  M\`a&8:;4,Û/ )»(Y·):»cYe·f:¹Wh¶kWm¶kW¹Wo¶kW¶¶Æ¶¶+¶0™Y,Æ ,¶™#»ÆY(·Ì-¶Ð(¶Ð¶Ó¹W§R»ÆY(·Ì,¶Ð%¶Ð-¶Ð(¶Ð¶Ó¹W§)»ÆY(·Ì+¶Ð"¶Ð-¶Ð(¶Ð¶Ó¹W¶Z¶â¶p¹t:¹u: §) ¹IÀ9:*+,-·w™¶Z¶{ ¹XšÿÓ±2Z7 : ;:9<>(@1A;CDEXFeG…I®LÔPêOìRSTR(W3\ )45)2 )3 )4 )ST  |}~ì=$YZ#  |€ì=�‚ú8:ƒ+„…†;]3Ã/ù Ó»(Y·)Nˆ:+ÇS,¶Z¶ŒÆŽ:,¶Z¶â,¹ü°,¶Z¶ÝÁþ™%�:,¶Z’,¶–À˜:¶œ¹¡°-°+,¸¤:,¶Z,¶¨:¶=:ÆI¶C: §5 ¹IÀK:Æ$¶N:  ¶¬ž- ®¸´¹¸W ¹XšÿÇ-°:¶»° ÊÊ:2f_` cde f0g=hBiRj_laohptr}s‚t˜u�v¦w®x¾tÈ~ʀ̂х3„ Ó45Ó* ÓSTË Æ¼ B™ R ½¾hb¿ tVÀZ}MÁ]˜0^_¦ ÌžÃ#Ë$}MÁ`ÄÅ8:ƒ+Æ…†;Œ;—/¸J+¶Z¶ŒÆÈM+¶Z¶â,+¹ü°+¶Z¶ÝÁþ™!ÊM+¶Z’+¶–À˜N-,¶œ¹¡°°2"Ž ��‘*’.“=”H–34J45JST¼ .™ = ½¾ËÌ;š>V/Ü<š96-Æ-¶=Æ6,Æ,¶=Æ6™*¶Χ :¶ϱ44k2. žŸ¡¢¥%¦(©-ª4­6®;°3R<45<ÐÑ<ÒZ<ÓZ<Ôm<ST) 56žÕÖ×8:;¸B!/u*+¶Û°2»3H45ÜÝÞ5ßmàmáÝSTâ×8:;ÄD/u*+¶Û°2Ç3H45ÜÝÞ5ßmàmáÝSTãä+å;ÜIN/'™§ :™§:»cYç·f:»cYé·f:¹W»ÆYë·Ì¶Ð¶Ó¹W»íY·î: 6 ,Æc6 §V, 22À½: , 22À½: , 22À½: Æî  ¹óš†»ÆYõ·Ì ¶ø¶Ó:»ÆYú·Ì ¶Ðü¶Ð¶Ð¶Ó¶kW»ÆYþ·Ì¶Ð¶Ð¶Ó¶kW»ÆY·Ì¶Ð¶Ð¶Ó¶kW ¹W„ §  ¹À½:»ÆY ·Ì¶Ð ¶Ð¶Ó¶kW»ÆY(·Ì¶¶Ð(¶Ð¶Ó¹W  ¹W§B»ÆY·Ì ¶Ð¶Ð¶Ó¶kW»ÆY(·Ì¶¶Ð(¶Ð¶Ó¹W„  ,¾¡þ©»cY·: -ÆG-¾žB ¶kW6 §,- 22À½: - 22À½:- 22À: ž  ¶kWÆÁ  ¹óš†»ÆYõ·Ì ¶ø¶Ó:»ÆYú·Ì¶Ðü¶Ð¶Ð¶Ó¶kW»ÆYþ·Ì¶Ð¶Ð¶Ó¶kW»ÆY·Ì¶Ð¶Ð¶Ó¶kW ¹W„ §  ¹À½: »ÆY·Ì¶Ð¶Ð¶Ó¶kW§ »ÆY ·Ì ¶Ð¶Ó¶kW Æ ¶#™ %§'¶kW„  -¾¡þÓ¶* ¶*¶p°2Î3ß àâ&ä2å<æVè_ébìfílîwï‚ð�ò’õžö²÷Õùóúûü!þ/Mn}›¼íÆ ÏØáçòý '; ^"|#š$¤%ª'¸*Ù,ñ/ 33ò'45'+5'ÜÝ'áÝ'| ,  - &.~2õ}~_È/0 bÅ1m i]2m wE3 ‚:4 �/5 ²o6 /N6 ÏX7~ ä32m ò3 ý4 89;o6 ¸!6 #'|€_È/: ØÙ8:;O]m/.:¶Z¶ŒÆT»(Y·): *, ¶<: ™¶Z¶â  ¹?:§Å¶Z¶â  ¹A:§©¶Z¶ÝÁþ™›,Æ,¾�™ »CY·D¿»ÆYF·Ì™§ ¶ÐH¶Ð¶Ó: ¶Z’¶–À˜:   ¶œ¹¡: �ž5œ§6  � ¹Kd§`6    ¹O:  :°2ZRTUV#X'YC[_]m`za‚ešf e£d¥g·hÅjÏkÜlônqt3¢45+5ÜÝÞ5ßmàmáÝSTÁH| #<} ¥`™ ·N½¾ Å@ Ü%Pm ô Qm # H|€ RS8:;ˆg˜/ú`»(Y·):*,¶<:»ÆYU·Ì¶Ð¶Ó:-¶Z¶â-¹X:Æ ¹Kš¬¹[À]À]¶`¬2‹ ŒŽ(�=’L“N–3R`45`+5`ÜÝ`ST W|L} (8¼ =##  W|€ab8:;Ÿjª/F*+,¶d¬2¡3 45ÜÝSTeb8:;ªl/F*+,¶d¬2¬3 45ÜÝSTfg8:+h;µm®/×U»(Y*+¶j·m:�ž¹K¡°`¹K¤¹K¹OÀo°`¹OÀo°2º¼#½&À3ÁFÃ3>U45U UßmUàmUSTEp# Ep$qg8:+h;Íq/ÅC*+¶s:š š°`¹K¤¹K¹OÀo°`¹OÀo°2Ñ ÓÔ×!Ø4Ú3>C45C* CßmCàmCST :t#  :t$uv8:;äsÙ/Z+Ǭ*+,¶x¹y¬2æçë3 45 STzv8:;ôuº/Z+Ǭ*+,¶|¹y¬2ö÷û3 45* ST}~