blob: 5fec5559425aae0313c46f3b497a5e51a8334224 [file] [log] [blame]
<?xml version="1.0"?>
<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">
<coverage line-rate="0.908256880733945" branch-rate="0.9" lines-covered="297" lines-valid="327" branches-covered="63" branches-valid="70" complexity="1.49" version="1.9.4.1" timestamp="1393370658744">
<sources>
<source>--source</source>
<source>/Volumes/Slow-HDD/dev/source/shiro-1.2.x/target/checkout/support/guice/src/main/java</source>
</sources>
<packages>
<package name="org.apache.shiro.guice" line-rate="0.9191176470588235" branch-rate="0.9166666666666666" complexity="1.675">
<classes>
<class name="org.apache.shiro.guice.BeanTypeListener" filename="org/apache/shiro/guice/BeanTypeListener.java" line-rate="1.0" branch-rate="0.8636363636363636" complexity="2.9">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="44" hits="1" branch="false"/>
<line number="45" hits="1" branch="false"/>
<line number="47" hits="1" branch="false"/>
<line number="48" hits="1" branch="false"/>
<line number="50" hits="1" branch="false"/>
<line number="52" hits="1" branch="false"/>
<line number="55" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="133" hits="12" branch="false"/>
</lines>
</method>
<method name="access$000" signature="(Lcom/google/inject/Injector;Lcom/google/inject/Key;)Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="43" hits="170" branch="false"/>
</lines>
</method>
<method name="beanTypeMapBinding" signature="(Lcom/google/inject/Binder;)Lcom/google/inject/multibindings/MapBinder;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="130" hits="16" branch="false"/>
</lines>
</method>
<method name="bindBeanType" signature="(Lcom/google/inject/Binder;Lcom/google/inject/TypeLiteral;Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="126" hits="5" branch="false"/>
<line number="127" hits="5" branch="false"/>
</lines>
</method>
<method name="createDependencyKey" signature="(Ljava/beans/PropertyDescriptor;Ljava/lang/reflect/Type;)Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="105" hits="118" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="106" hits="28" branch="false"/>
<line number="108" hits="90" branch="false"/>
</lines>
</method>
<method name="ensureBeanTypeMapExists" signature="(Lcom/google/inject/Binder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="122" hits="11" branch="false"/>
<line number="123" hits="11" branch="false"/>
</lines>
</method>
<method name="getBeanTypeMap" signature="(Lcom/google/inject/Injector;)Ljava/util/Map;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="101" hits="158" branch="false"/>
</lines>
</method>
<method name="getMappedKey" signature="(Lcom/google/inject/Injector;Lcom/google/inject/Key;)Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="91" hits="158" branch="false"/>
<line number="92" hits="158" branch="true" condition-coverage="100% (4/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="93" hits="4" branch="false"/>
<line number="95" hits="154" branch="false"/>
</lines>
</method>
<method name="hear" signature="(Lcom/google/inject/TypeLiteral;Lcom/google/inject/spi/TypeEncounter;)V" line-rate="1.0" branch-rate="0.8333333333333334">
<lines>
<line number="58" hits="14" branch="false"/>
<line number="59" hits="14" branch="false"/>
<line number="60" hits="14" branch="false"/>
<line number="61" hits="150" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="62" hits="136" branch="true" condition-coverage="75% (3/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="63" hits="118" branch="false"/>
<line number="64" hits="118" branch="false"/>
<line number="67" hits="14" branch="false"/>
<line number="88" hits="14" branch="false"/>
</lines>
</method>
<method name="requiresName" signature="(Ljava/lang/reflect/Type;)Z" line-rate="1.0" branch-rate="0.8">
<lines>
<line number="113" hits="118" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="114" hits="109" branch="false"/>
<line number="115" hits="109" branch="true" condition-coverage="75% (6/8)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
<condition number="2" type="jump" coverage="50%"/>
<condition number="3" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="117" hits="9" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="43" hits="170" branch="false"/>
<line number="44" hits="1" branch="false"/>
<line number="45" hits="1" branch="false"/>
<line number="47" hits="1" branch="false"/>
<line number="48" hits="1" branch="false"/>
<line number="50" hits="1" branch="false"/>
<line number="52" hits="1" branch="false"/>
<line number="55" hits="1" branch="false"/>
<line number="58" hits="14" branch="false"/>
<line number="59" hits="14" branch="false"/>
<line number="60" hits="14" branch="false"/>
<line number="61" hits="150" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="62" hits="136" branch="true" condition-coverage="75% (3/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="63" hits="118" branch="false"/>
<line number="64" hits="118" branch="false"/>
<line number="67" hits="14" branch="false"/>
<line number="88" hits="14" branch="false"/>
<line number="91" hits="158" branch="false"/>
<line number="92" hits="158" branch="true" condition-coverage="100% (4/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="93" hits="4" branch="false"/>
<line number="95" hits="154" branch="false"/>
<line number="101" hits="158" branch="false"/>
<line number="105" hits="118" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="106" hits="28" branch="false"/>
<line number="108" hits="90" branch="false"/>
<line number="113" hits="118" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="114" hits="109" branch="false"/>
<line number="115" hits="109" branch="true" condition-coverage="75% (6/8)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
<condition number="2" type="jump" coverage="50%"/>
<condition number="3" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="117" hits="9" branch="false"/>
<line number="122" hits="11" branch="false"/>
<line number="123" hits="11" branch="false"/>
<line number="126" hits="5" branch="false"/>
<line number="127" hits="5" branch="false"/>
<line number="130" hits="16" branch="false"/>
<line number="133" hits="12" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.BeanTypeListener$1" filename="org/apache/shiro/guice/BeanTypeListener.java" line-rate="0.6666666666666666" branch-rate="1.0" complexity="2.9">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/BeanTypeListener;Ljava/util/Map;Lcom/google/inject/Provider;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="67" hits="14" branch="false"/>
</lines>
</method>
<method name="injectMembers" signature="(Ljava/lang/Object;)V" line-rate="0.6363636363636364" branch-rate="1.0">
<lines>
<line number="69" hits="18" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="71" hits="158" branch="false"/>
<line number="73" hits="158" branch="false"/>
<line number="74" hits="32" branch="false"/>
<line number="76" hits="126" branch="false"/>
<line number="79" hits="0" branch="false"/>
<line number="80" hits="0" branch="false"/>
<line number="81" hits="0" branch="false"/>
<line number="82" hits="0" branch="false"/>
<line number="83" hits="158" branch="false"/>
<line number="86" hits="18" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="67" hits="14" branch="false"/>
<line number="69" hits="18" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="71" hits="158" branch="false"/>
<line number="73" hits="158" branch="false"/>
<line number="74" hits="32" branch="false"/>
<line number="76" hits="126" branch="false"/>
<line number="79" hits="0" branch="false"/>
<line number="80" hits="0" branch="false"/>
<line number="81" hits="0" branch="false"/>
<line number="82" hits="0" branch="false"/>
<line number="83" hits="158" branch="false"/>
<line number="86" hits="18" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.BeanTypeListener$BeanTypeKey" filename="org/apache/shiro/guice/BeanTypeListener.java" line-rate="1.0" branch-rate="1.0" complexity="2.9">
<methods>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="136" hits="16" branch="false"/>
<line number="137" hits="16" branch="false"/>
<line number="138" hits="16" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;Lorg/apache/shiro/guice/BeanTypeListener$1;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="133" hits="16" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="133" hits="16" branch="false"/>
<line number="136" hits="16" branch="false"/>
<line number="137" hits="16" branch="false"/>
<line number="138" hits="16" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.DestroyableInjectionListener" filename="org/apache/shiro/guice/DestroyableInjectionListener.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="33" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/DestroyableInjectionListener$DestroyableRegistry;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="37" hits="14" branch="false"/>
<line number="38" hits="14" branch="false"/>
<line number="39" hits="14" branch="false"/>
</lines>
</method>
<method name="afterInjection" signature="(Ljava/lang/Object;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="32" hits="20" branch="false"/>
</lines>
</method>
<method name="afterInjection" signature="(Lorg/apache/shiro/util/Destroyable;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="42" hits="21" branch="false"/>
<line number="43" hits="21" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="32" hits="20" branch="false"/>
<line number="33" hits="1" branch="false"/>
<line number="37" hits="14" branch="false"/>
<line number="38" hits="14" branch="false"/>
<line number="39" hits="14" branch="false"/>
<line number="42" hits="21" branch="false"/>
<line number="43" hits="21" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.DestroyableInjectionListener$DestroyableRegistry" filename="org/apache/shiro/guice/DestroyableInjectionListener.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
</methods>
<lines>
</lines>
</class>
<class name="org.apache.shiro.guice.GuiceEnvironment" filename="org/apache/shiro/guice/GuiceEnvironment.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/mgt/SecurityManager;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="29" hits="7" branch="false"/>
<line number="30" hits="7" branch="false"/>
<line number="31" hits="7" branch="false"/>
</lines>
</method>
<method name="getSecurityManager" signature="()Lorg/apache/shiro/mgt/SecurityManager;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="29" hits="7" branch="false"/>
<line number="30" hits="7" branch="false"/>
<line number="31" hits="7" branch="false"/>
<line number="34" hits="1" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.InitializableInjectionListener" filename="org/apache/shiro/guice/InitializableInjectionListener.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="33" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
</lines>
</method>
<method name="afterInjection" signature="(Ljava/lang/Object;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="32" hits="2" branch="false"/>
</lines>
</method>
<method name="afterInjection" signature="(Lorg/apache/shiro/util/Initializable;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="1" branch="false"/>
<line number="37" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="32" hits="2" branch="false"/>
<line number="33" hits="1" branch="false"/>
<line number="36" hits="1" branch="false"/>
<line number="37" hits="1" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.LifecycleTypeListener" filename="org/apache/shiro/guice/LifecycleTypeListener.java" line-rate="1.0" branch-rate="1.0" complexity="1.6666666666666667">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="31" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/DestroyableInjectionListener$DestroyableRegistry;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="13" branch="false"/>
<line number="35" hits="13" branch="false"/>
<line number="36" hits="13" branch="false"/>
</lines>
</method>
<method name="castListener" signature="(Lcom/google/inject/spi/InjectionListener;)Lcom/google/inject/spi/InjectionListener;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="49" hits="14" branch="false"/>
</lines>
</method>
<method name="hear" signature="(Lcom/google/inject/TypeLiteral;Lcom/google/inject/spi/TypeEncounter;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="39" hits="14" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="40" hits="1" branch="false"/>
<line number="42" hits="14" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="43" hits="13" branch="false"/>
<line number="45" hits="14" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="31" hits="1" branch="false"/>
<line number="34" hits="13" branch="false"/>
<line number="35" hits="13" branch="false"/>
<line number="36" hits="13" branch="false"/>
<line number="39" hits="14" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="40" hits="1" branch="false"/>
<line number="42" hits="14" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="43" hits="13" branch="false"/>
<line number="45" hits="14" branch="false"/>
<line number="49" hits="14" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroMatchers" filename="org/apache/shiro/guice/ShiroMatchers.java" line-rate="0.6666666666666666" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="26" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="()V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="25" hits="0" branch="false"/>
</lines>
</method>
<method name="typeLiteral" signature="(Lcom/google/inject/matcher/Matcher;)Lcom/google/inject/matcher/Matcher;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="4" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="25" hits="0" branch="false"/>
<line number="26" hits="1" branch="false"/>
<line number="34" hits="4" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroMatchers$1" filename="org/apache/shiro/guice/ShiroMatchers.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
</lines>
</method>
<method name="matches" signature="(Ljava/lang/Class;)Z" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="29" hits="121" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
</lines>
</method>
<method name="matches" signature="(Ljava/lang/Object;)Z" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="26" hits="122" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="26" hits="122" branch="false"/>
<line number="29" hits="121" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroMatchers$2" filename="org/apache/shiro/guice/ShiroMatchers.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/matcher/Matcher;)V" line-rate="1.0" branch-rate="1.0">
<lines>
</lines>
</method>
<method name="matches" signature="(Lcom/google/inject/TypeLiteral;)Z" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="37" hits="381" branch="false"/>
</lines>
</method>
<method name="matches" signature="(Ljava/lang/Object;)Z" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="385" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="34" hits="385" branch="false"/>
<line number="37" hits="381" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroModule" filename="org/apache/shiro/guice/ShiroModule.java" line-rate="0.9411764705882353" branch-rate="1.0" complexity="1.2307692307692308">
<methods>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="49" hits="11" branch="false"/>
<line number="51" hits="11" branch="false"/>
</lines>
</method>
<method name="add" signature="(Lorg/apache/shiro/util/Destroyable;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="167" hits="20" branch="false"/>
<line number="168" hits="20" branch="false"/>
</lines>
</method>
<method name="bindBeanType" signature="(Lcom/google/inject/TypeLiteral;Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="151" hits="5" branch="false"/>
<line number="152" hits="5" branch="false"/>
</lines>
</method>
<method name="bindEnvironment" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="141" hits="5" branch="false"/>
<line number="142" hits="5" branch="false"/>
</lines>
</method>
<method name="bindRealm" signature="()Lcom/google/inject/binder/LinkedBindingBuilder;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="103" hits="11" branch="false"/>
<line number="104" hits="11" branch="false"/>
</lines>
</method>
<method name="bindSecurityManager" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="0.6" branch-rate="1.0">
<lines>
<line number="116" hits="5" branch="false"/>
<line number="117" hits="0" branch="false"/>
<line number="118" hits="0" branch="false"/>
<line number="119" hits="5" branch="false"/>
<line number="120" hits="5" branch="false"/>
</lines>
</method>
<method name="bindSessionManager" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="130" hits="5" branch="false"/>
<line number="131" hits="5" branch="false"/>
</lines>
</method>
<method name="configure" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="55" hits="11" branch="false"/>
<line number="56" hits="11" branch="false"/>
<line number="57" hits="11" branch="false"/>
<line number="58" hits="11" branch="false"/>
<line number="59" hits="11" branch="false"/>
<line number="69" hits="11" branch="false"/>
<line number="71" hits="11" branch="false"/>
<line number="73" hits="11" branch="false"/>
<line number="74" hits="11" branch="false"/>
<line number="77" hits="11" branch="false"/>
<line number="78" hits="11" branch="false"/>
<line number="79" hits="11" branch="false"/>
</lines>
</method>
<method name="destroy" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="161" hits="1" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="162" hits="2" branch="false"/>
<line number="164" hits="1" branch="false"/>
</lines>
</method>
<method name="realmCollectionKey" signature="()Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="88" hits="11" branch="false"/>
</lines>
</method>
<method name="realmSetKey" signature="()Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="83" hits="11" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="49" hits="11" branch="false"/>
<line number="51" hits="11" branch="false"/>
<line number="55" hits="11" branch="false"/>
<line number="56" hits="11" branch="false"/>
<line number="57" hits="11" branch="false"/>
<line number="58" hits="11" branch="false"/>
<line number="59" hits="11" branch="false"/>
<line number="69" hits="11" branch="false"/>
<line number="71" hits="11" branch="false"/>
<line number="73" hits="11" branch="false"/>
<line number="74" hits="11" branch="false"/>
<line number="77" hits="11" branch="false"/>
<line number="78" hits="11" branch="false"/>
<line number="79" hits="11" branch="false"/>
<line number="83" hits="11" branch="false"/>
<line number="88" hits="11" branch="false"/>
<line number="103" hits="11" branch="false"/>
<line number="104" hits="11" branch="false"/>
<line number="116" hits="5" branch="false"/>
<line number="117" hits="0" branch="false"/>
<line number="118" hits="0" branch="false"/>
<line number="119" hits="5" branch="false"/>
<line number="120" hits="5" branch="false"/>
<line number="130" hits="5" branch="false"/>
<line number="131" hits="5" branch="false"/>
<line number="141" hits="5" branch="false"/>
<line number="142" hits="5" branch="false"/>
<line number="151" hits="5" branch="false"/>
<line number="152" hits="5" branch="false"/>
<line number="161" hits="1" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="162" hits="2" branch="false"/>
<line number="164" hits="1" branch="false"/>
<line number="167" hits="20" branch="false"/>
<line number="168" hits="20" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroModule$1" filename="org/apache/shiro/guice/ShiroModule.java" line-rate="0.6" branch-rate="1.0" complexity="1.2307692307692308">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/ShiroModule;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="59" hits="11" branch="false"/>
</lines>
</method>
<method name="add" signature="(Lorg/apache/shiro/util/Destroyable;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="61" hits="20" branch="false"/>
<line number="62" hits="20" branch="false"/>
</lines>
</method>
<method name="destroy" signature="()V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="66" hits="0" branch="false"/>
<line number="67" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="59" hits="11" branch="false"/>
<line number="61" hits="20" branch="false"/>
<line number="62" hits="20" branch="false"/>
<line number="66" hits="0" branch="false"/>
<line number="67" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroSessionScope" filename="org/apache/shiro/guice/ShiroSessionScope.java" line-rate="0.6666666666666666" branch-rate="1.0" complexity="1.6">
<methods>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="32" hits="2" branch="false"/>
</lines>
</method>
<method name="scope" signature="(Lcom/google/inject/Key;Lcom/google/inject/Provider;)Lcom/google/inject/Provider;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="3" branch="false"/>
</lines>
</method>
<method name="toString" signature="()Ljava/lang/String;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="62" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="32" hits="2" branch="false"/>
<line number="34" hits="3" branch="false"/>
<line number="62" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.ShiroSessionScope$1" filename="org/apache/shiro/guice/ShiroSessionScope.java" line-rate="0.9090909090909091" branch-rate="1.0" complexity="1.6">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/ShiroSessionScope;Lcom/google/inject/Provider;Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="3" branch="false"/>
</lines>
</method>
<method name="castSessionAttribute" signature="(Lorg/apache/shiro/session/Session;)Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="50" hits="2" branch="false"/>
</lines>
</method>
<method name="get" signature="()Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="3" branch="false"/>
<line number="37" hits="3" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="38" hits="1" branch="false"/>
<line number="40" hits="2" branch="false"/>
<line number="41" hits="2" branch="false"/>
<line number="42" hits="2" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="43" hits="1" branch="false"/>
<line number="45" hits="2" branch="false"/>
</lines>
</method>
<method name="toString" signature="()Ljava/lang/String;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="55" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="34" hits="3" branch="false"/>
<line number="36" hits="3" branch="false"/>
<line number="37" hits="3" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="38" hits="1" branch="false"/>
<line number="40" hits="2" branch="false"/>
<line number="41" hits="2" branch="false"/>
<line number="42" hits="2" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="43" hits="1" branch="false"/>
<line number="45" hits="2" branch="false"/>
<line number="50" hits="2" branch="false"/>
<line number="55" hits="0" branch="false"/>
</lines>
</class>
</classes>
</package>
<package name="org.apache.shiro.guice.aop" line-rate="0.9032258064516129" branch-rate="0.75" complexity="1.0666666666666667">
<classes>
<class name="org.apache.shiro.guice.aop.AopAllianceMethodInterceptorAdapter" filename="org/apache/shiro/guice/aop/AopAllianceMethodInterceptorAdapter.java" line-rate="0.8" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/aop/MethodInterceptor;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="31" hits="7" branch="false"/>
<line number="32" hits="7" branch="false"/>
<line number="33" hits="7" branch="false"/>
</lines>
</method>
<method name="invoke" signature="(Lorg/aopalliance/intercept/MethodInvocation;)Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="1" branch="false"/>
</lines>
</method>
<method name="toString" signature="()Ljava/lang/String;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="41" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="31" hits="7" branch="false"/>
<line number="32" hits="7" branch="false"/>
<line number="33" hits="7" branch="false"/>
<line number="36" hits="1" branch="false"/>
<line number="41" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.aop.AopAllianceMethodInvocationAdapter" filename="org/apache/shiro/guice/aop/AopAllianceMethodInvocationAdapter.java" line-rate="0.875" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/aopalliance/intercept/MethodInvocation;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="32" hits="5" branch="false"/>
<line number="33" hits="5" branch="false"/>
<line number="34" hits="5" branch="false"/>
</lines>
</method>
<method name="getArguments" signature="()[Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="41" hits="1" branch="false"/>
</lines>
</method>
<method name="getMethod" signature="()Ljava/lang/reflect/Method;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="37" hits="1" branch="false"/>
</lines>
</method>
<method name="getThis" signature="()Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="53" hits="1" branch="false"/>
</lines>
</method>
<method name="proceed" signature="()Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="49" hits="2" branch="false"/>
</lines>
</method>
<method name="toString" signature="()Ljava/lang/String;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="45" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="32" hits="5" branch="false"/>
<line number="33" hits="5" branch="false"/>
<line number="34" hits="5" branch="false"/>
<line number="37" hits="1" branch="false"/>
<line number="41" hits="1" branch="false"/>
<line number="45" hits="0" branch="false"/>
<line number="49" hits="2" branch="false"/>
<line number="53" hits="1" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.aop.ShiroAopModule" filename="org/apache/shiro/guice/aop/ShiroAopModule.java" line-rate="0.9333333333333333" branch-rate="1.0" complexity="1.1666666666666667">
<methods>
<method name="&lt;init&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="2" branch="false"/>
</lines>
</method>
<method name="bindShiroInterceptor" signature="(Lorg/apache/shiro/aop/AnnotationMethodInterceptor;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="45" hits="6" branch="false"/>
<line number="52" hits="6" branch="false"/>
</lines>
</method>
<method name="configure" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="39" hits="2" branch="false"/>
<line number="40" hits="2" branch="false"/>
<line number="41" hits="2" branch="false"/>
<line number="42" hits="2" branch="false"/>
</lines>
</method>
<method name="configureDefaultInterceptors" signature="(Lorg/apache/shiro/aop/AnnotationResolver;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="59" hits="1" branch="false"/>
<line number="60" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="62" hits="1" branch="false"/>
<line number="63" hits="1" branch="false"/>
<line number="64" hits="1" branch="false"/>
</lines>
</method>
<method name="configureInterceptors" signature="(Lorg/apache/shiro/aop/AnnotationResolver;)V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="68" hits="0" branch="false"/>
</lines>
</method>
<method name="createAnnotationResolver" signature="()Lorg/apache/shiro/aop/AnnotationResolver;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="55" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="36" hits="2" branch="false"/>
<line number="39" hits="2" branch="false"/>
<line number="40" hits="2" branch="false"/>
<line number="41" hits="2" branch="false"/>
<line number="42" hits="2" branch="false"/>
<line number="45" hits="6" branch="false"/>
<line number="52" hits="6" branch="false"/>
<line number="55" hits="1" branch="false"/>
<line number="59" hits="1" branch="false"/>
<line number="60" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="62" hits="1" branch="false"/>
<line number="63" hits="1" branch="false"/>
<line number="64" hits="1" branch="false"/>
<line number="68" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.aop.ShiroAopModule$1" filename="org/apache/shiro/guice/aop/ShiroAopModule.java" line-rate="1.0" branch-rate="0.75" complexity="1.1666666666666667">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/aop/ShiroAopModule;Lorg/apache/shiro/aop/AnnotationMethodInterceptor;)V" line-rate="1.0" branch-rate="1.0">
<lines>
</lines>
</method>
<method name="matches" signature="(Ljava/lang/Object;)Z" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="45" hits="14" branch="false"/>
</lines>
</method>
<method name="matches" signature="(Ljava/lang/reflect/Method;)Z" line-rate="1.0" branch-rate="0.75">
<lines>
<line number="47" hits="8" branch="false"/>
<line number="48" hits="8" branch="true" condition-coverage="75% (3/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
</conditions>
</line>
</lines>
</method>
</methods>
<lines>
<line number="45" hits="14" branch="false"/>
<line number="47" hits="8" branch="false"/>
<line number="48" hits="8" branch="true" condition-coverage="75% (3/4)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
<condition number="1" type="jump" coverage="50%"/>
</conditions>
</line>
</lines>
</class>
</classes>
</package>
<package name="org.apache.shiro.guice.web" line-rate="0.9" branch-rate="0.9" complexity="1.4666666666666666">
<classes>
<class name="org.apache.shiro.guice.web.AbstractInjectionProvider" filename="org/apache/shiro/guice/web/AbstractInjectionProvider.java" line-rate="0.9090909090909091" branch-rate="1.0" complexity="1.8">
<methods>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="42" hits="7" branch="false"/>
<line number="43" hits="7" branch="false"/>
<line number="44" hits="7" branch="false"/>
<line number="46" hits="7" branch="false"/>
<line number="47" hits="7" branch="false"/>
<line number="48" hits="7" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="49" hits="6" branch="false"/>
<line number="51" hits="7" branch="false"/>
<line number="52" hits="7" branch="false"/>
</lines>
</method>
<method name="get" signature="()Ljava/lang/Object;" line-rate="0.8" branch-rate="1.0">
<lines>
<line number="55" hits="5" branch="false"/>
<line number="56" hits="5" branch="false"/>
<line number="57" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="58" hits="2" branch="false"/>
<line number="62" hits="5" branch="false"/>
<line number="63" hits="0" branch="false"/>
<line number="64" hits="0" branch="false"/>
<line number="65" hits="5" branch="false"/>
<line number="66" hits="5" branch="false"/>
<line number="67" hits="5" branch="false"/>
</lines>
</method>
<method name="getConstructor" signature="()Ljava/lang/reflect/Constructor;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="72" hits="5" branch="false"/>
</lines>
</method>
<method name="getDependencies" signature="()Ljava/util/Set;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="81" hits="1" branch="false"/>
</lines>
</method>
<method name="postProcess" signature="(Ljava/lang/Object;)Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="77" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="42" hits="7" branch="false"/>
<line number="43" hits="7" branch="false"/>
<line number="44" hits="7" branch="false"/>
<line number="46" hits="7" branch="false"/>
<line number="47" hits="7" branch="false"/>
<line number="48" hits="7" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="49" hits="6" branch="false"/>
<line number="51" hits="7" branch="false"/>
<line number="52" hits="7" branch="false"/>
<line number="55" hits="5" branch="false"/>
<line number="56" hits="5" branch="false"/>
<line number="57" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="58" hits="2" branch="false"/>
<line number="62" hits="5" branch="false"/>
<line number="63" hits="0" branch="false"/>
<line number="64" hits="0" branch="false"/>
<line number="65" hits="5" branch="false"/>
<line number="66" hits="5" branch="false"/>
<line number="67" hits="5" branch="false"/>
<line number="72" hits="5" branch="false"/>
<line number="77" hits="1" branch="false"/>
<line number="81" hits="1" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.FilterChainResolverProvider" filename="org/apache/shiro/guice/web/FilterChainResolverProvider.java" line-rate="1.0" branch-rate="1.0" complexity="1.5">
<methods>
<method name="&lt;init&gt;" signature="(Ljava/util/Map;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="45" hits="7" branch="false"/>
<line number="47" hits="7" branch="false"/>
<line number="48" hits="7" branch="false"/>
<line number="49" hits="7" branch="false"/>
<line number="50" hits="7" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="51" hits="20" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="52" hits="12" branch="false"/>
<line number="55" hits="7" branch="false"/>
<line number="56" hits="7" branch="false"/>
</lines>
</method>
<method name="get" signature="()Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="11" branch="false"/>
</lines>
</method>
<method name="get" signature="()Lorg/apache/shiro/web/filter/mgt/FilterChainResolver;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="68" hits="12" branch="false"/>
</lines>
</method>
<method name="getDependencies" signature="()Ljava/util/Set;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="64" hits="1" branch="false"/>
</lines>
</method>
<method name="setPatternMatcher" signature="(Lorg/apache/shiro/util/PatternMatcher;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="60" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="36" hits="11" branch="false"/>
<line number="45" hits="7" branch="false"/>
<line number="47" hits="7" branch="false"/>
<line number="48" hits="7" branch="false"/>
<line number="49" hits="7" branch="false"/>
<line number="50" hits="7" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="51" hits="20" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="52" hits="12" branch="false"/>
<line number="55" hits="7" branch="false"/>
<line number="56" hits="7" branch="false"/>
<line number="60" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="64" hits="1" branch="false"/>
<line number="68" hits="12" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.GuiceShiroFilter" filename="org/apache/shiro/guice/web/GuiceShiroFilter.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/web/mgt/WebSecurityManager;Lorg/apache/shiro/web/filter/mgt/FilterChainResolver;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="34" hits="6" branch="false"/>
<line number="35" hits="6" branch="false"/>
<line number="36" hits="6" branch="false"/>
<line number="37" hits="6" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="34" hits="6" branch="false"/>
<line number="35" hits="6" branch="false"/>
<line number="36" hits="6" branch="false"/>
<line number="37" hits="6" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.PathMatchingFilterProvider" filename="org/apache/shiro/guice/web/PathMatchingFilterProvider.java" line-rate="1.0" branch-rate="1.0" complexity="1.5">
<methods>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;Ljava/util/Map;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="30" hits="5" branch="false"/>
<line number="31" hits="5" branch="false"/>
<line number="32" hits="5" branch="false"/>
</lines>
</method>
<method name="postProcess" signature="(Ljava/lang/Object;)Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="26" hits="4" branch="false"/>
</lines>
</method>
<method name="postProcess" signature="(Lorg/apache/shiro/web/filter/PathMatchingFilter;)Lorg/apache/shiro/web/filter/PathMatchingFilter;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="36" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="37" hits="6" branch="false"/>
<line number="39" hits="5" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="26" hits="4" branch="false"/>
<line number="30" hits="5" branch="false"/>
<line number="31" hits="5" branch="false"/>
<line number="32" hits="5" branch="false"/>
<line number="36" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="37" hits="6" branch="false"/>
<line number="39" hits="5" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.ShiroWebModule" filename="org/apache/shiro/guice/web/ShiroWebModule.java" line-rate="0.8382352941176471" branch-rate="0.8333333333333334" complexity="1.391304347826087">
<methods>
<method name="&lt;clinit&gt;" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="59" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="63" hits="1" branch="false"/>
<line number="65" hits="1" branch="false"/>
<line number="67" hits="1" branch="false"/>
<line number="69" hits="1" branch="false"/>
<line number="71" hits="1" branch="false"/>
<line number="73" hits="1" branch="false"/>
<line number="75" hits="1" branch="false"/>
<line number="77" hits="1" branch="false"/>
<line number="79" hits="1" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="(Ljavax/servlet/ServletContext;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="88" hits="5" branch="false"/>
<line number="91" hits="5" branch="false"/>
<line number="92" hits="5" branch="false"/>
<line number="93" hits="5" branch="false"/>
</lines>
</method>
<method name="addFilterChain" signature="(Ljava/lang/String;[Lcom/google/inject/Key;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="221" hits="4" branch="false"/>
<line number="222" hits="4" branch="false"/>
</lines>
</method>
<method name="bindEnvironment" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="203" hits="5" branch="false"/>
<line number="204" hits="5" branch="false"/>
</lines>
</method>
<method name="bindGuiceFilter" signature="(Lcom/google/inject/Binder;)V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="96" hits="0" branch="false"/>
<line number="97" hits="0" branch="false"/>
</lines>
</method>
<method name="bindGuiceFilter" signature="(Ljava/lang/String;Lcom/google/inject/Binder;)V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="101" hits="0" branch="false"/>
<line number="102" hits="0" branch="false"/>
</lines>
</method>
<method name="bindPathMatchingFilter" signature="(Lcom/google/inject/Key;Ljava/util/Map;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="158" hits="4" branch="false"/>
<line number="159" hits="4" branch="false"/>
</lines>
</method>
<method name="bindSecurityManager" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="171" hits="5" branch="false"/>
<line number="172" hits="5" branch="false"/>
</lines>
</method>
<method name="bindSessionManager" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="198" hits="5" branch="false"/>
<line number="199" hits="5" branch="false"/>
</lines>
</method>
<method name="bindWebEnvironment" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="207" hits="8" branch="false"/>
<line number="208" hits="8" branch="false"/>
</lines>
</method>
<method name="bindWebSecurityManager" signature="(Lcom/google/inject/binder/AnnotatedBindingBuilder;)V" line-rate="0.6" branch-rate="1.0">
<lines>
<line number="183" hits="8" branch="false"/>
<line number="184" hits="0" branch="false"/>
<line number="185" hits="0" branch="false"/>
<line number="186" hits="8" branch="false"/>
<line number="187" hits="8" branch="false"/>
</lines>
</method>
<method name="castToPathMatching" signature="(Lcom/google/inject/Key;)Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="163" hits="4" branch="false"/>
</lines>
</method>
<method name="config" signature="(Lcom/google/inject/Key;Ljava/lang/String;)Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="225" hits="2" branch="false"/>
</lines>
</method>
<method name="config" signature="(Lcom/google/inject/TypeLiteral;Ljava/lang/String;)Lcom/google/inject/Key;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="230" hits="0" branch="false"/>
</lines>
</method>
<method name="config" signature="(Ljava/lang/Class;Ljava/lang/String;)Lcom/google/inject/Key;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="235" hits="0" branch="false"/>
</lines>
</method>
<method name="configureShiro" signature="()V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="119" hits="5" branch="false"/>
<line number="120" hits="5" branch="false"/>
<line number="121" hits="5" branch="false"/>
<line number="122" hits="5" branch="false"/>
<line number="123" hits="5" branch="false"/>
<line number="124" hits="5" branch="false"/>
<line number="126" hits="5" branch="false"/>
<line number="128" hits="5" branch="false"/>
<line number="130" hits="5" branch="false"/>
<line number="131" hits="5" branch="false"/>
</lines>
</method>
<method name="guiceFilterModule" signature="()Lcom/google/inject/servlet/ServletModule;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="105" hits="0" branch="false"/>
</lines>
</method>
<method name="guiceFilterModule" signature="(Ljava/lang/String;)Lcom/google/inject/servlet/ServletModule;" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="109" hits="0" branch="false"/>
</lines>
</method>
<method name="setupFilterChainConfigs" signature="()V" line-rate="0.9375" branch-rate="0.8333333333333334">
<lines>
<line number="134" hits="5" branch="false"/>
<line number="136" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="137" hits="8" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="138" hits="4" branch="false"/>
<line number="139" hits="4" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="140" hits="2" branch="false"/>
<line number="141" hits="2" branch="false"/>
<line number="142" hits="2" branch="false"/>
<line number="143" hits="2" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="144" hits="0" branch="false"/>
<line number="146" hits="2" branch="false"/>
<line number="147" hits="2" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="148" hits="2" branch="false"/>
<line number="152" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="153" hits="4" branch="false"/>
<line number="155" hits="5" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="59" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="63" hits="1" branch="false"/>
<line number="65" hits="1" branch="false"/>
<line number="67" hits="1" branch="false"/>
<line number="69" hits="1" branch="false"/>
<line number="71" hits="1" branch="false"/>
<line number="73" hits="1" branch="false"/>
<line number="75" hits="1" branch="false"/>
<line number="77" hits="1" branch="false"/>
<line number="79" hits="1" branch="false"/>
<line number="88" hits="5" branch="false"/>
<line number="91" hits="5" branch="false"/>
<line number="92" hits="5" branch="false"/>
<line number="93" hits="5" branch="false"/>
<line number="96" hits="0" branch="false"/>
<line number="97" hits="0" branch="false"/>
<line number="101" hits="0" branch="false"/>
<line number="102" hits="0" branch="false"/>
<line number="105" hits="0" branch="false"/>
<line number="109" hits="0" branch="false"/>
<line number="119" hits="5" branch="false"/>
<line number="120" hits="5" branch="false"/>
<line number="121" hits="5" branch="false"/>
<line number="122" hits="5" branch="false"/>
<line number="123" hits="5" branch="false"/>
<line number="124" hits="5" branch="false"/>
<line number="126" hits="5" branch="false"/>
<line number="128" hits="5" branch="false"/>
<line number="130" hits="5" branch="false"/>
<line number="131" hits="5" branch="false"/>
<line number="134" hits="5" branch="false"/>
<line number="136" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="137" hits="8" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="138" hits="4" branch="false"/>
<line number="139" hits="4" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="140" hits="2" branch="false"/>
<line number="141" hits="2" branch="false"/>
<line number="142" hits="2" branch="false"/>
<line number="143" hits="2" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="144" hits="0" branch="false"/>
<line number="146" hits="2" branch="false"/>
<line number="147" hits="2" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="148" hits="2" branch="false"/>
<line number="152" hits="5" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="153" hits="4" branch="false"/>
<line number="155" hits="5" branch="false"/>
<line number="158" hits="4" branch="false"/>
<line number="159" hits="4" branch="false"/>
<line number="163" hits="4" branch="false"/>
<line number="171" hits="5" branch="false"/>
<line number="172" hits="5" branch="false"/>
<line number="183" hits="8" branch="false"/>
<line number="184" hits="0" branch="false"/>
<line number="185" hits="0" branch="false"/>
<line number="186" hits="8" branch="false"/>
<line number="187" hits="8" branch="false"/>
<line number="198" hits="5" branch="false"/>
<line number="199" hits="5" branch="false"/>
<line number="203" hits="5" branch="false"/>
<line number="204" hits="5" branch="false"/>
<line number="207" hits="8" branch="false"/>
<line number="208" hits="8" branch="false"/>
<line number="221" hits="4" branch="false"/>
<line number="222" hits="4" branch="false"/>
<line number="225" hits="2" branch="false"/>
<line number="230" hits="0" branch="false"/>
<line number="235" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.ShiroWebModule$1" filename="org/apache/shiro/guice/web/ShiroWebModule.java" line-rate="0.0" branch-rate="1.0" complexity="1.391304347826087">
<methods>
<method name="&lt;init&gt;" signature="(Ljava/lang/String;)V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="109" hits="0" branch="false"/>
</lines>
</method>
<method name="configureServlets" signature="()V" line-rate="0.0" branch-rate="1.0">
<lines>
<line number="112" hits="0" branch="false"/>
<line number="113" hits="0" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="109" hits="0" branch="false"/>
<line number="112" hits="0" branch="false"/>
<line number="113" hits="0" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey" filename="org/apache/shiro/guice/web/ShiroWebModule.java" line-rate="1.0" branch-rate="1.0" complexity="1.391304347826087">
<methods>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;Ljava/lang/String;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="243" hits="2" branch="false"/>
<line number="244" hits="2" branch="false"/>
<line number="245" hits="2" branch="false"/>
<line number="246" hits="2" branch="false"/>
</lines>
</method>
<method name="&lt;init&gt;" signature="(Lcom/google/inject/Key;Ljava/lang/String;Lorg/apache/shiro/guice/web/ShiroWebModule$1;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="238" hits="2" branch="false"/>
</lines>
</method>
<method name="getConfigValue" signature="()Ljava/lang/String;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="253" hits="2" branch="false"/>
</lines>
</method>
<method name="getKey" signature="()Lcom/google/inject/Key;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="249" hits="2" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="238" hits="2" branch="false"/>
<line number="243" hits="2" branch="false"/>
<line number="244" hits="2" branch="false"/>
<line number="245" hits="2" branch="false"/>
<line number="246" hits="2" branch="false"/>
<line number="249" hits="2" branch="false"/>
<line number="253" hits="2" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.SimpleFilterChain" filename="org/apache/shiro/guice/web/SimpleFilterChain.java" line-rate="1.0" branch-rate="0.75" complexity="2.0">
<methods>
<method name="&lt;init&gt;" signature="(Ljavax/servlet/FilterChain;Ljava/util/Iterator;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="31" hits="4" branch="false"/>
<line number="33" hits="4" branch="false"/>
<line number="34" hits="4" branch="false"/>
<line number="35" hits="4" branch="false"/>
<line number="36" hits="4" branch="false"/>
</lines>
</method>
<method name="doFilter" signature="(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V" line-rate="1.0" branch-rate="0.75">
<lines>
<line number="39" hits="6" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="40" hits="4" branch="false"/>
<line number="41" hits="4" branch="false"/>
<line number="42" hits="4" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="43" hits="2" branch="false"/>
<line number="44" hits="2" branch="false"/>
<line number="46" hits="6" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="31" hits="4" branch="false"/>
<line number="33" hits="4" branch="false"/>
<line number="34" hits="4" branch="false"/>
<line number="35" hits="4" branch="false"/>
<line number="36" hits="4" branch="false"/>
<line number="39" hits="6" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="40" hits="4" branch="false"/>
<line number="41" hits="4" branch="false"/>
<line number="42" hits="4" branch="true" condition-coverage="50% (1/2)">
<conditions>
<condition number="0" type="jump" coverage="50%"/>
</conditions>
</line>
<line number="43" hits="2" branch="false"/>
<line number="44" hits="2" branch="false"/>
<line number="46" hits="6" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.SimpleFilterChainResolver" filename="org/apache/shiro/guice/web/SimpleFilterChainResolver.java" line-rate="1.0" branch-rate="1.0" complexity="2.0">
<methods>
<method name="&lt;init&gt;" signature="(Ljava/util/Map;Lcom/google/inject/Injector;Lorg/apache/shiro/util/PatternMatcher;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="40" hits="13" branch="false"/>
<line number="41" hits="13" branch="false"/>
<line number="42" hits="13" branch="false"/>
<line number="43" hits="13" branch="false"/>
<line number="44" hits="13" branch="false"/>
</lines>
</method>
<method name="access$000" signature="(Lorg/apache/shiro/guice/web/SimpleFilterChainResolver;)Lcom/google/inject/Injector;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="35" hits="2" branch="false"/>
</lines>
</method>
<method name="getChain" signature="(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)Ljavax/servlet/FilterChain;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="47" hits="4" branch="false"/>
<line number="48" hits="4" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="49" hits="8" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="50" hits="3" branch="false"/>
<line number="58" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="35" hits="2" branch="false"/>
<line number="40" hits="13" branch="false"/>
<line number="41" hits="13" branch="false"/>
<line number="42" hits="13" branch="false"/>
<line number="43" hits="13" branch="false"/>
<line number="44" hits="13" branch="false"/>
<line number="47" hits="4" branch="false"/>
<line number="48" hits="4" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="49" hits="8" branch="true" condition-coverage="100% (2/2)">
<conditions>
<condition number="0" type="jump" coverage="100%"/>
</conditions>
</line>
<line number="50" hits="3" branch="false"/>
<line number="58" hits="1" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.SimpleFilterChainResolver$1" filename="org/apache/shiro/guice/web/SimpleFilterChainResolver.java" line-rate="1.0" branch-rate="1.0" complexity="2.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/guice/web/SimpleFilterChainResolver;)V" line-rate="1.0" branch-rate="1.0">
<lines>
</lines>
</method>
<method name="apply" signature="(Lcom/google/inject/Key;)Ljavax/servlet/Filter;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="53" hits="2" branch="false"/>
</lines>
</method>
<method name="apply" signature="(Ljava/lang/Object;)Ljava/lang/Object;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="51" hits="5" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="51" hits="5" branch="false"/>
<line number="53" hits="2" branch="false"/>
</lines>
</class>
<class name="org.apache.shiro.guice.web.WebGuiceEnvironment" filename="org/apache/shiro/guice/web/WebGuiceEnvironment.java" line-rate="1.0" branch-rate="1.0" complexity="1.0">
<methods>
<method name="&lt;init&gt;" signature="(Lorg/apache/shiro/web/filter/mgt/FilterChainResolver;Ljavax/servlet/ServletContext;Lorg/apache/shiro/web/mgt/WebSecurityManager;)V" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="39" hits="7" branch="false"/>
<line number="40" hits="7" branch="false"/>
<line number="41" hits="7" branch="false"/>
<line number="42" hits="7" branch="false"/>
<line number="44" hits="7" branch="false"/>
<line number="45" hits="7" branch="false"/>
</lines>
</method>
<method name="getFilterChainResolver" signature="()Lorg/apache/shiro/web/filter/mgt/FilterChainResolver;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="48" hits="1" branch="false"/>
</lines>
</method>
<method name="getSecurityManager" signature="()Lorg/apache/shiro/mgt/SecurityManager;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="60" hits="1" branch="false"/>
</lines>
</method>
<method name="getServletContext" signature="()Ljavax/servlet/ServletContext;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="52" hits="1" branch="false"/>
</lines>
</method>
<method name="getWebSecurityManager" signature="()Lorg/apache/shiro/web/mgt/WebSecurityManager;" line-rate="1.0" branch-rate="1.0">
<lines>
<line number="56" hits="1" branch="false"/>
</lines>
</method>
</methods>
<lines>
<line number="39" hits="7" branch="false"/>
<line number="40" hits="7" branch="false"/>
<line number="41" hits="7" branch="false"/>
<line number="42" hits="7" branch="false"/>
<line number="44" hits="7" branch="false"/>
<line number="45" hits="7" branch="false"/>
<line number="48" hits="1" branch="false"/>
<line number="52" hits="1" branch="false"/>
<line number="56" hits="1" branch="false"/>
<line number="60" hits="1" branch="false"/>
</lines>
</class>
</classes>
</package>
</packages>
</coverage>