<?xml version="1.0" encoding="UTF-8"?>
<coverage generated="1792050403">
  <project timestamp="1792050403">
    <file name="/workspace/src/extensions/CommunityConfiguration/maintenance/ChangeWikiConfig.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Maintenance\ChangeWikiConfig" namespace="global">
        <metrics complexity="45" methods="15" coveredmethods="8" conditionals="0" coveredconditionals="0" statements="159" coveredstatements="138" elements="174" coveredelements="146"/>
      </class>
      <line num="33" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="17"/>
      <line num="34" type="stmt" count="17"/>
      <line num="35" type="stmt" count="17"/>
      <line num="36" type="stmt" count="17"/>
      <line num="38" type="stmt" count="17"/>
      <line num="39" type="stmt" count="17"/>
      <line num="40" type="stmt" count="17"/>
      <line num="41" type="stmt" count="17"/>
      <line num="42" type="stmt" count="17"/>
      <line num="43" type="stmt" count="17"/>
      <line num="44" type="stmt" count="17"/>
      <line num="45" type="stmt" count="17"/>
      <line num="46" type="stmt" count="17"/>
      <line num="47" type="stmt" count="17"/>
      <line num="48" type="stmt" count="17"/>
      <line num="49" type="stmt" count="17"/>
      <line num="50" type="stmt" count="17"/>
      <line num="51" type="stmt" count="17"/>
      <line num="53" type="stmt" count="17"/>
      <line num="54" type="stmt" count="17"/>
      <line num="55" type="stmt" count="17"/>
      <line num="56" type="stmt" count="17"/>
      <line num="58" type="stmt" count="17"/>
      <line num="59" type="stmt" count="17"/>
      <line num="60" type="stmt" count="17"/>
      <line num="61" type="stmt" count="17"/>
      <line num="62" type="stmt" count="17"/>
      <line num="63" type="stmt" count="17"/>
      <line num="65" type="stmt" count="17"/>
      <line num="66" type="stmt" count="17"/>
      <line num="67" type="stmt" count="17"/>
      <line num="68" type="stmt" count="17"/>
      <line num="69" type="stmt" count="17"/>
      <line num="70" type="stmt" count="17"/>
      <line num="71" type="stmt" count="17"/>
      <line num="72" type="stmt" count="17"/>
      <line num="73" type="stmt" count="17"/>
      <line num="74" type="stmt" count="17"/>
      <line num="75" type="stmt" count="17"/>
      <line num="76" type="stmt" count="17"/>
      <line num="77" type="stmt" count="17"/>
      <line num="78" type="stmt" count="17"/>
      <line num="79" type="stmt" count="17"/>
      <line num="82" type="method" name="initServices" visibility="private" complexity="1" crap="1" count="17"/>
      <line num="83" type="stmt" count="17"/>
      <line num="84" type="stmt" count="17"/>
      <line num="85" type="stmt" count="17"/>
      <line num="86" type="stmt" count="17"/>
      <line num="87" type="stmt" count="17"/>
      <line num="93" type="method" name="execute" visibility="public" complexity="7" crap="7.83" count="17"/>
      <line num="94" type="stmt" count="17"/>
      <line num="96" type="stmt" count="17"/>
      <line num="104" type="stmt" count="17"/>
      <line num="105" type="stmt" count="17"/>
      <line num="106" type="stmt" count="17"/>
      <line num="107" type="stmt" count="2"/>
      <line num="108" type="stmt" count="15"/>
      <line num="109" type="stmt" count="4"/>
      <line num="111" type="stmt" count="11"/>
      <line num="114" type="stmt" count="14"/>
      <line num="115" type="stmt" count="14"/>
      <line num="116" type="stmt" count="0"/>
      <line num="119" type="stmt" count="14"/>
      <line num="120" type="stmt" count="0"/>
      <line num="121" type="stmt" count="0"/>
      <line num="122" type="stmt" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="127" type="stmt" count="0"/>
      <line num="130" type="stmt" count="14"/>
      <line num="131" type="stmt" count="14"/>
      <line num="132" type="stmt" count="14"/>
      <line num="133" type="stmt" count="14"/>
      <line num="134" type="stmt" count="14"/>
      <line num="135" type="stmt" count="14"/>
      <line num="136" type="stmt" count="14"/>
      <line num="137" type="stmt" count="14"/>
      <line num="138" type="stmt" count="14"/>
      <line num="139" type="stmt" count="14"/>
      <line num="140" type="stmt" count="1"/>
      <line num="141" type="stmt" count="1"/>
      <line num="144" type="stmt" count="13"/>
      <line num="145" type="stmt" count="13"/>
      <line num="148" type="method" name="hasValue" visibility="private" complexity="2" crap="2" count="6"/>
      <line num="149" type="stmt" count="6"/>
      <line num="150" type="stmt" count="6"/>
      <line num="153" type="method" name="getValue" visibility="private" complexity="9" crap="9.04" count="11"/>
      <line num="154" type="stmt" count="11"/>
      <line num="156" type="stmt" count="11"/>
      <line num="157" type="stmt" count="1"/>
      <line num="158" type="stmt" count="10"/>
      <line num="159" type="stmt" count="0"/>
      <line num="160" type="stmt" count="10"/>
      <line num="162" type="stmt" count="2"/>
      <line num="163" type="stmt" count="2"/>
      <line num="164" type="stmt" count="1"/>
      <line num="167" type="stmt" count="1"/>
      <line num="168" type="stmt" count="8"/>
      <line num="170" type="stmt" count="8"/>
      <line num="173" type="stmt" count="9"/>
      <line num="179" type="method" name="getValueFromString" visibility="private" complexity="2" crap="2" count="9"/>
      <line num="180" type="stmt" count="9"/>
      <line num="182" type="stmt" count="9"/>
      <line num="183" type="stmt" count="1"/>
      <line num="184" type="stmt" count="1"/>
      <line num="185" type="stmt" count="1"/>
      <line num="186" type="stmt" count="1"/>
      <line num="187" type="stmt" count="1"/>
      <line num="188" type="stmt" count="1"/>
      <line num="191" type="stmt" count="8"/>
      <line num="199" type="method" name="setConfigKeyToValue" visibility="private" complexity="2" crap="2" count="8"/>
      <line num="200" type="stmt" count="8"/>
      <line num="201" type="stmt" count="7"/>
      <line num="203" type="stmt" count="1"/>
      <line num="212" type="method" name="setObjectSubKey" visibility="private" complexity="2" crap="2" count="1"/>
      <line num="213" type="stmt" count="1"/>
      <line num="214" type="stmt" count="1"/>
      <line num="215" type="stmt" count="1"/>
      <line num="216" type="stmt" count="1"/>
      <line num="217" type="stmt" count="1"/>
      <line num="218" type="stmt" count="1"/>
      <line num="220" type="stmt" count="1"/>
      <line num="223" type="method" name="deleteConfigKey" visibility="private" complexity="3" crap="3" count="4"/>
      <line num="224" type="stmt" count="4"/>
      <line num="225" type="stmt" count="4"/>
      <line num="226" type="stmt" count="4"/>
      <line num="228" type="stmt" count="2"/>
      <line num="229" type="stmt" count="2"/>
      <line num="230" type="stmt" count="1"/>
      <line num="232" type="stmt" count="1"/>
      <line num="236" type="method" name="deleteArraySubKey" visibility="private" complexity="2" crap="2" count="1"/>
      <line num="237" type="stmt" count="1"/>
      <line num="238" type="stmt" count="1"/>
      <line num="242" type="method" name="executeDeleteOperation" visibility="public" complexity="3" crap="3.14" count="4"/>
      <line num="243" type="stmt" count="4"/>
      <line num="244" type="stmt" count="4"/>
      <line num="245" type="stmt" count="0"/>
      <line num="248" type="stmt" count="4"/>
      <line num="249" type="stmt" count="0"/>
      <line num="252" type="stmt" count="4"/>
      <line num="254" type="stmt" count="4"/>
      <line num="256" type="stmt" count="4"/>
      <line num="259" type="method" name="executeSetOperation" visibility="public" complexity="2" crap="2.01" count="11"/>
      <line num="260" type="stmt" count="11"/>
      <line num="261" type="stmt" count="11"/>
      <line num="262" type="stmt" count="0"/>
      <line num="265" type="stmt" count="11"/>
      <line num="266" type="stmt" count="8"/>
      <line num="268" type="stmt" count="8"/>
      <line num="270" type="stmt" count="8"/>
      <line num="273" type="method" name="executeNullEdit" visibility="private" complexity="4" crap="5.26" count="2"/>
      <line num="274" type="stmt" count="2"/>
      <line num="275" type="stmt" count="0"/>
      <line num="277" type="stmt" count="2"/>
      <line num="278" type="stmt" count="0"/>
      <line num="280" type="stmt" count="2"/>
      <line num="281" type="stmt" count="0"/>
      <line num="284" type="stmt" count="2"/>
      <line num="287" type="method" name="loadConfigurationDirectlyFromFile" visibility="private" complexity="2" crap="2.26" count="12"/>
      <line num="288" type="stmt" count="12"/>
      <line num="289" type="stmt" count="12"/>
      <line num="290" type="stmt" count="0"/>
      <line num="291" type="stmt" count="0"/>
      <line num="293" type="stmt" count="12"/>
      <line num="296" type="method" name="loadFullConfigurationWithDefaultsAndNormalization" visibility="private" complexity="3" crap="3.71" count="2"/>
      <line num="299" type="stmt" count="2"/>
      <line num="300" type="stmt" count="2"/>
      <line num="301" type="stmt" count="0"/>
      <line num="302" type="stmt" count="2"/>
      <line num="303" type="stmt" count="0"/>
      <line num="304" type="stmt" count="0"/>
      <line num="307" type="stmt" count="2"/>
      <metrics loc="316" ncloc="288" classes="1" methods="15" coveredmethods="8" conditionals="0" coveredconditionals="0" statements="159" coveredstatements="138" elements="174" coveredelements="146"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/maintenance/UpdateEmergencyDefaults.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Maintenance\UpdateEmergencyDefaults" namespace="global">
        <metrics complexity="5" methods="3" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="31" coveredstatements="29" elements="34" coveredelements="31"/>
      </class>
      <line num="25" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="26" type="stmt" count="1"/>
      <line num="27" type="stmt" count="1"/>
      <line num="29" type="stmt" count="1"/>
      <line num="31" type="stmt" count="1"/>
      <line num="32" type="stmt" count="1"/>
      <line num="33" type="stmt" count="1"/>
      <line num="34" type="stmt" count="1"/>
      <line num="35" type="stmt" count="1"/>
      <line num="36" type="stmt" count="1"/>
      <line num="37" type="stmt" count="1"/>
      <line num="38" type="stmt" count="1"/>
      <line num="39" type="stmt" count="1"/>
      <line num="42" type="method" name="initServices" visibility="private" complexity="1" crap="1" count="1"/>
      <line num="43" type="stmt" count="1"/>
      <line num="44" type="stmt" count="1"/>
      <line num="45" type="stmt" count="1"/>
      <line num="46" type="stmt" count="1"/>
      <line num="52" type="method" name="execute" visibility="public" complexity="3" crap="3.02" count="1"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="55" type="stmt" count="1"/>
      <line num="56" type="stmt" count="1"/>
      <line num="57" type="stmt" count="0"/>
      <line num="59" type="stmt" count="1"/>
      <line num="61" type="stmt" count="1"/>
      <line num="64" type="stmt" count="1"/>
      <line num="65" type="stmt" count="1"/>
      <line num="66" type="stmt" count="0"/>
      <line num="69" type="stmt" count="1"/>
      <line num="70" type="stmt" count="1"/>
      <line num="71" type="stmt" count="1"/>
      <line num="72" type="stmt" count="1"/>
      <line num="73" type="stmt" count="1"/>
      <metrics loc="81" ncloc="72" classes="1" methods="3" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="31" coveredstatements="29" elements="34" coveredelements="31"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/maintenance/migrateConfig.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Maintenance\MigrateConfig" namespace="global">
        <metrics complexity="10" methods="4" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="60" coveredstatements="48" elements="64" coveredelements="50"/>
      </class>
      <line num="33" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="34" type="stmt" count="3"/>
      <line num="35" type="stmt" count="3"/>
      <line num="37" type="stmt" count="3"/>
      <line num="38" type="stmt" count="3"/>
      <line num="39" type="stmt" count="3"/>
      <line num="40" type="stmt" count="3"/>
      <line num="41" type="stmt" count="3"/>
      <line num="42" type="stmt" count="3"/>
      <line num="43" type="stmt" count="3"/>
      <line num="44" type="stmt" count="3"/>
      <line num="45" type="stmt" count="3"/>
      <line num="46" type="stmt" count="3"/>
      <line num="47" type="stmt" count="3"/>
      <line num="48" type="stmt" count="3"/>
      <line num="49" type="stmt" count="3"/>
      <line num="50" type="stmt" count="3"/>
      <line num="51" type="stmt" count="3"/>
      <line num="54" type="method" name="initServices" visibility="private" complexity="1" crap="1" count="3"/>
      <line num="55" type="stmt" count="3"/>
      <line num="56" type="stmt" count="3"/>
      <line num="57" type="stmt" count="3"/>
      <line num="58" type="stmt" count="3"/>
      <line num="59" type="stmt" count="3"/>
      <line num="60" type="stmt" count="3"/>
      <line num="63" type="method" name="fatalStatus" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="73" type="method" name="execute" visibility="public" complexity="7" crap="7.70" count="3"/>
      <line num="74" type="stmt" count="3"/>
      <line num="76" type="stmt" count="3"/>
      <line num="77" type="stmt" count="3"/>
      <line num="78" type="stmt" count="0"/>
      <line num="80" type="stmt" count="3"/>
      <line num="81" type="stmt" count="3"/>
      <line num="82" type="stmt" count="0"/>
      <line num="84" type="stmt" count="3"/>
      <line num="86" type="stmt" count="3"/>
      <line num="87" type="stmt" count="3"/>
      <line num="88" type="stmt" count="0"/>
      <line num="91" type="stmt" count="3"/>
      <line num="95" type="stmt" count="3"/>
      <line num="96" type="stmt" count="3"/>
      <line num="97" type="stmt" count="3"/>
      <line num="98" type="stmt" count="3"/>
      <line num="99" type="stmt" count="3"/>
      <line num="101" type="stmt" count="3"/>
      <line num="102" type="stmt" count="0"/>
      <line num="105" type="stmt" count="3"/>
      <line num="106" type="stmt" count="0"/>
      <line num="107" type="stmt" count="0"/>
      <line num="108" type="stmt" count="0"/>
      <line num="111" type="stmt" count="3"/>
      <line num="112" type="stmt" count="3"/>
      <line num="113" type="stmt" count="3"/>
      <line num="114" type="stmt" count="3"/>
      <line num="115" type="stmt" count="3"/>
      <line num="116" type="stmt" count="3"/>
      <line num="117" type="stmt" count="3"/>
      <line num="118" type="stmt" count="0"/>
      <line num="121" type="stmt" count="3"/>
      <line num="122" type="stmt" count="3"/>
      <metrics loc="130" ncloc="121" classes="1" methods="4" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="60" coveredstatements="48" elements="64" coveredelements="50"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/maintenance/setVersionData.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Maintenance\SetVersionData" namespace="global">
        <metrics complexity="10" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="45" coveredstatements="0" elements="49" coveredelements="0"/>
      </class>
      <line num="28" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="30" type="stmt" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="35" type="stmt" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="38" type="stmt" count="0"/>
      <line num="39" type="stmt" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="41" type="stmt" count="0"/>
      <line num="44" type="method" name="initServices" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="48" type="stmt" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="50" type="stmt" count="0"/>
      <line num="53" type="method" name="fatalStatus" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="54" type="stmt" count="0"/>
      <line num="55" type="stmt" count="0"/>
      <line num="56" type="stmt" count="0"/>
      <line num="57" type="stmt" count="0"/>
      <line num="63" type="method" name="execute" visibility="public" complexity="7" crap="56" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="74" type="stmt" count="0"/>
      <line num="76" type="stmt" count="0"/>
      <line num="77" type="stmt" count="0"/>
      <line num="79" type="stmt" count="0"/>
      <line num="80" type="stmt" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="87" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <line num="90" type="stmt" count="0"/>
      <line num="91" type="stmt" count="0"/>
      <line num="92" type="stmt" count="0"/>
      <line num="93" type="stmt" count="0"/>
      <line num="94" type="stmt" count="0"/>
      <line num="97" type="stmt" count="0"/>
      <metrics loc="105" ncloc="98" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="45" coveredstatements="0" elements="49" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Access/MediaWikiConfigReader.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Access\MediaWikiConfigReader" namespace="global">
        <metrics complexity="16" methods="8" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="56" coveredstatements="40" elements="64" coveredelements="45"/>
      </class>
      <line num="21" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="26" type="stmt" count="3"/>
      <line num="28" type="method" name="addMediaWikiConfigProviderKeysToMap" visibility="private" complexity="3" crap="3" count="3"/>
      <line num="32" type="stmt" count="3"/>
      <line num="33" type="stmt" count="3"/>
      <line num="34" type="stmt" count="3"/>
      <line num="35" type="stmt" count="1"/>
      <line num="36" type="stmt" count="1"/>
      <line num="37" type="stmt" count="1"/>
      <line num="38" type="stmt" count="1"/>
      <line num="40" type="stmt" count="3"/>
      <line num="49" type="method" name="computeVariableToProviderMap" visibility="private" complexity="3" crap="3.65" count="3"/>
      <line num="50" type="stmt" count="3"/>
      <line num="51" type="stmt" count="3"/>
      <line num="52" type="stmt" count="3"/>
      <line num="53" type="stmt" count="3"/>
      <line num="54" type="stmt" count="3"/>
      <line num="55" type="stmt" count="3"/>
      <line num="58" type="stmt" count="0"/>
      <line num="59" type="stmt" count="0"/>
      <line num="60" type="stmt" count="0"/>
      <line num="61" type="stmt" count="0"/>
      <line num="62" type="stmt" count="0"/>
      <line num="65" type="stmt" count="2"/>
      <line num="75" type="method" name="getVariableToProviderMap" visibility="private" complexity="1" crap="1" count="3"/>
      <line num="76" type="stmt" count="3"/>
      <line num="77" type="stmt" count="3"/>
      <line num="78" type="stmt" count="3"/>
      <line num="79" type="stmt" count="3"/>
      <line num="80" type="stmt" count="3"/>
      <line num="81" type="stmt" count="3"/>
      <line num="82" type="stmt" count="3"/>
      <line num="88" type="method" name="getMediaWikiConfigProviderByName" visibility="private" complexity="2" crap="2.50" count="1"/>
      <line num="89" type="stmt" count="1"/>
      <line num="90" type="stmt" count="1"/>
      <line num="91" type="stmt" count="0"/>
      <line num="92" type="stmt" count="0"/>
      <line num="93" type="stmt" count="0"/>
      <line num="95" type="stmt" count="1"/>
      <line num="101" type="method" name="getConfigByVariableName" visibility="private" complexity="2" crap="2" count="3"/>
      <line num="102" type="stmt" count="3"/>
      <line num="103" type="stmt" count="2"/>
      <line num="104" type="stmt" count="1"/>
      <line num="105" type="stmt" count="1"/>
      <line num="106" type="stmt" count="1"/>
      <line num="107" type="stmt" count="1"/>
      <line num="109" type="stmt" count="1"/>
      <line num="115" type="method" name="get" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="116" type="stmt" count="3"/>
      <line num="122" type="method" name="has" visibility="public" complexity="3" crap="4.68" count="2"/>
      <line num="123" type="stmt" count="2"/>
      <line num="124" type="stmt" count="2"/>
      <line num="125" type="stmt" count="2"/>
      <line num="127" type="stmt" count="1"/>
      <line num="128" type="stmt" count="1"/>
      <line num="129" type="stmt" count="0"/>
      <line num="130" type="stmt" count="0"/>
      <line num="131" type="stmt" count="0"/>
      <line num="132" type="stmt" count="0"/>
      <line num="133" type="stmt" count="0"/>
      <line num="134" type="stmt" count="0"/>
      <line num="135" type="stmt" count="0"/>
      <line num="136" type="stmt" count="0"/>
      <line num="138" type="stmt" count="1"/>
      <metrics loc="141" ncloc="113" classes="1" methods="8" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="56" coveredstatements="40" elements="64" coveredelements="45"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Access/MediaWikiConfigRouter.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Access\MediaWikiConfigRouter" namespace="global">
        <metrics complexity="6" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="7" elements="10" coveredelements="10"/>
      </class>
      <line num="14" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="9"/>
      <line num="18" type="stmt" count="9"/>
      <line num="23" type="method" name="get" visibility="public" complexity="3" crap="3" count="5"/>
      <line num="24" type="stmt" count="5"/>
      <line num="25" type="stmt" count="2"/>
      <line num="26" type="stmt" count="3"/>
      <line num="27" type="stmt" count="2"/>
      <line num="29" type="stmt" count="1"/>
      <line num="36" type="method" name="has" visibility="public" complexity="2" crap="2" count="4"/>
      <line num="37" type="stmt" count="4"/>
      <metrics loc="40" ncloc="30" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="7" elements="10" coveredelements="10"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Api/ApiEdit.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Api\ApiEdit" namespace="global">
        <metrics complexity="11" methods="5" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="53" coveredstatements="53" elements="58" coveredelements="58"/>
      </class>
      <line num="16" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="7"/>
      <line num="22" type="stmt" count="7"/>
      <line num="28" type="method" name="needsToken" visibility="public" complexity="1" crap="1" count="7"/>
      <line num="29" type="stmt" count="7"/>
      <line num="35" type="method" name="isWriteMode" visibility="public" complexity="1" crap="1" count="6"/>
      <line num="36" type="stmt" count="6"/>
      <line num="42" type="method" name="execute" visibility="public" complexity="7" crap="7" count="6"/>
      <line num="43" type="stmt" count="6"/>
      <line num="45" type="stmt" count="6"/>
      <line num="46" type="stmt" count="1"/>
      <line num="50" type="stmt" count="1"/>
      <line num="51" type="stmt" count="1"/>
      <line num="52" type="stmt" count="1"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="57" type="stmt" count="5"/>
      <line num="58" type="stmt" count="5"/>
      <line num="59" type="stmt" count="1"/>
      <line num="62" type="stmt" count="4"/>
      <line num="63" type="stmt" count="4"/>
      <line num="64" type="stmt" count="4"/>
      <line num="65" type="stmt" count="4"/>
      <line num="66" type="stmt" count="4"/>
      <line num="68" type="stmt" count="4"/>
      <line num="69" type="stmt" count="3"/>
      <line num="70" type="stmt" count="2"/>
      <line num="71" type="stmt" count="2"/>
      <line num="72" type="stmt" count="2"/>
      <line num="73" type="stmt" count="2"/>
      <line num="74" type="stmt" count="2"/>
      <line num="75" type="stmt" count="2"/>
      <line num="76" type="stmt" count="2"/>
      <line num="77" type="stmt" count="2"/>
      <line num="78" type="stmt" count="2"/>
      <line num="80" type="stmt" count="1"/>
      <line num="81" type="stmt" count="1"/>
      <line num="82" type="stmt" count="1"/>
      <line num="83" type="stmt" count="1"/>
      <line num="84" type="stmt" count="1"/>
      <line num="87" type="stmt" count="1"/>
      <line num="90" type="stmt" count="1"/>
      <line num="91" type="stmt" count="1"/>
      <line num="92" type="stmt" count="1"/>
      <line num="98" type="method" name="getAllowedParams" visibility="protected" complexity="1" crap="1" count="7"/>
      <line num="99" type="stmt" count="7"/>
      <line num="100" type="stmt" count="7"/>
      <line num="101" type="stmt" count="7"/>
      <line num="102" type="stmt" count="7"/>
      <line num="103" type="stmt" count="7"/>
      <line num="104" type="stmt" count="7"/>
      <line num="105" type="stmt" count="7"/>
      <line num="106" type="stmt" count="7"/>
      <line num="107" type="stmt" count="7"/>
      <line num="108" type="stmt" count="7"/>
      <line num="109" type="stmt" count="7"/>
      <line num="110" type="stmt" count="7"/>
      <line num="111" type="stmt" count="7"/>
      <line num="112" type="stmt" count="7"/>
      <metrics loc="115" ncloc="101" classes="1" methods="5" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="53" coveredstatements="53" elements="58" coveredelements="58"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Api/ApiQueryRead.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Api\ApiQueryRead" namespace="global">
        <metrics complexity="8" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="36" coveredstatements="36" elements="39" coveredelements="39"/>
      </class>
      <line num="14" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="7"/>
      <line num="20" type="stmt" count="7"/>
      <line num="26" type="method" name="execute" visibility="public" complexity="6" crap="6" count="6"/>
      <line num="27" type="stmt" count="6"/>
      <line num="29" type="stmt" count="6"/>
      <line num="30" type="stmt" count="1"/>
      <line num="34" type="stmt" count="1"/>
      <line num="35" type="stmt" count="1"/>
      <line num="36" type="stmt" count="1"/>
      <line num="37" type="stmt" count="1"/>
      <line num="38" type="stmt" count="1"/>
      <line num="41" type="stmt" count="5"/>
      <line num="42" type="stmt" count="5"/>
      <line num="43" type="stmt" count="1"/>
      <line num="48" type="stmt" count="4"/>
      <line num="53" type="stmt" count="4"/>
      <line num="54" type="stmt" count="1"/>
      <line num="55" type="stmt" count="1"/>
      <line num="56" type="stmt" count="1"/>
      <line num="57" type="stmt" count="1"/>
      <line num="58" type="stmt" count="1"/>
      <line num="59" type="stmt" count="1"/>
      <line num="62" type="stmt" count="3"/>
      <line num="63" type="stmt" count="3"/>
      <line num="64" type="stmt" count="3"/>
      <line num="66" type="stmt" count="3"/>
      <line num="67" type="stmt" count="3"/>
      <line num="70" type="stmt" count="3"/>
      <line num="76" type="method" name="getAllowedParams" visibility="protected" complexity="1" crap="1" count="7"/>
      <line num="77" type="stmt" count="7"/>
      <line num="78" type="stmt" count="7"/>
      <line num="79" type="stmt" count="7"/>
      <line num="80" type="stmt" count="7"/>
      <line num="81" type="stmt" count="7"/>
      <line num="82" type="stmt" count="7"/>
      <line num="83" type="stmt" count="7"/>
      <line num="84" type="stmt" count="7"/>
      <line num="85" type="stmt" count="7"/>
      <line num="86" type="stmt" count="7"/>
      <metrics loc="89" ncloc="75" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="36" coveredstatements="36" elements="39" coveredelements="39"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/CommunityConfigurationServices.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\CommunityConfigurationServices" namespace="global">
        <metrics complexity="16" methods="16" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="16" coveredstatements="0" elements="32" coveredelements="0"/>
      </class>
      <line num="25" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="26" type="stmt" count="0"/>
      <line num="32" type="method" name="wrap" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="36" type="method" name="getEditorCapabilityFactory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="40" type="method" name="getHookRunner" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="41" type="stmt" count="0"/>
      <line num="44" type="method" name="getLogger" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="48" type="method" name="getConfigurationProviderFactory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="52" type="method" name="getProviderServicesContainer" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="53" type="stmt" count="0"/>
      <line num="56" type="method" name="getEmergencyDefaultsUpdater" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="57" type="stmt" count="0"/>
      <line num="60" type="method" name="getEmergencyDefaultsPathBuilder" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="61" type="stmt" count="0"/>
      <line num="64" type="method" name="getMediaWikiConfigReader" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="68" type="method" name="getMediaWikiConfigRouter" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="72" type="method" name="getSchemaConverterFactory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="76" type="method" name="getSchemaMigrator" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="77" type="stmt" count="0"/>
      <line num="80" type="method" name="getStoreFactory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="81" type="stmt" count="0"/>
      <line num="84" type="method" name="getValidatorFactory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="88" type="method" name="getWikiPageStoreWriter" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <metrics loc="92" ncloc="89" classes="1" methods="16" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="16" coveredstatements="0" elements="32" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/CommonsFileControl.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\CommonsFileControl" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="9" ncloc="9" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/Control.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\Control" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="7" ncloc="7" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/ControlRegistry.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\ControlRegistry" namespace="global">
        <metrics complexity="12" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="41" elements="44" coveredelements="44"/>
      </class>
      <line num="54" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="11"/>
      <line num="59" type="stmt" count="11"/>
      <line num="60" type="stmt" count="11"/>
      <line num="70" type="method" name="getControls" visibility="public" complexity="3" crap="3" count="11"/>
      <line num="71" type="stmt" count="11"/>
      <line num="72" type="stmt" count="11"/>
      <line num="73" type="stmt" count="10"/>
      <line num="74" type="stmt" count="10"/>
      <line num="75" type="stmt" count="2"/>
      <line num="78" type="stmt" count="11"/>
      <line num="85" type="method" name="getUsableSpec" visibility="private" complexity="8" crap="8" count="10"/>
      <line num="86" type="stmt" count="10"/>
      <line num="87" type="stmt" count="10"/>
      <line num="88" type="stmt" count="1"/>
      <line num="89" type="stmt" count="1"/>
      <line num="90" type="stmt" count="1"/>
      <line num="91" type="stmt" count="1"/>
      <line num="92" type="stmt" count="1"/>
      <line num="94" type="stmt" count="9"/>
      <line num="95" type="stmt" count="2"/>
      <line num="96" type="stmt" count="2"/>
      <line num="97" type="stmt" count="2"/>
      <line num="98" type="stmt" count="2"/>
      <line num="99" type="stmt" count="2"/>
      <line num="100" type="stmt" count="2"/>
      <line num="102" type="stmt" count="7"/>
      <line num="103" type="stmt" count="7"/>
      <line num="104" type="stmt" count="7"/>
      <line num="105" type="stmt" count="4"/>
      <line num="106" type="stmt" count="4"/>
      <line num="107" type="stmt" count="4"/>
      <line num="108" type="stmt" count="4"/>
      <line num="109" type="stmt" count="4"/>
      <line num="111" type="stmt" count="3"/>
      <line num="114" type="stmt" count="1"/>
      <line num="115" type="stmt" count="1"/>
      <line num="116" type="stmt" count="1"/>
      <line num="117" type="stmt" count="1"/>
      <line num="118" type="stmt" count="1"/>
      <line num="119" type="stmt" count="1"/>
      <line num="121" type="stmt" count="2"/>
      <line num="122" type="stmt" count="2"/>
      <line num="123" type="stmt" count="2"/>
      <line num="124" type="stmt" count="2"/>
      <metrics loc="127" ncloc="83" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="41" elements="44" coveredelements="44"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/NamespacesControl.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\NamespacesControl" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="10" ncloc="10" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/PageTitleControl.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\PageTitleControl" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="9" ncloc="9" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Controls/PageTitlesControl.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Controls\PageTitlesControl" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="10" ncloc="10" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/DomainEvents/CommunityConfigurationChangedEvent.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\DomainEvents\CommunityConfigurationChangedEvent" namespace="global">
        <metrics complexity="2" methods="2" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="3" elements="5" coveredelements="5"/>
      </class>
      <line num="12" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="15" type="stmt" count="1"/>
      <line num="16" type="stmt" count="1"/>
      <line num="22" type="method" name="getProvider" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="23" type="stmt" count="1"/>
      <metrics loc="26" ncloc="23" classes="1" methods="2" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="3" elements="5" coveredelements="5"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/DomainEvents/CommunityConfigurationChangedListener.php">
      <metrics loc="11" ncloc="11" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/AbstractEditorCapability.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EditorCapabilities\AbstractEditorCapability" namespace="global">
        <metrics complexity="4" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="0" elements="8" coveredelements="0"/>
      </class>
      <line num="16" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="26" type="method" name="getContext" visibility="protected" complexity="1" crap="2" count="0"/>
      <line num="27" type="stmt" count="0"/>
      <line num="36" type="method" name="getParentTitle" visibility="protected" complexity="1" crap="2" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="48" type="method" name="msg" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <metrics loc="52" ncloc="35" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="0" elements="8" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/DashboardEditorCapability.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EditorCapabilities\DashboardEditorCapability" namespace="global">
        <metrics complexity="5" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="32" coveredstatements="32" elements="35" coveredelements="35"/>
      </class>
      <line num="26" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="31" type="stmt" count="2"/>
      <line num="33" type="stmt" count="2"/>
      <line num="36" type="method" name="getProviders" visibility="private" complexity="3" crap="3" count="2"/>
      <line num="37" type="stmt" count="2"/>
      <line num="38" type="stmt" count="2"/>
      <line num="39" type="stmt" count="2"/>
      <line num="40" type="stmt" count="2"/>
      <line num="41" type="stmt" count="2"/>
      <line num="43" type="stmt" count="2"/>
      <line num="44" type="stmt" count="2"/>
      <line num="45" type="stmt" count="2"/>
      <line num="46" type="stmt" count="2"/>
      <line num="47" type="stmt" count="2"/>
      <line num="48" type="stmt" count="2"/>
      <line num="49" type="stmt" count="2"/>
      <line num="51" type="stmt" count="2"/>
      <line num="57" type="method" name="execute" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="58" type="stmt" count="2"/>
      <line num="59" type="stmt" count="2"/>
      <line num="60" type="stmt" count="2"/>
      <line num="61" type="stmt" count="2"/>
      <line num="62" type="stmt" count="2"/>
      <line num="63" type="stmt" count="2"/>
      <line num="64" type="stmt" count="2"/>
      <line num="65" type="stmt" count="2"/>
      <line num="66" type="stmt" count="2"/>
      <line num="67" type="stmt" count="2"/>
      <line num="68" type="stmt" count="2"/>
      <line num="69" type="stmt" count="2"/>
      <line num="70" type="stmt" count="2"/>
      <line num="71" type="stmt" count="2"/>
      <line num="72" type="stmt" count="2"/>
      <line num="73" type="stmt" count="2"/>
      <line num="74" type="stmt" count="2"/>
      <metrics loc="77" ncloc="74" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="32" coveredstatements="32" elements="35" coveredelements="35"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/EditorCapabilityFactory.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EditorCapabilities\EditorCapabilityFactory" namespace="global">
        <metrics complexity="4" methods="2" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="15" coveredstatements="13" elements="17" coveredelements="14"/>
      </class>
      <line num="24" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="29" type="stmt" count="1"/>
      <line num="30" type="stmt" count="1"/>
      <line num="39" type="method" name="newCapability" visibility="public" complexity="3" crap="3.03" count="1"/>
      <line num="44" type="stmt" count="1"/>
      <line num="45" type="stmt" count="0"/>
      <line num="48" type="stmt" count="1"/>
      <line num="49" type="stmt" count="1"/>
      <line num="50" type="stmt" count="1"/>
      <line num="51" type="stmt" count="1"/>
      <line num="52" type="stmt" count="1"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="57" type="stmt" count="1"/>
      <line num="58" type="stmt" count="0"/>
      <line num="61" type="stmt" count="1"/>
      <line num="62" type="stmt" count="1"/>
      <metrics loc="65" ncloc="54" classes="1" methods="2" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="15" coveredstatements="13" elements="17" coveredelements="14"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/GenericFormEditorCapability.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EditorCapabilities\GenericFormEditorCapability" namespace="global">
        <metrics complexity="21" methods="5" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="169" coveredstatements="147" elements="174" coveredelements="149"/>
      </class>
      <line num="31" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="41" type="stmt" count="4"/>
      <line num="43" type="stmt" count="4"/>
      <line num="44" type="stmt" count="4"/>
      <line num="45" type="stmt" count="4"/>
      <line num="46" type="stmt" count="4"/>
      <line num="47" type="stmt" count="4"/>
      <line num="48" type="stmt" count="4"/>
      <line num="60" type="method" name="getUiSchema" visibility="private" complexity="3" crap="6.09" count="2"/>
      <line num="61" type="stmt" count="2"/>
      <line num="62" type="stmt" count="2"/>
      <line num="63" type="stmt" count="0"/>
      <line num="66" type="stmt" count="2"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="80" type="method" name="getReferencedControlNames" visibility="private" complexity="3" crap="12" count="0"/>
      <line num="81" type="stmt" count="0"/>
      <line num="82" type="stmt" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <line num="91" type="method" name="displayValidationError" visibility="private" complexity="3" crap="3" count="1"/>
      <line num="92" type="stmt" count="1"/>
      <line num="93" type="stmt" count="1"/>
      <line num="94" type="stmt" count="1"/>
      <line num="95" type="stmt" count="1"/>
      <line num="96" type="stmt" count="1"/>
      <line num="98" type="stmt" count="1"/>
      <line num="100" type="stmt" count="1"/>
      <line num="101" type="stmt" count="1"/>
      <line num="102" type="stmt" count="1"/>
      <line num="103" type="stmt" count="1"/>
      <line num="104" type="stmt" count="1"/>
      <line num="105" type="stmt" count="1"/>
      <line num="106" type="stmt" count="1"/>
      <line num="107" type="stmt" count="1"/>
      <line num="108" type="stmt" count="1"/>
      <line num="109" type="stmt" count="1"/>
      <line num="110" type="stmt" count="1"/>
      <line num="111" type="stmt" count="1"/>
      <line num="112" type="stmt" count="1"/>
      <line num="113" type="stmt" count="1"/>
      <line num="116" type="stmt" count="1"/>
      <line num="117" type="stmt" count="1"/>
      <line num="118" type="stmt" count="1"/>
      <line num="119" type="stmt" count="1"/>
      <line num="120" type="stmt" count="1"/>
      <line num="126" type="method" name="execute" visibility="public" complexity="11" crap="11.05" count="3"/>
      <line num="127" type="stmt" count="3"/>
      <line num="128" type="stmt" count="0"/>
      <line num="131" type="stmt" count="3"/>
      <line num="133" type="stmt" count="3"/>
      <line num="135" type="stmt" count="3"/>
      <line num="136" type="stmt" count="3"/>
      <line num="137" type="stmt" count="3"/>
      <line num="140" type="stmt" count="3"/>
      <line num="141" type="stmt" count="3"/>
      <line num="142" type="stmt" count="3"/>
      <line num="143" type="stmt" count="3"/>
      <line num="144" type="stmt" count="3"/>
      <line num="145" type="stmt" count="3"/>
      <line num="146" type="stmt" count="3"/>
      <line num="147" type="stmt" count="3"/>
      <line num="148" type="stmt" count="3"/>
      <line num="150" type="stmt" count="3"/>
      <line num="151" type="stmt" count="0"/>
      <line num="152" type="stmt" count="3"/>
      <line num="153" type="stmt" count="0"/>
      <line num="158" type="stmt" count="3"/>
      <line num="159" type="stmt" count="3"/>
      <line num="160" type="stmt" count="0"/>
      <line num="161" type="stmt" count="3"/>
      <line num="162" type="stmt" count="1"/>
      <line num="163" type="stmt" count="1"/>
      <line num="164" type="stmt" count="1"/>
      <line num="165" type="stmt" count="1"/>
      <line num="166" type="stmt" count="1"/>
      <line num="167" type="stmt" count="1"/>
      <line num="168" type="stmt" count="1"/>
      <line num="171" type="stmt" count="2"/>
      <line num="172" type="stmt" count="2"/>
      <line num="173" type="stmt" count="1"/>
      <line num="174" type="stmt" count="1"/>
      <line num="175" type="stmt" count="1"/>
      <line num="176" type="stmt" count="1"/>
      <line num="177" type="stmt" count="1"/>
      <line num="178" type="stmt" count="1"/>
      <line num="179" type="stmt" count="1"/>
      <line num="181" type="stmt" count="2"/>
      <line num="182" type="stmt" count="2"/>
      <line num="183" type="stmt" count="2"/>
      <line num="184" type="stmt" count="2"/>
      <line num="185" type="stmt" count="2"/>
      <line num="186" type="stmt" count="2"/>
      <line num="187" type="stmt" count="2"/>
      <line num="188" type="stmt" count="2"/>
      <line num="189" type="stmt" count="2"/>
      <line num="190" type="stmt" count="2"/>
      <line num="191" type="stmt" count="2"/>
      <line num="192" type="stmt" count="2"/>
      <line num="193" type="stmt" count="2"/>
      <line num="194" type="stmt" count="2"/>
      <line num="197" type="stmt" count="0"/>
      <line num="198" type="stmt" count="0"/>
      <line num="199" type="stmt" count="0"/>
      <line num="200" type="stmt" count="0"/>
      <line num="201" type="stmt" count="0"/>
      <line num="203" type="stmt" count="2"/>
      <line num="204" type="stmt" count="2"/>
      <line num="205" type="stmt" count="2"/>
      <line num="206" type="stmt" count="2"/>
      <line num="207" type="stmt" count="2"/>
      <line num="208" type="stmt" count="2"/>
      <line num="209" type="stmt" count="2"/>
      <line num="210" type="stmt" count="2"/>
      <line num="211" type="stmt" count="2"/>
      <line num="212" type="stmt" count="2"/>
      <line num="213" type="stmt" count="2"/>
      <line num="214" type="stmt" count="2"/>
      <line num="215" type="stmt" count="2"/>
      <line num="216" type="stmt" count="2"/>
      <line num="217" type="stmt" count="2"/>
      <line num="218" type="stmt" count="2"/>
      <line num="219" type="stmt" count="2"/>
      <line num="220" type="stmt" count="2"/>
      <line num="221" type="stmt" count="2"/>
      <line num="222" type="stmt" count="2"/>
      <line num="223" type="stmt" count="2"/>
      <line num="224" type="stmt" count="2"/>
      <line num="225" type="stmt" count="2"/>
      <line num="226" type="stmt" count="2"/>
      <line num="227" type="stmt" count="2"/>
      <line num="229" type="stmt" count="2"/>
      <line num="230" type="stmt" count="2"/>
      <line num="231" type="stmt" count="2"/>
      <line num="232" type="stmt" count="2"/>
      <line num="233" type="stmt" count="2"/>
      <line num="235" type="stmt" count="2"/>
      <line num="236" type="stmt" count="2"/>
      <line num="237" type="stmt" count="2"/>
      <line num="238" type="stmt" count="2"/>
      <line num="239" type="stmt" count="2"/>
      <line num="240" type="stmt" count="2"/>
      <line num="241" type="stmt" count="2"/>
      <line num="242" type="stmt" count="2"/>
      <line num="243" type="stmt" count="2"/>
      <line num="244" type="stmt" count="2"/>
      <line num="245" type="stmt" count="2"/>
      <line num="246" type="stmt" count="2"/>
      <line num="247" type="stmt" count="2"/>
      <line num="248" type="stmt" count="2"/>
      <line num="249" type="stmt" count="2"/>
      <line num="250" type="stmt" count="2"/>
      <line num="251" type="stmt" count="2"/>
      <line num="252" type="stmt" count="2"/>
      <line num="253" type="stmt" count="2"/>
      <line num="254" type="stmt" count="2"/>
      <line num="255" type="stmt" count="2"/>
      <line num="256" type="stmt" count="2"/>
      <line num="257" type="stmt" count="2"/>
      <line num="258" type="stmt" count="2"/>
      <line num="259" type="stmt" count="2"/>
      <line num="260" type="stmt" count="2"/>
      <line num="261" type="stmt" count="2"/>
      <line num="262" type="stmt" count="2"/>
      <line num="263" type="stmt" count="2"/>
      <line num="264" type="stmt" count="2"/>
      <line num="265" type="stmt" count="2"/>
      <line num="266" type="stmt" count="2"/>
      <metrics loc="269" ncloc="247" classes="1" methods="5" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="169" coveredstatements="147" elements="174" coveredelements="149"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/IEditorCapability.php">
      <metrics loc="23" ncloc="12" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EditorCapabilities/MessagesProcessor.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EditorCapabilities\MessagesProcessor" namespace="global">
        <metrics complexity="37" methods="6" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="104" coveredstatements="98" elements="110" coveredelements="102"/>
      </class>
      <line num="16" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="21"/>
      <line num="20" type="stmt" count="21"/>
      <line num="28" type="method" name="getMessages" visibility="public" complexity="4" crap="4.10" count="13"/>
      <line num="29" type="stmt" count="13"/>
      <line num="30" type="stmt" count="0"/>
      <line num="31" type="stmt" count="0"/>
      <line num="34" type="stmt" count="13"/>
      <line num="35" type="stmt" count="13"/>
      <line num="37" type="stmt" count="13"/>
      <line num="38" type="stmt" count="13"/>
      <line num="39" type="stmt" count="13"/>
      <line num="41" type="stmt" count="13"/>
      <line num="42" type="stmt" count="13"/>
      <line num="46" type="stmt" count="13"/>
      <line num="64" type="method" name="getUiSchemaMessages" visibility="public" complexity="8" crap="8" count="8"/>
      <line num="67" type="stmt" count="8"/>
      <line num="68" type="stmt" count="8"/>
      <line num="69" type="stmt" count="6"/>
      <line num="70" type="stmt" count="6"/>
      <line num="71" type="stmt" count="4"/>
      <line num="72" type="stmt" count="4"/>
      <line num="73" type="stmt" count="4"/>
      <line num="75" type="stmt" count="6"/>
      <line num="76" type="stmt" count="2"/>
      <line num="77" type="stmt" count="2"/>
      <line num="82" type="stmt" count="8"/>
      <line num="83" type="stmt" count="8"/>
      <line num="84" type="stmt" count="5"/>
      <line num="85" type="stmt" count="5"/>
      <line num="86" type="stmt" count="5"/>
      <line num="90" type="stmt" count="1"/>
      <line num="91" type="stmt" count="1"/>
      <line num="92" type="stmt" count="1"/>
      <line num="93" type="stmt" count="1"/>
      <line num="94" type="stmt" count="1"/>
      <line num="97" type="stmt" count="8"/>
      <line num="105" type="method" name="mapJsonPointerToMessageKey" visibility="private" complexity="1" crap="1" count="13"/>
      <line num="107" type="stmt" count="13"/>
      <line num="109" type="stmt" count="13"/>
      <line num="111" type="stmt" count="13"/>
      <line num="112" type="stmt" count="13"/>
      <line num="122" type="method" name="getControlMessages" visibility="private" complexity="2" crap="3.19" count="3"/>
      <line num="124" type="stmt" count="3"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="127" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="130" type="stmt" count="3"/>
      <line num="139" type="method" name="computeEditorMessageKeys" visibility="private" complexity="21" crap="21" count="13"/>
      <line num="142" type="stmt" count="13"/>
      <line num="143" type="stmt" count="13"/>
      <line num="144" type="stmt" count="13"/>
      <line num="145" type="stmt" count="13"/>
      <line num="146" type="stmt" count="13"/>
      <line num="147" type="stmt" count="13"/>
      <line num="148" type="stmt" count="13"/>
      <line num="150" type="stmt" count="13"/>
      <line num="152" type="stmt" count="13"/>
      <line num="155" type="stmt" count="13"/>
      <line num="156" type="stmt" count="13"/>
      <line num="157" type="stmt" count="3"/>
      <line num="158" type="stmt" count="3"/>
      <line num="159" type="stmt" count="3"/>
      <line num="161" type="stmt" count="13"/>
      <line num="162" type="stmt" count="3"/>
      <line num="163" type="stmt" count="3"/>
      <line num="164" type="stmt" count="3"/>
      <line num="165" type="stmt" count="3"/>
      <line num="166" type="stmt" count="1"/>
      <line num="167" type="stmt" count="1"/>
      <line num="168" type="stmt" count="1"/>
      <line num="169" type="stmt" count="1"/>
      <line num="170" type="stmt" count="1"/>
      <line num="171" type="stmt" count="1"/>
      <line num="174" type="stmt" count="3"/>
      <line num="175" type="stmt" count="3"/>
      <line num="179" type="stmt" count="3"/>
      <line num="182" type="stmt" count="11"/>
      <line num="183" type="stmt" count="11"/>
      <line num="184" type="stmt" count="11"/>
      <line num="186" type="stmt" count="9"/>
      <line num="187" type="stmt" count="4"/>
      <line num="188" type="stmt" count="2"/>
      <line num="189" type="stmt" count="2"/>
      <line num="193" type="stmt" count="4"/>
      <line num="196" type="stmt" count="5"/>
      <line num="197" type="stmt" count="5"/>
      <line num="199" type="stmt" count="2"/>
      <line num="200" type="stmt" count="2"/>
      <line num="202" type="stmt" count="5"/>
      <line num="203" type="stmt" count="5"/>
      <line num="204" type="stmt" count="5"/>
      <line num="205" type="stmt" count="5"/>
      <line num="207" type="stmt" count="11"/>
      <line num="208" type="stmt" count="1"/>
      <line num="209" type="stmt" count="1"/>
      <line num="210" type="stmt" count="1"/>
      <line num="211" type="stmt" count="1"/>
      <line num="214" type="stmt" count="11"/>
      <line num="215" type="stmt" count="11"/>
      <line num="217" type="stmt" count="7"/>
      <line num="218" type="stmt" count="7"/>
      <line num="219" type="stmt" count="7"/>
      <line num="221" type="stmt" count="7"/>
      <line num="223" type="stmt" count="7"/>
      <line num="225" type="stmt" count="7"/>
      <line num="227" type="stmt" count="2"/>
      <line num="228" type="stmt" count="2"/>
      <line num="229" type="stmt" count="2"/>
      <line num="233" type="stmt" count="13"/>
      <metrics loc="236" ncloc="183" classes="1" methods="6" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="104" coveredstatements="98" elements="110" coveredelements="102"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EmergencyShutdown/EmergencyDefaultsPathBuilder.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EmergencyShutdown\EmergencyDefaultsPathBuilder" namespace="global">
        <metrics complexity="4" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="9" coveredstatements="9" elements="12" coveredelements="12"/>
      </class>
      <line num="12" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="13" type="stmt" count="3"/>
      <line num="22" type="method" name="getDefaultsDirectory" visibility="public" complexity="2" crap="2" count="3"/>
      <line num="23" type="stmt" count="3"/>
      <line num="24" type="stmt" count="1"/>
      <line num="25" type="stmt" count="1"/>
      <line num="26" type="stmt" count="1"/>
      <line num="28" type="stmt" count="2"/>
      <line num="29" type="stmt" count="2"/>
      <line num="41" type="method" name="getDefaultsFileForProvider" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="45" type="stmt" count="1"/>
      <line num="46" type="stmt" count="1"/>
      <metrics loc="49" ncloc="33" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="9" coveredstatements="9" elements="12" coveredelements="12"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/EmergencyShutdown/EmergencyDefaultsUpdater.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\EmergencyShutdown\EmergencyDefaultsUpdater" namespace="global">
        <metrics complexity="6" methods="5" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="17" coveredstatements="13" elements="22" coveredelements="16"/>
      </class>
      <line num="12" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="13" type="stmt" count="3"/>
      <line num="23" type="method" name="getDefaultsDirectory" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="24" type="stmt" count="0"/>
      <line num="25" type="stmt" count="0"/>
      <line num="38" type="method" name="getDefaultsFileForProvider" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="43" type="stmt" count="0"/>
      <line num="55" type="method" name="getEmergencyDefaultsForProvider" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="56" type="stmt" count="2"/>
      <line num="72" type="method" name="getSerializedDefaults" visibility="public" complexity="2" crap="2" count="3"/>
      <line num="73" type="stmt" count="3"/>
      <line num="74" type="stmt" count="1"/>
      <line num="75" type="stmt" count="1"/>
      <line num="76" type="stmt" count="1"/>
      <line num="79" type="stmt" count="2"/>
      <line num="80" type="stmt" count="2"/>
      <line num="81" type="stmt" count="2"/>
      <line num="82" type="stmt" count="2"/>
      <line num="83" type="stmt" count="2"/>
      <line num="84" type="stmt" count="2"/>
      <line num="85" type="stmt" count="2"/>
      <metrics loc="88" ncloc="48" classes="1" methods="5" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="17" coveredstatements="13" elements="22" coveredelements="16"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/ChangeTagHooks.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Hooks\ChangeTagHooks" namespace="global">
        <metrics complexity="2" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="0" elements="4" coveredelements="0"/>
      </class>
      <line num="14" type="method" name="onListDefinedTags" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="15" type="stmt" count="0"/>
      <line num="21" type="method" name="onChangeTagsListActive" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="22" type="stmt" count="0"/>
      <metrics loc="25" ncloc="19" classes="1" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="0" elements="4" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/CommunityConfigurationProvider_initListHook.php">
      <metrics loc="23" ncloc="10" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/CommunityConfigurationSchemaBeforeEditorHook.php">
      <metrics loc="26" ncloc="14" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/HookRunner.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Hooks\HookRunner" namespace="global">
        <metrics complexity="3" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="9" coveredstatements="9" elements="12" coveredelements="12"/>
      </class>
      <line num="18" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="19" type="stmt" count="2"/>
      <line num="24" type="method" name="onCommunityConfigurationSchemaBeforeEditor" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="28" type="stmt" count="1"/>
      <line num="29" type="stmt" count="1"/>
      <line num="30" type="stmt" count="1"/>
      <line num="31" type="stmt" count="1"/>
      <line num="37" type="method" name="onCommunityConfigurationProvider_initList" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="38" type="stmt" count="1"/>
      <line num="39" type="stmt" count="1"/>
      <line num="40" type="stmt" count="1"/>
      <line num="41" type="stmt" count="1"/>
      <metrics loc="44" ncloc="33" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="9" coveredstatements="9" elements="12" coveredelements="12"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/NavigationHooks.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Hooks\NavigationHooks" namespace="global">
        <metrics complexity="12" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="0" elements="44" coveredelements="0"/>
      </class>
      <line num="16" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="31" type="method" name="onSkinTemplateNavigation__Universal" visibility="public" complexity="10" crap="110" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="35" type="stmt" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="38" type="stmt" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="41" type="stmt" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="43" type="stmt" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="46" type="stmt" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="48" type="stmt" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="50" type="stmt" count="0"/>
      <line num="55" type="stmt" count="0"/>
      <line num="56" type="stmt" count="0"/>
      <line num="57" type="stmt" count="0"/>
      <line num="58" type="stmt" count="0"/>
      <line num="60" type="stmt" count="0"/>
      <line num="62" type="stmt" count="0"/>
      <line num="63" type="stmt" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="82" type="method" name="arrayInsertAfterView" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="87" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <metrics loc="91" ncloc="74" classes="1" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="0" elements="44" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/ValidationHooks.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Hooks\ValidationHooks" namespace="global">
        <metrics complexity="6" methods="2" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="19" coveredstatements="19" elements="21" coveredelements="21"/>
      </class>
      <line num="16" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="5"/>
      <line num="17" type="stmt" count="5"/>
      <line num="22" type="method" name="onJsonValidateSave" visibility="public" complexity="5" crap="5" count="5"/>
      <line num="27" type="stmt" count="5"/>
      <line num="28" type="stmt" count="5"/>
      <line num="29" type="stmt" count="5"/>
      <line num="30" type="stmt" count="5"/>
      <line num="32" type="stmt" count="5"/>
      <line num="35" type="stmt" count="5"/>
      <line num="36" type="stmt" count="4"/>
      <line num="37" type="stmt" count="4"/>
      <line num="38" type="stmt" count="4"/>
      <line num="41" type="stmt" count="1"/>
      <line num="42" type="stmt" count="1"/>
      <line num="44" type="stmt" count="3"/>
      <line num="45" type="stmt" count="3"/>
      <line num="46" type="stmt" count="3"/>
      <line num="47" type="stmt" count="3"/>
      <line num="48" type="stmt" count="3"/>
      <line num="49" type="stmt" count="3"/>
      <line num="50" type="stmt" count="3"/>
      <metrics loc="55" ncloc="49" classes="1" methods="2" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="19" coveredstatements="19" elements="21" coveredelements="21"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Hooks/WikiPageStoreEventIngress.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Hooks\WikiPageStoreEventIngress" namespace="global">
        <metrics complexity="7" methods="4" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="11" coveredstatements="10" elements="15" coveredelements="13"/>
      </class>
      <line num="18" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="19" type="stmt" count="2"/>
      <line num="21" type="method" name="invalidateForPage" visibility="private" complexity="4" crap="4.03" count="2"/>
      <line num="22" type="stmt" count="2"/>
      <line num="23" type="stmt" count="2"/>
      <line num="24" type="stmt" count="2"/>
      <line num="25" type="stmt" count="2"/>
      <line num="27" type="stmt" count="0"/>
      <line num="30" type="stmt" count="2"/>
      <line num="31" type="stmt" count="2"/>
      <line num="32" type="stmt" count="2"/>
      <line num="37" type="method" name="handlePageLatestRevisionChangedEvent" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="40" type="stmt" count="2"/>
      <line num="43" type="method" name="handlePageDeletedEvent" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="44" type="stmt" count="1"/>
      <metrics loc="48" ncloc="47" classes="1" methods="4" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="11" coveredstatements="10" elements="15" coveredelements="13"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/AbstractProvider.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Provider\AbstractProvider" namespace="global">
        <metrics complexity="15" methods="11" coveredmethods="11" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="41" elements="52" coveredelements="52"/>
      </class>
      <line num="47" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="27"/>
      <line num="54" type="stmt" count="27"/>
      <line num="55" type="stmt" count="27"/>
      <line num="56" type="stmt" count="27"/>
      <line num="57" type="stmt" count="27"/>
      <line num="58" type="stmt" count="27"/>
      <line num="59" type="stmt" count="27"/>
      <line num="65" type="method" name="getId" visibility="public" complexity="1" crap="1" count="6"/>
      <line num="66" type="stmt" count="6"/>
      <line num="69" type="method" name="getProviderServicesContainer" visibility="protected" complexity="1" crap="1" count="4"/>
      <line num="70" type="stmt" count="4"/>
      <line num="77" type="method" name="getName" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="78" type="stmt" count="1"/>
      <line num="79" type="stmt" count="1"/>
      <line num="80" type="stmt" count="1"/>
      <line num="86" type="method" name="getStore" visibility="public" complexity="1" crap="1" count="22"/>
      <line num="87" type="stmt" count="22"/>
      <line num="93" type="method" name="getValidator" visibility="public" complexity="1" crap="1" count="20"/>
      <line num="94" type="stmt" count="20"/>
      <line num="112" type="method" name="doStoreValidConfiguration" visibility="private" complexity="5" crap="5" count="8"/>
      <line num="119" type="stmt" count="8"/>
      <line num="120" type="stmt" count="8"/>
      <line num="121" type="stmt" count="2"/>
      <line num="124" type="stmt" count="7"/>
      <line num="125" type="stmt" count="7"/>
      <line num="126" type="stmt" count="7"/>
      <line num="127" type="stmt" count="6"/>
      <line num="129" type="stmt" count="7"/>
      <line num="130" type="stmt" count="7"/>
      <line num="131" type="stmt" count="7"/>
      <line num="133" type="stmt" count="7"/>
      <line num="134" type="stmt" count="1"/>
      <line num="136" type="stmt" count="6"/>
      <line num="139" type="stmt" count="7"/>
      <line num="140" type="stmt" count="6"/>
      <line num="141" type="stmt" count="4"/>
      <line num="142" type="stmt" count="4"/>
      <line num="143" type="stmt" count="4"/>
      <line num="144" type="stmt" count="4"/>
      <line num="145" type="stmt" count="4"/>
      <line num="146" type="stmt" count="4"/>
      <line num="147" type="stmt" count="6"/>
      <line num="150" type="stmt" count="7"/>
      <line num="151" type="stmt" count="7"/>
      <line num="157" type="method" name="storeValidConfiguration" visibility="public" complexity="1" crap="1" count="7"/>
      <line num="163" type="stmt" count="7"/>
      <line num="169" type="method" name="alwaysStoreValidConfiguration" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="175" type="stmt" count="1"/>
      <line num="181" type="method" name="invalidateCache" visibility="public" complexity="1" crap="1" count="9"/>
      <line num="182" type="stmt" count="9"/>
      <line num="188" type="method" name="getOptionValue" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="189" type="stmt" count="4"/>
      <metrics loc="192" ncloc="132" classes="1" methods="11" coveredmethods="11" conditionals="0" coveredconditionals="0" statements="41" coveredstatements="41" elements="52" coveredelements="52"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/ConfigurationProviderFactory.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Provider\ConfigurationProviderFactory" namespace="global">
        <metrics complexity="25" methods="12" coveredmethods="10" conditionals="0" coveredconditionals="0" statements="80" coveredstatements="76" elements="92" coveredelements="86"/>
      </class>
      <line num="37" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="8"/>
      <line num="47" type="stmt" count="8"/>
      <line num="48" type="stmt" count="8"/>
      <line num="49" type="stmt" count="8"/>
      <line num="50" type="stmt" count="8"/>
      <line num="51" type="stmt" count="8"/>
      <line num="52" type="stmt" count="8"/>
      <line num="53" type="stmt" count="8"/>
      <line num="54" type="stmt" count="8"/>
      <line num="62" type="method" name="getConstructType" visibility="private" complexity="3" crap="3" count="5"/>
      <line num="63" type="stmt" count="5"/>
      <line num="64" type="stmt" count="5"/>
      <line num="72" type="method" name="getConstructArgs" visibility="private" complexity="3" crap="3" count="4"/>
      <line num="73" type="stmt" count="4"/>
      <line num="74" type="stmt" count="4"/>
      <line num="77" type="method" name="getConstructOptions" visibility="private" complexity="2" crap="2.15" count="4"/>
      <line num="78" type="stmt" count="4"/>
      <line num="79" type="stmt" count="0"/>
      <line num="81" type="stmt" count="4"/>
      <line num="84" type="method" name="getProviderClassSpec" visibility="private" complexity="2" crap="2" count="4"/>
      <line num="85" type="stmt" count="4"/>
      <line num="86" type="stmt" count="1"/>
      <line num="89" type="stmt" count="3"/>
      <line num="100" type="method" name="getProviderSpec" visibility="public" complexity="2" crap="2" count="7"/>
      <line num="101" type="stmt" count="7"/>
      <line num="102" type="stmt" count="7"/>
      <line num="103" type="stmt" count="1"/>
      <line num="105" type="stmt" count="6"/>
      <line num="115" type="method" name="constructProvider" visibility="private" complexity="4" crap="4.01" count="6"/>
      <line num="116" type="stmt" count="6"/>
      <line num="117" type="stmt" count="5"/>
      <line num="119" type="stmt" count="5"/>
      <line num="120" type="stmt" count="5"/>
      <line num="121" type="stmt" count="1"/>
      <line num="122" type="stmt" count="1"/>
      <line num="123" type="stmt" count="1"/>
      <line num="125" type="stmt" count="4"/>
      <line num="126" type="stmt" count="0"/>
      <line num="127" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="131" type="stmt" count="4"/>
      <line num="132" type="stmt" count="4"/>
      <line num="133" type="stmt" count="4"/>
      <line num="134" type="stmt" count="4"/>
      <line num="135" type="stmt" count="4"/>
      <line num="136" type="stmt" count="4"/>
      <line num="137" type="stmt" count="4"/>
      <line num="138" type="stmt" count="4"/>
      <line num="139" type="stmt" count="4"/>
      <line num="141" type="stmt" count="4"/>
      <line num="142" type="stmt" count="4"/>
      <line num="143" type="stmt" count="4"/>
      <line num="144" type="stmt" count="4"/>
      <line num="145" type="stmt" count="4"/>
      <line num="146" type="stmt" count="4"/>
      <line num="147" type="stmt" count="4"/>
      <line num="148" type="stmt" count="4"/>
      <line num="149" type="stmt" count="4"/>
      <line num="150" type="stmt" count="4"/>
      <line num="151" type="stmt" count="4"/>
      <line num="152" type="stmt" count="4"/>
      <line num="153" type="stmt" count="4"/>
      <line num="155" type="stmt" count="3"/>
      <line num="163" type="stmt" count="3"/>
      <line num="164" type="stmt" count="3"/>
      <line num="173" type="method" name="newProvider" visibility="public" complexity="2" crap="2" count="6"/>
      <line num="174" type="stmt" count="6"/>
      <line num="175" type="stmt" count="6"/>
      <line num="177" type="stmt" count="3"/>
      <line num="185" type="method" name="getSupportedKeys" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="186" type="stmt" count="2"/>
      <line num="187" type="stmt" count="2"/>
      <line num="196" type="method" name="getSupportedKeysWithUI" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="197" type="stmt" count="1"/>
      <line num="198" type="stmt" count="1"/>
      <line num="204" type="stmt" count="1"/>
      <line num="205" type="stmt" count="1"/>
      <line num="206" type="stmt" count="1"/>
      <line num="215" type="method" name="isProviderSupported" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="216" type="stmt" count="1"/>
      <line num="223" type="method" name="initList" visibility="private" complexity="3" crap="3" count="8"/>
      <line num="224" type="stmt" count="8"/>
      <line num="225" type="stmt" count="2"/>
      <line num="227" type="stmt" count="8"/>
      <line num="228" type="stmt" count="8"/>
      <line num="229" type="stmt" count="8"/>
      <line num="230" type="stmt" count="8"/>
      <line num="231" type="stmt" count="8"/>
      <line num="232" type="stmt" count="8"/>
      <line num="233" type="stmt" count="8"/>
      <line num="234" type="stmt" count="8"/>
      <line num="237" type="stmt" count="8"/>
      <metrics loc="240" ncloc="172" classes="1" methods="12" coveredmethods="10" conditionals="0" coveredconditionals="0" statements="80" coveredstatements="76" elements="92" coveredelements="86"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/DataProvider.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Provider\DataProvider" namespace="global">
        <metrics complexity="44" methods="20" coveredmethods="16" conditionals="0" coveredconditionals="0" statements="119" coveredstatements="102" elements="139" coveredelements="118"/>
      </class>
      <line num="31" type="method" name="validateConfiguration" visibility="private" complexity="2" crap="2" count="13"/>
      <line num="32" type="stmt" count="13"/>
      <line num="33" type="stmt" count="13"/>
      <line num="34" type="stmt" count="2"/>
      <line num="37" type="stmt" count="11"/>
      <line num="40" type="method" name="overrideDefaultsWithConfigRecursive" visibility="private" complexity="5" crap="5" count="11"/>
      <line num="41" type="stmt" count="11"/>
      <line num="43" type="stmt" count="11"/>
      <line num="44" type="stmt" count="9"/>
      <line num="45" type="stmt" count="9"/>
      <line num="46" type="stmt" count="5"/>
      <line num="47" type="stmt" count="5"/>
      <line num="48" type="stmt" count="5"/>
      <line num="49" type="stmt" count="5"/>
      <line num="54" type="stmt" count="8"/>
      <line num="57" type="stmt" count="1"/>
      <line num="61" type="stmt" count="11"/>
      <line num="64" type="method" name="enhanceConfigPreValidation" visibility="private" complexity="3" crap="3.21" count="13"/>
      <line num="66" type="stmt" count="13"/>
      <line num="67" type="stmt" count="2"/>
      <line num="70" type="stmt" count="11"/>
      <line num="71" type="stmt" count="0"/>
      <line num="76" type="stmt" count="0"/>
      <line num="79" type="stmt" count="11"/>
      <line num="81" type="stmt" count="11"/>
      <line num="84" type="method" name="addAutocomputedProperties" visibility="protected" complexity="1" crap="1" count="11"/>
      <line num="85" type="stmt" count="11"/>
      <line num="97" type="method" name="normalizeConfigToObjects" visibility="private" complexity="6" crap="6" count="19"/>
      <line num="98" type="stmt" count="19"/>
      <line num="99" type="stmt" count="4"/>
      <line num="102" type="stmt" count="15"/>
      <line num="104" type="stmt" count="15"/>
      <line num="105" type="stmt" count="13"/>
      <line num="106" type="stmt" count="6"/>
      <line num="109" type="stmt" count="7"/>
      <line num="110" type="stmt" count="3"/>
      <line num="111" type="stmt" count="3"/>
      <line num="116" type="stmt" count="15"/>
      <line num="119" type="method" name="copyStatusValue" visibility="private" complexity="3" crap="3" count="15"/>
      <line num="121" type="stmt" count="15"/>
      <line num="122" type="stmt" count="15"/>
      <line num="125" type="stmt" count="11"/>
      <line num="126" type="stmt" count="11"/>
      <line num="127" type="stmt" count="11"/>
      <line num="128" type="stmt" count="11"/>
      <line num="130" type="stmt" count="15"/>
      <line num="147" type="method" name="processStoreStatus" visibility="private" complexity="3" crap="3" count="15"/>
      <line num="148" type="stmt" count="15"/>
      <line num="149" type="stmt" count="2"/>
      <line num="150" type="stmt" count="2"/>
      <line num="151" type="stmt" count="2"/>
      <line num="152" type="stmt" count="2"/>
      <line num="153" type="stmt" count="2"/>
      <line num="154" type="stmt" count="2"/>
      <line num="157" type="stmt" count="13"/>
      <line num="158" type="stmt" count="13"/>
      <line num="159" type="stmt" count="13"/>
      <line num="160" type="stmt" count="13"/>
      <line num="161" type="stmt" count="13"/>
      <line num="162" type="stmt" count="13"/>
      <line num="163" type="stmt" count="2"/>
      <line num="164" type="stmt" count="2"/>
      <line num="165" type="stmt" count="2"/>
      <line num="166" type="stmt" count="2"/>
      <line num="167" type="stmt" count="2"/>
      <line num="168" type="stmt" count="2"/>
      <line num="169" type="stmt" count="2"/>
      <line num="170" type="stmt" count="2"/>
      <line num="173" type="stmt" count="2"/>
      <line num="176" type="stmt" count="11"/>
      <line num="183" type="method" name="normalizeConfigDataBeforeStore" visibility="private" complexity="1" crap="1" count="8"/>
      <line num="185" type="stmt" count="8"/>
      <line num="188" type="stmt" count="8"/>
      <line num="189" type="stmt" count="8"/>
      <line num="190" type="stmt" count="8"/>
      <line num="194" type="method" name="storeValidConfiguration" visibility="public" complexity="1" crap="1" count="7"/>
      <line num="200" type="stmt" count="7"/>
      <line num="201" type="stmt" count="7"/>
      <line num="205" type="method" name="alwaysStoreValidConfiguration" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="211" type="stmt" count="1"/>
      <line num="212" type="stmt" count="1"/>
      <line num="232" type="method" name="finalizeLoadedStatus" visibility="protected" complexity="1" crap="1" count="15"/>
      <line num="233" type="stmt" count="15"/>
      <line num="239" type="method" name="loadValidConfigurationUnconverted" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="240" type="stmt" count="0"/>
      <line num="241" type="stmt" count="0"/>
      <line num="242" type="stmt" count="0"/>
      <line num="248" type="method" name="loadValidConfigurationConvertedToLatest" visibility="public" complexity="2" crap="2" count="7"/>
      <line num="249" type="stmt" count="7"/>
      <line num="250" type="stmt" count="7"/>
      <line num="251" type="stmt" count="7"/>
      <line num="252" type="stmt" count="7"/>
      <line num="255" type="stmt" count="7"/>
      <line num="256" type="stmt" count="7"/>
      <line num="257" type="stmt" count="7"/>
      <line num="263" type="method" name="loadValidConfiguration" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="264" type="stmt" count="3"/>
      <line num="270" type="method" name="loadValidConfigurationUncachedUnconverted" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="271" type="stmt" count="0"/>
      <line num="272" type="stmt" count="0"/>
      <line num="273" type="stmt" count="0"/>
      <line num="279" type="method" name="loadValidConfigurationUncachedConvertedToLatest" visibility="public" complexity="1" crap="1" count="11"/>
      <line num="280" type="stmt" count="11"/>
      <line num="281" type="stmt" count="11"/>
      <line num="282" type="stmt" count="11"/>
      <line num="283" type="stmt" count="11"/>
      <line num="284" type="stmt" count="11"/>
      <line num="285" type="stmt" count="11"/>
      <line num="291" type="method" name="loadValidConfigurationUncached" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="292" type="stmt" count="1"/>
      <line num="303" type="method" name="processVersionedStoreStatus" visibility="private" complexity="2" crap="2" count="15"/>
      <line num="304" type="stmt" count="15"/>
      <line num="305" type="stmt" count="2"/>
      <line num="307" type="stmt" count="13"/>
      <line num="308" type="stmt" count="13"/>
      <line num="309" type="stmt" count="13"/>
      <line num="310" type="stmt" count="13"/>
      <line num="311" type="stmt" count="13"/>
      <line num="335" type="method" name="processAndConvertStoreStatus" visibility="private" complexity="7" crap="14.27" count="15"/>
      <line num="336" type="stmt" count="15"/>
      <line num="337" type="stmt" count="15"/>
      <line num="338" type="stmt" count="15"/>
      <line num="339" type="stmt" count="4"/>
      <line num="341" type="stmt" count="11"/>
      <line num="342" type="stmt" count="0"/>
      <line num="345" type="stmt" count="11"/>
      <line num="346" type="stmt" count="11"/>
      <line num="348" type="stmt" count="11"/>
      <line num="351" type="stmt" count="0"/>
      <line num="352" type="stmt" count="0"/>
      <line num="353" type="stmt" count="0"/>
      <line num="354" type="stmt" count="0"/>
      <line num="355" type="stmt" count="0"/>
      <line num="356" type="stmt" count="0"/>
      <line num="357" type="stmt" count="0"/>
      <line num="359" type="stmt" count="0"/>
      <line num="363" type="method" name="invalidateCache" visibility="public" complexity="1" crap="1" count="9"/>
      <line num="364" type="stmt" count="9"/>
      <line num="365" type="stmt" count="9"/>
      <metrics loc="368" ncloc="246" classes="1" methods="20" coveredmethods="16" conditionals="0" coveredconditionals="0" statements="119" coveredstatements="102" elements="139" coveredelements="118"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/IConfigurationProvider.php">
      <metrics loc="143" ncloc="47" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/IVersionedConfigurationProvider.php">
      <metrics loc="87" ncloc="33" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/MediaWikiConfigProvider.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Provider\MediaWikiConfigProvider" namespace="global">
        <metrics complexity="10" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="20" coveredstatements="10" elements="24" coveredelements="10"/>
      </class>
      <line num="14" type="method" name="getValidConfigOrDefaults" visibility="private" complexity="3" crap="6.09" count="2"/>
      <line num="15" type="stmt" count="2"/>
      <line num="16" type="stmt" count="2"/>
      <line num="17" type="stmt" count="0"/>
      <line num="18" type="stmt" count="0"/>
      <line num="19" type="stmt" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="22" type="stmt" count="0"/>
      <line num="23" type="stmt" count="0"/>
      <line num="24" type="stmt" count="0"/>
      <line num="27" type="stmt" count="2"/>
      <line num="33" type="method" name="get" visibility="public" complexity="2" crap="2.15" count="2"/>
      <line num="34" type="stmt" count="2"/>
      <line num="35" type="stmt" count="0"/>
      <line num="38" type="stmt" count="2"/>
      <line num="46" type="method" name="getSupportedConfigVariableNames" visibility="public" complexity="2" crap="2.15" count="2"/>
      <line num="47" type="stmt" count="2"/>
      <line num="48" type="stmt" count="0"/>
      <line num="51" type="stmt" count="2"/>
      <line num="57" type="method" name="has" visibility="public" complexity="3" crap="3.14" count="2"/>
      <line num="58" type="stmt" count="2"/>
      <line num="59" type="stmt" count="2"/>
      <line num="61" type="stmt" count="0"/>
      <line num="64" type="stmt" count="2"/>
      <metrics loc="67" ncloc="55" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="20" coveredstatements="10" elements="24" coveredelements="10"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Provider/ProviderServicesContainer.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Provider\ProviderServicesContainer" namespace="global">
        <metrics complexity="5" methods="5" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="5" coveredstatements="0" elements="10" coveredelements="0"/>
      </class>
      <line num="23" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="31" type="method" name="getConnectionProvider" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="35" type="method" name="getDomainEventDispatcher" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="39" type="method" name="getStatusFormatter" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="43" type="method" name="getSchemaMigrator" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <metrics loc="47" ncloc="36" classes="1" methods="5" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="5" coveredstatements="0" elements="10" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/ISchemaConverter.php">
      <metrics loc="36" ncloc="13" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/JsonSchema.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchema" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="110" ncloc="50" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/JsonSchemaBuilder.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchemaBuilder" namespace="global">
        <metrics complexity="18" methods="10" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="53" coveredstatements="46" elements="63" coveredelements="51"/>
      </class>
      <line num="19" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="6"/>
      <line num="23" type="stmt" count="6"/>
      <line num="33" type="method" name="getJsonSchemaReader" visibility="private" complexity="2" crap="2.86" count="6"/>
      <line num="34" type="stmt" count="6"/>
      <line num="35" type="stmt" count="6"/>
      <line num="38" type="stmt" count="0"/>
      <line num="39" type="stmt" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="46" type="method" name="getSchemaName" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="53" type="method" name="getVersionManager" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="54" type="stmt" count="0"/>
      <line num="60" type="method" name="getSchemaReader" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="61" type="stmt" count="0"/>
      <line num="69" type="method" name="getRootSchema" visibility="public" complexity="2" crap="2" count="5"/>
      <line num="73" type="stmt" count="5"/>
      <line num="74" type="stmt" count="5"/>
      <line num="75" type="stmt" count="3"/>
      <line num="79" type="stmt" count="5"/>
      <line num="80" type="stmt" count="5"/>
      <line num="81" type="stmt" count="5"/>
      <line num="82" type="stmt" count="5"/>
      <line num="83" type="stmt" count="5"/>
      <line num="84" type="stmt" count="5"/>
      <line num="85" type="stmt" count="5"/>
      <line num="86" type="stmt" count="5"/>
      <line num="88" type="stmt" count="5"/>
      <line num="89" type="stmt" count="5"/>
      <line num="90" type="stmt" count="5"/>
      <line num="91" type="stmt" count="5"/>
      <line num="92" type="stmt" count="5"/>
      <line num="93" type="stmt" count="5"/>
      <line num="94" type="stmt" count="5"/>
      <line num="96" type="stmt" count="5"/>
      <line num="97" type="stmt" count="5"/>
      <line num="103" type="method" name="getUiSchema" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="104" type="stmt" count="2"/>
      <line num="105" type="stmt" count="2"/>
      <line num="106" type="stmt" count="2"/>
      <line num="112" type="method" name="getRootProperties" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="113" type="stmt" count="3"/>
      <line num="125" type="method" name="getDefaultFromSchema" visibility="private" complexity="6" crap="6.05" count="1"/>
      <line num="126" type="stmt" count="1"/>
      <line num="127" type="stmt" count="0"/>
      <line num="129" type="stmt" count="1"/>
      <line num="132" type="stmt" count="1"/>
      <line num="134" type="stmt" count="1"/>
      <line num="138" type="stmt" count="1"/>
      <line num="139" type="stmt" count="1"/>
      <line num="140" type="stmt" count="1"/>
      <line num="144" type="stmt" count="1"/>
      <line num="150" type="method" name="getDefaultsMap" visibility="public" complexity="2" crap="2" count="1"/>
      <line num="154" type="stmt" count="1"/>
      <line num="155" type="stmt" count="1"/>
      <line num="156" type="stmt" count="1"/>
      <line num="157" type="stmt" count="1"/>
      <line num="158" type="stmt" count="1"/>
      <line num="159" type="stmt" count="1"/>
      <line num="160" type="stmt" count="1"/>
      <line num="161" type="stmt" count="1"/>
      <line num="162" type="stmt" count="1"/>
      <line num="164" type="stmt" count="1"/>
      <line num="165" type="stmt" count="1"/>
      <metrics loc="168" ncloc="120" classes="1" methods="10" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="53" coveredstatements="46" elements="63" coveredelements="51"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/JsonSchemaIterator.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchemaIterator" namespace="global">
        <metrics complexity="15" methods="8" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="35" coveredstatements="0" elements="43" coveredelements="0"/>
      </class>
      <line num="13" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="14" type="stmt" count="0"/>
      <line num="16" type="method" name="initialize" visibility="private" complexity="2" crap="6" count="0"/>
      <line num="17" type="stmt" count="0"/>
      <line num="19" type="stmt" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="21" type="stmt" count="0"/>
      <line num="22" type="stmt" count="0"/>
      <line num="27" type="method" name="current" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="30" type="stmt" count="0"/>
      <line num="33" type="method" name="next" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="35" type="stmt" count="0"/>
      <line num="38" type="method" name="key" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="39" type="stmt" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="43" type="method" name="valid" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="48" type="method" name="rewind" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="50" type="stmt" count="0"/>
      <line num="61" type="method" name="buildDataFromSchema" visibility="private" complexity="7" crap="56" count="0"/>
      <line num="62" type="stmt" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="74" type="stmt" count="0"/>
      <line num="75" type="stmt" count="0"/>
      <line num="78" type="stmt" count="0"/>
      <line num="79" type="stmt" count="0"/>
      <line num="80" type="stmt" count="0"/>
      <line num="81" type="stmt" count="0"/>
      <line num="82" type="stmt" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <metrics loc="92" ncloc="81" classes="1" methods="8" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="35" coveredstatements="0" elements="43" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/JsonSchemaReader.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchemaReader" namespace="global">
        <metrics complexity="24" methods="14" coveredmethods="10" conditionals="0" coveredconditionals="0" statements="30" coveredstatements="26" elements="44" coveredelements="36"/>
      </class>
      <line num="18" type="method" name="__construct" visibility="public" complexity="4" crap="4" count="23"/>
      <line num="34" type="stmt" count="23"/>
      <line num="37" type="method" name="getReflectionClass" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="38" type="stmt" count="2"/>
      <line num="41" type="method" name="getReflectionSchemaSource" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="42" type="stmt" count="2"/>
      <line num="45" type="method" name="isSchema" visibility="public" complexity="1" crap="1" count="19"/>
      <line num="46" type="stmt" count="19"/>
      <line num="49" type="method" name="assertIsSchema" visibility="public" complexity="2" crap="2" count="16"/>
      <line num="50" type="stmt" count="16"/>
      <line num="51" type="stmt" count="1"/>
      <line num="52" type="stmt" count="1"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="63" type="method" name="getConstantValue" visibility="private" complexity="2" crap="2" count="13"/>
      <line num="64" type="stmt" count="13"/>
      <line num="65" type="stmt" count="13"/>
      <line num="66" type="stmt" count="13"/>
      <line num="69" type="method" name="getRequiredTopLevelProperties" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="73" type="method" name="getJsonSchemaVersion" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="74" type="stmt" count="2"/>
      <line num="77" type="method" name="getVersion" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="78" type="stmt" count="4"/>
      <line num="81" type="method" name="getNextVersion" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="82" type="stmt" count="0"/>
      <line num="85" type="method" name="getPreviousVersion" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="89" type="method" name="getSchemaId" visibility="public" complexity="2" crap="2" count="2"/>
      <line num="90" type="stmt" count="2"/>
      <line num="91" type="stmt" count="2"/>
      <line num="92" type="stmt" count="2"/>
      <line num="94" type="stmt" count="2"/>
      <line num="97" type="method" name="getSchemaConverterId" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="98" type="stmt" count="0"/>
      <line num="104" type="method" name="getUiSchema" visibility="public" complexity="5" crap="5" count="7"/>
      <line num="105" type="stmt" count="7"/>
      <line num="106" type="stmt" count="7"/>
      <line num="107" type="stmt" count="2"/>
      <line num="111" type="stmt" count="5"/>
      <line num="112" type="stmt" count="3"/>
      <line num="113" type="stmt" count="3"/>
      <line num="114" type="stmt" count="3"/>
      <line num="117" type="stmt" count="2"/>
      <metrics loc="120" ncloc="103" classes="1" methods="14" coveredmethods="10" conditionals="0" coveredconditionals="0" statements="30" coveredstatements="26" elements="44" coveredelements="36"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/JsonSchemaVersionManager.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchemaVersionManager" namespace="global">
        <metrics complexity="4" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="13" coveredstatements="0" elements="16" coveredelements="0"/>
      </class>
      <line num="11" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="12" type="stmt" count="0"/>
      <line num="14" type="method" name="getClassPrefix" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="15" type="stmt" count="0"/>
      <line num="16" type="stmt" count="0"/>
      <line num="17" type="stmt" count="0"/>
      <line num="18" type="stmt" count="0"/>
      <line num="19" type="stmt" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="22" type="stmt" count="0"/>
      <line num="30" type="method" name="getVersionForSchema" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="31" type="stmt" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="35" type="stmt" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <metrics loc="40" ncloc="35" classes="1" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="13" coveredstatements="0" elements="16" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/SchemaBuilder.php">
      <metrics loc="80" ncloc="26" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/SchemaConverterFactory.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\SchemaConverterFactory" namespace="global">
        <metrics complexity="7" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="17" coveredstatements="0" elements="21" coveredelements="0"/>
      </class>
      <line num="15" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="16" type="stmt" count="0"/>
      <line num="21" type="method" name="getSchemaConverterFromClass" visibility="private" complexity="3" crap="12" count="0"/>
      <line num="22" type="stmt" count="0"/>
      <line num="23" type="stmt" count="0"/>
      <line num="26" type="stmt" count="0"/>
      <line num="27" type="stmt" count="0"/>
      <line num="28" type="stmt" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="30" type="stmt" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="47" type="method" name="getSchemaReader" visibility="private" complexity="2" crap="6" count="0"/>
      <line num="51" type="stmt" count="0"/>
      <line num="52" type="stmt" count="0"/>
      <line num="55" type="stmt" count="0"/>
      <line num="56" type="stmt" count="0"/>
      <line num="66" type="method" name="getConverterFromVersion" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <metrics loc="74" ncloc="53" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="17" coveredstatements="0" elements="21" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/SchemaMigrator.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\SchemaMigrator" namespace="global">
        <metrics complexity="13" methods="4" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="61" coveredstatements="32" elements="65" coveredelements="34"/>
      </class>
      <line num="21" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="22" type="stmt" count="4"/>
      <line num="35" type="method" name="loadAndConvertProviderDataToVersion" visibility="public" complexity="3" crap="3.04" count="1"/>
      <line num="39" type="stmt" count="1"/>
      <line num="40" type="stmt" count="1"/>
      <line num="41" type="stmt" count="0"/>
      <line num="44" type="stmt" count="1"/>
      <line num="45" type="stmt" count="1"/>
      <line num="46" type="stmt" count="0"/>
      <line num="49" type="stmt" count="1"/>
      <line num="50" type="stmt" count="1"/>
      <line num="51" type="stmt" count="1"/>
      <line num="52" type="stmt" count="1"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="60" type="method" name="convertDataToVersion" visibility="public" complexity="2" crap="2" count="4"/>
      <line num="67" type="stmt" count="4"/>
      <line num="68" type="stmt" count="4"/>
      <line num="69" type="stmt" count="4"/>
      <line num="70" type="stmt" count="4"/>
      <line num="71" type="stmt" count="4"/>
      <line num="72" type="stmt" count="4"/>
      <line num="73" type="stmt" count="3"/>
      <line num="74" type="stmt" count="3"/>
      <line num="87" type="method" name="doConvertDataToVersion" visibility="private" complexity="7" crap="22.07" count="4"/>
      <line num="93" type="stmt" count="4"/>
      <line num="94" type="stmt" count="4"/>
      <line num="96" type="stmt" count="1"/>
      <line num="99" type="stmt" count="3"/>
      <line num="100" type="stmt" count="3"/>
      <line num="101" type="stmt" count="2"/>
      <line num="103" type="stmt" count="1"/>
      <line num="106" type="stmt" count="1"/>
      <line num="109" type="stmt" count="2"/>
      <line num="110" type="stmt" count="2"/>
      <line num="111" type="stmt" count="2"/>
      <line num="112" type="stmt" count="2"/>
      <line num="113" type="stmt" count="2"/>
      <line num="116" type="stmt" count="0"/>
      <line num="118" type="stmt" count="0"/>
      <line num="119" type="stmt" count="0"/>
      <line num="120" type="stmt" count="0"/>
      <line num="121" type="stmt" count="0"/>
      <line num="122" type="stmt" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="131" type="stmt" count="0"/>
      <line num="132" type="stmt" count="0"/>
      <line num="133" type="stmt" count="0"/>
      <line num="134" type="stmt" count="0"/>
      <line num="135" type="stmt" count="0"/>
      <line num="136" type="stmt" count="0"/>
      <line num="137" type="stmt" count="0"/>
      <line num="138" type="stmt" count="0"/>
      <line num="139" type="stmt" count="0"/>
      <line num="141" type="stmt" count="0"/>
      <line num="144" type="stmt" count="0"/>
      <line num="145" type="stmt" count="0"/>
      <line num="146" type="stmt" count="0"/>
      <line num="147" type="stmt" count="0"/>
      <line num="148" type="stmt" count="0"/>
      <line num="149" type="stmt" count="0"/>
      <metrics loc="152" ncloc="120" classes="1" methods="4" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="61" coveredstatements="32" elements="65" coveredelements="34"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/SchemaReader.php">
      <metrics loc="93" ncloc="25" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/SchemaVersionManager.php">
      <metrics loc="21" ncloc="11" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schema/UISchema.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schema\UISchema" namespace="global">
        <metrics complexity="4" methods="1" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="11" coveredstatements="11" elements="12" coveredelements="12"/>
      </class>
      <line num="126" type="method" name="flattenElements" visibility="public" complexity="4" crap="4" count="5"/>
      <line num="127" type="stmt" count="5"/>
      <line num="128" type="stmt" count="5"/>
      <line num="129" type="stmt" count="5"/>
      <line num="130" type="stmt" count="4"/>
      <line num="131" type="stmt" count="3"/>
      <line num="133" type="stmt" count="3"/>
      <line num="134" type="stmt" count="3"/>
      <line num="135" type="stmt" count="2"/>
      <line num="138" type="stmt" count="5"/>
      <line num="139" type="stmt" count="5"/>
      <line num="140" type="stmt" count="5"/>
      <metrics loc="143" ncloc="46" classes="1" methods="1" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="11" coveredstatements="11" elements="12" coveredelements="12"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Schemas/MediaWiki/MediaWikiDefinitions.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Schemas\MediaWiki\MediaWikiDefinitions" namespace="global">
        <metrics complexity="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
      </class>
      <metrics loc="58" ncloc="57" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/ServiceWiring.php">
      <line num="26" type="stmt" count="0"/>
      <line num="27" type="stmt" count="0"/>
      <line num="28" type="stmt" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="30" type="stmt" count="0"/>
      <line num="31" type="stmt" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="35" type="stmt" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="38" type="stmt" count="0"/>
      <line num="39" type="stmt" count="0"/>
      <line num="40" type="stmt" count="0"/>
      <line num="41" type="stmt" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="43" type="stmt" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="46" type="stmt" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="48" type="stmt" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="50" type="stmt" count="0"/>
      <line num="51" type="stmt" count="0"/>
      <line num="52" type="stmt" count="0"/>
      <line num="53" type="stmt" count="0"/>
      <line num="54" type="stmt" count="0"/>
      <line num="55" type="stmt" count="0"/>
      <line num="56" type="stmt" count="0"/>
      <line num="57" type="stmt" count="0"/>
      <line num="58" type="stmt" count="0"/>
      <line num="59" type="stmt" count="0"/>
      <line num="60" type="stmt" count="0"/>
      <line num="61" type="stmt" count="0"/>
      <line num="62" type="stmt" count="0"/>
      <line num="63" type="stmt" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="74" type="stmt" count="0"/>
      <line num="75" type="stmt" count="0"/>
      <line num="76" type="stmt" count="0"/>
      <line num="77" type="stmt" count="0"/>
      <line num="78" type="stmt" count="0"/>
      <line num="79" type="stmt" count="0"/>
      <line num="80" type="stmt" count="0"/>
      <line num="81" type="stmt" count="0"/>
      <line num="82" type="stmt" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="87" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <line num="90" type="stmt" count="0"/>
      <line num="91" type="stmt" count="0"/>
      <line num="92" type="stmt" count="0"/>
      <line num="93" type="stmt" count="0"/>
      <line num="94" type="stmt" count="0"/>
      <line num="95" type="stmt" count="0"/>
      <line num="96" type="stmt" count="0"/>
      <line num="97" type="stmt" count="0"/>
      <line num="98" type="stmt" count="0"/>
      <line num="99" type="stmt" count="0"/>
      <line num="100" type="stmt" count="0"/>
      <line num="101" type="stmt" count="0"/>
      <line num="102" type="stmt" count="0"/>
      <line num="103" type="stmt" count="0"/>
      <line num="104" type="stmt" count="0"/>
      <line num="105" type="stmt" count="0"/>
      <line num="106" type="stmt" count="0"/>
      <line num="107" type="stmt" count="0"/>
      <line num="108" type="stmt" count="0"/>
      <line num="109" type="stmt" count="0"/>
      <line num="110" type="stmt" count="0"/>
      <line num="111" type="stmt" count="0"/>
      <line num="112" type="stmt" count="0"/>
      <line num="113" type="stmt" count="0"/>
      <line num="114" type="stmt" count="0"/>
      <line num="115" type="stmt" count="0"/>
      <line num="116" type="stmt" count="0"/>
      <line num="117" type="stmt" count="0"/>
      <line num="118" type="stmt" count="0"/>
      <line num="119" type="stmt" count="0"/>
      <line num="120" type="stmt" count="0"/>
      <line num="121" type="stmt" count="0"/>
      <line num="122" type="stmt" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="127" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="129" type="stmt" count="0"/>
      <line num="130" type="stmt" count="0"/>
      <line num="131" type="stmt" count="0"/>
      <line num="132" type="stmt" count="0"/>
      <line num="133" type="stmt" count="0"/>
      <line num="134" type="stmt" count="0"/>
      <line num="135" type="stmt" count="0"/>
      <line num="136" type="stmt" count="0"/>
      <line num="137" type="stmt" count="0"/>
      <line num="138" type="stmt" count="0"/>
      <line num="139" type="stmt" count="0"/>
      <line num="140" type="stmt" count="0"/>
      <line num="141" type="stmt" count="0"/>
      <line num="142" type="stmt" count="0"/>
      <line num="143" type="stmt" count="0"/>
      <line num="144" type="stmt" count="0"/>
      <line num="145" type="stmt" count="0"/>
      <line num="146" type="stmt" count="0"/>
      <line num="147" type="stmt" count="0"/>
      <line num="148" type="stmt" count="0"/>
      <line num="149" type="stmt" count="0"/>
      <line num="150" type="stmt" count="0"/>
      <line num="151" type="stmt" count="0"/>
      <line num="152" type="stmt" count="0"/>
      <line num="153" type="stmt" count="0"/>
      <line num="154" type="stmt" count="0"/>
      <line num="155" type="stmt" count="0"/>
      <line num="156" type="stmt" count="0"/>
      <line num="157" type="stmt" count="0"/>
      <line num="158" type="stmt" count="0"/>
      <metrics loc="159" ncloc="159" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="133" coveredstatements="0" elements="133" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Specials/SpecialCommunityConfiguration.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Specials\SpecialCommunityConfiguration" namespace="global">
        <metrics complexity="8" methods="5" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="30" coveredstatements="27" elements="35" coveredelements="31"/>
      </class>
      <line num="20" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="10"/>
      <line num="24" type="stmt" count="10"/>
      <line num="25" type="stmt" count="10"/>
      <line num="26" type="stmt" count="10"/>
      <line num="33" type="method" name="execute" visibility="public" complexity="4" crap="4" count="10"/>
      <line num="34" type="stmt" count="10"/>
      <line num="35" type="stmt" count="10"/>
      <line num="37" type="stmt" count="10"/>
      <line num="38" type="stmt" count="10"/>
      <line num="39" type="stmt" count="10"/>
      <line num="41" type="stmt" count="10"/>
      <line num="42" type="stmt" count="2"/>
      <line num="44" type="stmt" count="8"/>
      <line num="45" type="stmt" count="1"/>
      <line num="46" type="stmt" count="1"/>
      <line num="49" type="stmt" count="7"/>
      <line num="52" type="stmt" count="7"/>
      <line num="53" type="stmt" count="1"/>
      <line num="54" type="stmt" count="1"/>
      <line num="57" type="stmt" count="6"/>
      <line num="58" type="stmt" count="6"/>
      <line num="61" type="stmt" count="8"/>
      <line num="62" type="stmt" count="8"/>
      <line num="63" type="stmt" count="8"/>
      <line num="67" type="method" name="getSubpagesForPrefixSearch" visibility="protected" complexity="1" crap="2" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="81" type="method" name="showErrorMessage" visibility="private" complexity="1" crap="1" count="2"/>
      <line num="82" type="stmt" count="2"/>
      <line num="83" type="stmt" count="2"/>
      <line num="84" type="stmt" count="2"/>
      <line num="85" type="stmt" count="2"/>
      <line num="92" type="method" name="isProviderSupported" visibility="private" complexity="1" crap="1" count="8"/>
      <line num="93" type="stmt" count="8"/>
      <metrics loc="96" ncloc="78" classes="1" methods="5" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="30" coveredstatements="27" elements="35" coveredelements="31"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/AbstractJsonStore.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\AbstractJsonStore" namespace="global">
        <metrics complexity="8" methods="5" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="26" coveredstatements="26" elements="31" coveredelements="31"/>
      </class>
      <line num="18" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="25"/>
      <line num="19" type="stmt" count="25"/>
      <line num="39" type="method" name="invalidate" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="40" type="stmt" count="1"/>
      <line num="41" type="stmt" count="1"/>
      <line num="42" type="stmt" count="1"/>
      <line num="48" type="method" name="loadConfiguration" visibility="public" complexity="2" crap="2" count="11"/>
      <line num="51" type="stmt" count="11"/>
      <line num="52" type="stmt" count="11"/>
      <line num="53" type="stmt" count="11"/>
      <line num="54" type="stmt" count="11"/>
      <line num="55" type="stmt" count="11"/>
      <line num="57" type="stmt" count="10"/>
      <line num="61" type="stmt" count="9"/>
      <line num="67" type="stmt" count="1"/>
      <line num="73" type="method" name="loadConfigurationUncached" visibility="public" complexity="2" crap="2" count="9"/>
      <line num="74" type="stmt" count="9"/>
      <line num="75" type="stmt" count="9"/>
      <line num="79" type="stmt" count="8"/>
      <line num="85" type="stmt" count="1"/>
      <line num="88" type="method" name="loadFromWanCache" visibility="private" complexity="2" crap="2" count="11"/>
      <line num="89" type="stmt" count="11"/>
      <line num="90" type="stmt" count="11"/>
      <line num="91" type="stmt" count="11"/>
      <line num="92" type="stmt" count="11"/>
      <line num="93" type="stmt" count="11"/>
      <line num="94" type="stmt" count="10"/>
      <line num="96" type="stmt" count="1"/>
      <line num="98" type="stmt" count="10"/>
      <line num="99" type="stmt" count="11"/>
      <line num="100" type="stmt" count="11"/>
      <metrics loc="103" ncloc="66" classes="1" methods="5" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="26" coveredstatements="26" elements="31" coveredelements="31"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/AbstractStore.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\AbstractStore" namespace="global">
        <metrics complexity="6" methods="5" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="10" coveredstatements="9" elements="15" coveredelements="13"/>
      </class>
      <line num="17" type="method" name="loadVersionedConfiguration" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="18" type="stmt" count="3"/>
      <line num="26" type="method" name="loadVersionedConfigurationUncached" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="27" type="stmt" count="3"/>
      <line num="37" type="method" name="newVersionedConfigurationStatus" visibility="protected" complexity="2" crap="2" count="15"/>
      <line num="41" type="stmt" count="15"/>
      <line num="42" type="stmt" count="2"/>
      <line num="44" type="stmt" count="13"/>
      <line num="45" type="stmt" count="13"/>
      <line num="46" type="stmt" count="13"/>
      <line num="47" type="stmt" count="13"/>
      <line num="53" type="method" name="setOptions" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="54" type="stmt" count="0"/>
      <line num="66" type="method" name="getOption" visibility="protected" complexity="1" crap="1" count="1"/>
      <line num="67" type="stmt" count="1"/>
      <metrics loc="70" ncloc="40" classes="1" methods="5" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="10" coveredstatements="9" elements="15" coveredelements="13"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/IConfigurationStore.php">
      <metrics loc="168" ncloc="45" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/StaticStore.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\StaticStore" namespace="global">
        <metrics complexity="11" methods="10" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="12" coveredstatements="7" elements="22" coveredelements="12"/>
      </class>
      <line num="18" type="method" name="__construct" visibility="public" complexity="2" crap="2.15" count="4"/>
      <line num="19" type="stmt" count="4"/>
      <line num="20" type="stmt" count="0"/>
      <line num="22" type="stmt" count="4"/>
      <line num="25" type="method" name="getVersion" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="26" type="stmt" count="2"/>
      <line num="32" type="method" name="loadConfigurationUncached" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="33" type="stmt" count="3"/>
      <line num="39" type="method" name="loadConfiguration" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="40" type="stmt" count="2"/>
      <line num="47" type="method" name="alwaysStoreConfiguration" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="53" type="stmt" count="0"/>
      <line num="60" type="method" name="storeConfiguration" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="66" type="stmt" count="1"/>
      <line num="72" type="method" name="invalidate" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="78" type="method" name="getInfoPageLinkTarget" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="79" type="stmt" count="1"/>
      <line num="85" type="method" name="probablyCanEdit" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="92" type="method" name="definitelyCanEdit" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="93" type="stmt" count="0"/>
      <metrics loc="96" ncloc="67" classes="1" methods="10" coveredmethods="5" conditionals="0" coveredconditionals="0" statements="12" coveredstatements="7" elements="22" coveredelements="12"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/StoreFactory.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\StoreFactory" namespace="global">
        <metrics complexity="5" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="19" coveredstatements="19" elements="22" coveredelements="22"/>
      </class>
      <line num="29" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="34" type="stmt" count="4"/>
      <line num="35" type="stmt" count="4"/>
      <line num="36" type="stmt" count="4"/>
      <line num="37" type="stmt" count="4"/>
      <line num="38" type="stmt" count="4"/>
      <line num="41" type="method" name="newStore" visibility="public" complexity="3" crap="3" count="3"/>
      <line num="47" type="stmt" count="3"/>
      <line num="48" type="stmt" count="1"/>
      <line num="50" type="stmt" count="2"/>
      <line num="51" type="stmt" count="2"/>
      <line num="52" type="stmt" count="2"/>
      <line num="53" type="stmt" count="2"/>
      <line num="54" type="stmt" count="2"/>
      <line num="55" type="stmt" count="2"/>
      <line num="56" type="stmt" count="2"/>
      <line num="57" type="stmt" count="2"/>
      <line num="58" type="stmt" count="2"/>
      <line num="59" type="stmt" count="2"/>
      <line num="61" type="stmt" count="2"/>
      <line num="69" type="method" name="getSupportedKeys" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="70" type="stmt" count="1"/>
      <metrics loc="73" ncloc="59" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="19" coveredstatements="19" elements="22" coveredelements="22"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/VersionedConfiguration.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\VersionedConfiguration" namespace="global">
        <metrics complexity="3" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="3" elements="6" coveredelements="6"/>
      </class>
      <line num="22" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="13"/>
      <line num="26" type="stmt" count="13"/>
      <line num="31" type="method" name="getData" visibility="public" complexity="1" crap="1" count="10"/>
      <line num="32" type="stmt" count="10"/>
      <line num="35" type="method" name="getVersion" visibility="public" complexity="1" crap="1" count="13"/>
      <line num="36" type="stmt" count="13"/>
      <metrics loc="39" ncloc="21" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="3" elements="6" coveredelements="6"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/WikiPage/Writer.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\WikiPage\Writer" namespace="global">
        <metrics complexity="11" methods="3" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="49" coveredstatements="46" elements="52" coveredelements="47"/>
      </class>
      <line num="26" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="32" type="stmt" count="3"/>
      <line num="47" type="method" name="save" visibility="public" complexity="7" crap="7" count="3"/>
      <line num="56" type="stmt" count="3"/>
      <line num="57" type="stmt" count="3"/>
      <line num="59" type="stmt" count="3"/>
      <line num="64" type="stmt" count="3"/>
      <line num="65" type="stmt" count="3"/>
      <line num="66" type="stmt" count="3"/>
      <line num="67" type="stmt" count="3"/>
      <line num="68" type="stmt" count="3"/>
      <line num="69" type="stmt" count="3"/>
      <line num="70" type="stmt" count="3"/>
      <line num="71" type="stmt" count="3"/>
      <line num="74" type="stmt" count="3"/>
      <line num="75" type="stmt" count="0"/>
      <line num="78" type="stmt" count="3"/>
      <line num="79" type="stmt" count="3"/>
      <line num="80" type="stmt" count="1"/>
      <line num="81" type="stmt" count="2"/>
      <line num="82" type="stmt" count="2"/>
      <line num="84" type="stmt" count="3"/>
      <line num="86" type="stmt" count="3"/>
      <line num="87" type="stmt" count="1"/>
      <line num="90" type="stmt" count="3"/>
      <line num="91" type="stmt" count="3"/>
      <line num="92" type="stmt" count="3"/>
      <line num="93" type="stmt" count="3"/>
      <line num="94" type="stmt" count="3"/>
      <line num="96" type="stmt" count="3"/>
      <line num="109" type="method" name="runEditFilterMergedContentHook" visibility="private" complexity="3" crap="3.01" count="3"/>
      <line num="116" type="stmt" count="3"/>
      <line num="122" type="stmt" count="3"/>
      <line num="123" type="stmt" count="3"/>
      <line num="124" type="stmt" count="3"/>
      <line num="125" type="stmt" count="3"/>
      <line num="129" type="stmt" count="3"/>
      <line num="130" type="stmt" count="3"/>
      <line num="131" type="stmt" count="3"/>
      <line num="133" type="stmt" count="3"/>
      <line num="134" type="stmt" count="3"/>
      <line num="135" type="stmt" count="3"/>
      <line num="136" type="stmt" count="3"/>
      <line num="137" type="stmt" count="3"/>
      <line num="138" type="stmt" count="3"/>
      <line num="139" type="stmt" count="3"/>
      <line num="140" type="stmt" count="3"/>
      <line num="141" type="stmt" count="3"/>
      <line num="142" type="stmt" count="3"/>
      <line num="143" type="stmt" count="0"/>
      <line num="144" type="stmt" count="0"/>
      <line num="147" type="stmt" count="3"/>
      <metrics loc="150" ncloc="117" classes="1" methods="3" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="49" coveredstatements="46" elements="52" coveredelements="47"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Store/WikiPageStore.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Store\WikiPageStore" namespace="global">
        <metrics complexity="37" methods="18" coveredmethods="13" conditionals="0" coveredconditionals="0" statements="85" coveredstatements="80" elements="103" coveredelements="93"/>
      </class>
      <line num="41" type="method" name="__construct" visibility="public" complexity="3" crap="3" count="38"/>
      <line num="49" type="stmt" count="38"/>
      <line num="51" type="stmt" count="38"/>
      <line num="52" type="stmt" count="13"/>
      <line num="53" type="stmt" count="13"/>
      <line num="55" type="stmt" count="38"/>
      <line num="61" type="method" name="getConfigurationTitle" visibility="public" complexity="3" crap="3" count="34"/>
      <line num="62" type="stmt" count="34"/>
      <line num="63" type="stmt" count="34"/>
      <line num="65" type="stmt" count="34"/>
      <line num="71" type="method" name="getInfoPageLinkTarget" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="75" type="method" name="makeCacheKey" visibility="protected" complexity="1" crap="1" count="24"/>
      <line num="76" type="stmt" count="24"/>
      <line num="77" type="stmt" count="24"/>
      <line num="78" type="stmt" count="24"/>
      <line num="79" type="stmt" count="24"/>
      <line num="85" type="method" name="fetchJsonBlob" visibility="protected" complexity="5" crap="5" count="31"/>
      <line num="86" type="stmt" count="31"/>
      <line num="89" type="stmt" count="1"/>
      <line num="92" type="stmt" count="30"/>
      <line num="94" type="stmt" count="30"/>
      <line num="95" type="stmt" count="1"/>
      <line num="98" type="stmt" count="29"/>
      <line num="99" type="stmt" count="29"/>
      <line num="103" type="stmt" count="1"/>
      <line num="106" type="stmt" count="28"/>
      <line num="107" type="stmt" count="28"/>
      <line num="108" type="stmt" count="3"/>
      <line num="109" type="stmt" count="3"/>
      <line num="110" type="stmt" count="3"/>
      <line num="116" type="stmt" count="25"/>
      <line num="122" type="method" name="loadConfiguration" visibility="public" complexity="1" crap="1" count="11"/>
      <line num="123" type="stmt" count="11"/>
      <line num="129" type="method" name="loadConfigurationUncached" visibility="public" complexity="1" crap="1" count="3"/>
      <line num="130" type="stmt" count="3"/>
      <line num="136" type="method" name="loadVersionedConfiguration" visibility="public" complexity="1" crap="1" count="12"/>
      <line num="137" type="stmt" count="12"/>
      <line num="143" type="method" name="loadVersionedConfigurationUncached" visibility="public" complexity="1" crap="1" count="9"/>
      <line num="144" type="stmt" count="9"/>
      <line num="154" type="method" name="splitVersionFromStatus" visibility="private" complexity="3" crap="3" count="18"/>
      <line num="155" type="stmt" count="18"/>
      <line num="156" type="stmt" count="2"/>
      <line num="158" type="stmt" count="16"/>
      <line num="159" type="stmt" count="16"/>
      <line num="160" type="stmt" count="3"/>
      <line num="162" type="stmt" count="13"/>
      <line num="163" type="stmt" count="13"/>
      <line num="164" type="stmt" count="13"/>
      <line num="165" type="stmt" count="13"/>
      <line num="175" type="method" name="isVersionFieldValue" visibility="public" complexity="2" crap="2" count="25"/>
      <line num="176" type="stmt" count="25"/>
      <line num="195" type="method" name="readVersionField" visibility="public" complexity="4" crap="4" count="21"/>
      <line num="196" type="stmt" count="21"/>
      <line num="197" type="stmt" count="21"/>
      <line num="200" type="stmt" count="12"/>
      <line num="203" type="stmt" count="9"/>
      <line num="204" type="stmt" count="3"/>
      <line num="205" type="stmt" count="3"/>
      <line num="209" type="stmt" count="3"/>
      <line num="210" type="stmt" count="3"/>
      <line num="213" type="stmt" count="6"/>
      <line num="223" type="method" name="removeVersionDataFromStatus" visibility="public" complexity="2" crap="2" count="26"/>
      <line num="224" type="stmt" count="26"/>
      <line num="225" type="stmt" count="26"/>
      <line num="226" type="stmt" count="25"/>
      <line num="227" type="stmt" count="25"/>
      <line num="229" type="stmt" count="26"/>
      <line num="235" type="method" name="getVersion" visibility="public" complexity="2" crap="2.06" count="3"/>
      <line num="236" type="stmt" count="3"/>
      <line num="237" type="stmt" count="3"/>
      <line num="238" type="stmt" count="0"/>
      <line num="240" type="stmt" count="3"/>
      <line num="246" type="method" name="alwaysStoreConfiguration" visibility="public" complexity="3" crap="3" count="6"/>
      <line num="252" type="stmt" count="6"/>
      <line num="253" type="stmt" count="3"/>
      <line num="257" type="stmt" count="3"/>
      <line num="258" type="stmt" count="3"/>
      <line num="259" type="stmt" count="3"/>
      <line num="260" type="stmt" count="3"/>
      <line num="262" type="stmt" count="0"/>
      <line num="265" type="stmt" count="3"/>
      <line num="266" type="stmt" count="3"/>
      <line num="267" type="stmt" count="3"/>
      <line num="268" type="stmt" count="3"/>
      <line num="269" type="stmt" count="3"/>
      <line num="270" type="stmt" count="3"/>
      <line num="271" type="stmt" count="3"/>
      <line num="272" type="stmt" count="3"/>
      <line num="273" type="stmt" count="3"/>
      <line num="274" type="stmt" count="3"/>
      <line num="275" type="stmt" count="3"/>
      <line num="276" type="stmt" count="3"/>
      <line num="277" type="stmt" count="3"/>
      <line num="283" type="method" name="storeConfiguration" visibility="public" complexity="2" crap="2" count="3"/>
      <line num="289" type="stmt" count="3"/>
      <line num="290" type="stmt" count="3"/>
      <line num="291" type="stmt" count="1"/>
      <line num="293" type="stmt" count="2"/>
      <line num="299" type="method" name="probablyCanEdit" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="300" type="stmt" count="0"/>
      <line num="306" type="method" name="definitelyCanEdit" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="307" type="stmt" count="0"/>
      <metrics loc="310" ncloc="217" classes="1" methods="18" coveredmethods="13" conditionals="0" coveredconditionals="0" statements="85" coveredstatements="80" elements="103" coveredelements="93"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Utils.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Utils" namespace="global">
        <metrics complexity="1" methods="1" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="4" elements="5" coveredelements="5"/>
      </class>
      <line num="19" type="method" name="getMergedAttribute" visibility="public" complexity="1" crap="1" count="4"/>
      <line num="24" type="stmt" count="4"/>
      <line num="27" type="stmt" count="4"/>
      <line num="28" type="stmt" count="4"/>
      <line num="29" type="stmt" count="4"/>
      <metrics loc="32" ncloc="22" classes="1" methods="1" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="4" elements="5" coveredelements="5"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Validation/IValidator.php">
      <metrics loc="91" ncloc="23" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Validation/JsonSchemaValidator.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Validation\JsonSchemaValidator" namespace="global">
        <metrics complexity="16" methods="8" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="48" coveredstatements="19" elements="56" coveredelements="23"/>
      </class>
      <line num="28" type="method" name="__construct" visibility="public" complexity="3" crap="3" count="3"/>
      <line num="40" type="stmt" count="3"/>
      <line num="41" type="stmt" count="3"/>
      <line num="42" type="stmt" count="3"/>
      <line num="48" type="method" name="areSchemasSupported" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="55" type="method" name="getSchemaBuilder" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="56" type="stmt" count="1"/>
      <line num="62" type="method" name="validateStrictly" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="63" type="stmt" count="1"/>
      <line num="69" type="method" name="validatePermissively" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="70" type="stmt" count="0"/>
      <line num="80" type="method" name="validate" visibility="private" complexity="7" crap="21.52" count="1"/>
      <line num="81" type="stmt" count="1"/>
      <line num="82" type="stmt" count="1"/>
      <line num="83" type="stmt" count="1"/>
      <line num="84" type="stmt" count="1"/>
      <line num="85" type="stmt" count="1"/>
      <line num="86" type="stmt" count="1"/>
      <line num="89" type="stmt" count="1"/>
      <line num="90" type="stmt" count="1"/>
      <line num="91" type="stmt" count="1"/>
      <line num="92" type="stmt" count="1"/>
      <line num="93" type="stmt" count="1"/>
      <line num="94" type="stmt" count="1"/>
      <line num="95" type="stmt" count="1"/>
      <line num="97" type="stmt" count="0"/>
      <line num="98" type="stmt" count="0"/>
      <line num="99" type="stmt" count="0"/>
      <line num="100" type="stmt" count="0"/>
      <line num="101" type="stmt" count="0"/>
      <line num="102" type="stmt" count="0"/>
      <line num="103" type="stmt" count="0"/>
      <line num="104" type="stmt" count="0"/>
      <line num="106" type="stmt" count="0"/>
      <line num="107" type="stmt" count="0"/>
      <line num="110" type="stmt" count="0"/>
      <line num="111" type="stmt" count="0"/>
      <line num="112" type="stmt" count="0"/>
      <line num="113" type="stmt" count="0"/>
      <line num="114" type="stmt" count="0"/>
      <line num="115" type="stmt" count="0"/>
      <line num="116" type="stmt" count="0"/>
      <line num="117" type="stmt" count="0"/>
      <line num="119" type="stmt" count="0"/>
      <line num="120" type="stmt" count="0"/>
      <line num="121" type="stmt" count="0"/>
      <line num="122" type="stmt" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="129" type="stmt" count="0"/>
      <line num="135" type="method" name="getSchemaVersion" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="136" type="stmt" count="1"/>
      <line num="139" type="method" name="getSchemaIterator" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="140" type="stmt" count="0"/>
      <metrics loc="143" ncloc="113" classes="1" methods="8" coveredmethods="4" conditionals="0" coveredconditionals="0" statements="48" coveredstatements="19" elements="56" coveredelements="23"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Validation/NoopValidator.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Validation\NoopValidator" namespace="global">
        <metrics complexity="6" methods="6" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="6" coveredstatements="0" elements="12" coveredelements="0"/>
      </class>
      <line num="19" type="method" name="validateStrictly" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="20" type="stmt" count="0"/>
      <line num="26" type="method" name="validatePermissively" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="27" type="stmt" count="0"/>
      <line num="33" type="method" name="areSchemasSupported" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="41" type="method" name="getSchemaBuilder" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="49" type="method" name="getSchemaVersion" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="50" type="stmt" count="0"/>
      <line num="57" type="method" name="getSchemaIterator" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="58" type="stmt" count="0"/>
      <metrics loc="61" ncloc="35" classes="1" methods="6" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="6" coveredstatements="0" elements="12" coveredelements="0"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Validation/ValidationStatus.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Validation\ValidationStatus" namespace="global">
        <metrics complexity="4" methods="4" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="16" coveredstatements="1" elements="20" coveredelements="2"/>
      </class>
      <line num="17" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="1"/>
      <line num="18" type="stmt" count="1"/>
      <line num="20" type="method" name="addWarning" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="26" type="stmt" count="0"/>
      <line num="27" type="stmt" count="0"/>
      <line num="28" type="stmt" count="0"/>
      <line num="29" type="stmt" count="0"/>
      <line num="30" type="stmt" count="0"/>
      <line num="31" type="stmt" count="0"/>
      <line num="32" type="stmt" count="0"/>
      <line num="35" type="method" name="addFatal" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="41" type="stmt" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="43" type="stmt" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <line num="45" type="stmt" count="0"/>
      <line num="46" type="stmt" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="53" type="method" name="getValidationErrorsData" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="54" type="stmt" count="0"/>
      <metrics loc="57" ncloc="47" classes="1" methods="4" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="16" coveredstatements="1" elements="20" coveredelements="2"/>
    </file>
    <file name="/workspace/src/extensions/CommunityConfiguration/src/Validation/ValidatorFactory.php">
      <class name="MediaWiki\Extension\CommunityConfiguration\Validation\ValidatorFactory" namespace="global">
        <metrics complexity="5" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="15" coveredstatements="15" elements="18" coveredelements="18"/>
      </class>
      <line num="43" type="method" name="__construct" visibility="public" complexity="1" crap="1" count="5"/>
      <line num="47" type="stmt" count="5"/>
      <line num="48" type="stmt" count="5"/>
      <line num="59" type="method" name="newValidator" visibility="public" complexity="3" crap="3" count="3"/>
      <line num="60" type="stmt" count="3"/>
      <line num="61" type="stmt" count="2"/>
      <line num="63" type="stmt" count="1"/>
      <line num="64" type="stmt" count="1"/>
      <line num="65" type="stmt" count="1"/>
      <line num="66" type="stmt" count="1"/>
      <line num="67" type="stmt" count="1"/>
      <line num="68" type="stmt" count="1"/>
      <line num="69" type="stmt" count="1"/>
      <line num="70" type="stmt" count="1"/>
      <line num="71" type="stmt" count="1"/>
      <line num="74" type="stmt" count="1"/>
      <line num="82" type="method" name="getSupportedKeys" visibility="public" complexity="1" crap="1" count="2"/>
      <line num="83" type="stmt" count="2"/>
      <metrics loc="86" ncloc="48" classes="1" methods="3" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="15" coveredstatements="15" elements="18" coveredelements="18"/>
    </file>
    <metrics files="68" loc="6554" ncloc="4699" classes="48" methods="278" coveredmethods="159" conditionals="0" coveredconditionals="0" statements="1880" coveredstatements="1345" elements="2158" coveredelements="1504"/>
  </project>
</coverage>
