Added:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/jacoco.xml
==============================================================================
---
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/jacoco.xml
(added)
+++
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/jacoco.xml
Tue Sep 3 16:39:49 2024
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE report PUBLIC
"-//JACOCO//DTD Report 1.1//EN" "report.dtd"><report name="Apache Maven
Jarsigner Plugin"><sessioninfo id="POLPC-G026X5NXVR-f606340f"
start="1725381390107" dump="1725381391108"/><package
name="org/apache/maven/plugins/jarsigner"><class
name="org/apache/maven/plugins/jarsigner/TsaSelector"
sourcefilename="TsaSelector.java"><method name="<init>"
desc="([Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V"
line="57"><counter type="INSTRUCTION" missed="0" covered="75"/><counter
type="BRANCH" missed="0" covered="10"/><counter type="LINE" missed="0"
covered="12"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="getServer"
desc="()Lorg/apache/maven/plugins/jarsigner/TsaSelector$TsaServer;"
line="85"><counter type="INSTRUCTION" missed="0" covered="38"/><counter
type="BRANCH" missed="0" covered="4"/><counter type
="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0"
covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="registerFailure" desc="()V" line="102"><counter type="INSTRUCTION"
missed="0" covered="12"/><counter type="BRANCH" missed="0"
covered="2"/><counter type="LINE" missed="0" covered="3"/><counter
type="COMPLEXITY" missed="0" covered="2"/><counter type="METHOD" missed="0"
covered="1"/></method><counter type="INSTRUCTION" missed="0"
covered="125"/><counter type="BRANCH" missed="0" covered="16"/><counter
type="LINE" missed="0" covered="21"/><counter type="COMPLEXITY" missed="0"
covered="11"/><counter type="METHOD" missed="0" covered="3"/><counter
type="CLASS" missed="0" covered="1"/></class><class
name="org/apache/maven/plugins/jarsigner/AbstractJarsignerMojo"
sourcefilename="AbstractJarsignerMojo.java"><method name="<init>"
desc="()V" line="58"><counter type="INSTRUCTION" missed="0"
covered="15"/><counter type="LINE" missed="0" cov
ered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="execute"
desc="()V" line="270"><counter type="INSTRUCTION" missed="0"
covered="55"/><counter type="BRANCH" missed="0" covered="4"/><counter
type="LINE" missed="0" covered="12"/><counter type="COMPLEXITY" missed="0"
covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="findJarfiles" desc="()Ljava/util/List;" line="295"><counter
type="INSTRUCTION" missed="17" covered="149"/><counter type="BRANCH" missed="2"
covered="24"/><counter type="LINE" missed="2" covered="29"/><counter
type="COMPLEXITY" missed="2" covered="12"/><counter type="METHOD" missed="0"
covered="1"/></method><method name="getCommandlineInfo"
desc="(Lorg/apache/maven/shared/utils/cli/Commandline;)Ljava/lang/String;"
line="370"><counter type="INSTRUCTION" missed="5" covered="13"/><counter
type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="1" covered=
"4"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter type="METHOD"
missed="0" covered="1"/></method><method name="getStoretype"
desc="()Ljava/lang/String;" line="380"><counter type="INSTRUCTION" missed="3"
covered="0"/><counter type="LINE" missed="1" covered="0"/><counter
type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1"
covered="0"/></method><method name="getStorepass" desc="()Ljava/lang/String;"
line="384"><counter type="INSTRUCTION" missed="3" covered="0"/><counter
type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1"
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method
name="isZipFile" desc="(Lorg/apache/maven/artifact/Artifact;)Z"
line="394"><counter type="INSTRUCTION" missed="0" covered="13"/><counter
type="BRANCH" missed="2" covered="4"/><counter type="LINE" missed="0"
covered="1"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter
type="METHOD" missed="0" covered="1"/></method><method
name="getFileFromArtifact"
desc="(Lorg/apache/maven/artifact/Artifact;)Ljava/util/Optional;"
line="405"><counter type="INSTRUCTION" missed="5" covered="43"/><counter
type="BRANCH" missed="1" covered="7"/><counter type="LINE" missed="1"
covered="8"/><counter type="COMPLEXITY" missed="1" covered="4"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="preProcessArchive"
desc="(Ljava/io/File;)V" line="429"><counter type="INSTRUCTION" missed="0"
covered="1"/><counter type="LINE" missed="0" covered="1"/><counter
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0"
covered="1"/></method><method name="validateParameters" desc="()V"
line="438"><counter type="INSTRUCTION" missed="0" covered="1"/><counter
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="processArchives" desc="(Ljava/util/List;)V" line="447"><counter
type="INSTRUCTION" missed="0"
covered="15"/><counter type="BRANCH" missed="0" covered="2"/><counter
type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0"
covered="2"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="processArchive" desc="(Ljava/io/File;)V" line="460"><counter
type="INSTRUCTION" missed="143" covered="178"/><counter type="BRANCH"
missed="12" covered="14"/><counter type="LINE" missed="22"
covered="37"/><counter type="COMPLEXITY" missed="8" covered="6"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="decrypt"
desc="(Ljava/lang/String;)Ljava/lang/String;" line="561"><counter
type="INSTRUCTION" missed="28" covered="5"/><counter type="LINE" missed="3"
covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="getMessage"
desc="(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;"
line="580"><counter type="INSTRUCTION" missed="5" covered="12"/><counter
type="BRAN
CH" missed="1" covered="1"/><counter type="LINE" missed="1"
covered="2"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="getToolchain"
desc="()Lorg/apache/maven/toolchain/Toolchain;" line="595"><counter
type="INSTRUCTION" missed="0" covered="14"/><counter type="BRANCH" missed="0"
covered="2"/><counter type="LINE" missed="0" covered="4"/><counter
type="COMPLEXITY" missed="0" covered="2"/><counter type="METHOD" missed="0"
covered="1"/></method><counter type="INSTRUCTION" missed="209"
covered="514"/><counter type="BRANCH" missed="19" covered="59"/><counter
type="LINE" missed="32" covered="107"/><counter type="COMPLEXITY" missed="17"
covered="37"/><counter type="METHOD" missed="2" covered="13"/><counter
type="CLASS" missed="0" covered="1"/></class><class
name="org/apache/maven/plugins/jarsigner/JarsignerSignMojo$WaitStrategy"
sourcefilename="JarsignerSignMojo.java"/><class
name="org/apache/maven/plugins/jarsigner/J
arsignerSignMojo$Sleeper" sourcefilename="JarsignerSignMojo.java"/><class
name="org/apache/maven/plugins/jarsigner/JarsignerVerifyMojo"
sourcefilename="JarsignerVerifyMojo.java"><method name="<init>"
desc="()V" line="42"><counter type="INSTRUCTION" missed="0"
covered="3"/><counter type="LINE" missed="0" covered="1"/><counter
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0"
covered="1"/></method><method name="createRequest"
desc="(Ljava/io/File;)Lorg/apache/maven/shared/jarsigner/JarSignerRequest;"
line="66"><counter type="INSTRUCTION" missed="0" covered="10"/><counter
type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="preProcessArchive" desc="(Ljava/io/File;)V" line="73"><counter
type="INSTRUCTION" missed="19" covered="26"/><counter type="BRANCH" missed="0"
covered="4"/><counter type="LINE" missed="3" covered="7"/><counter
type="COMPLEXITY" misse
d="0" covered="3"/><counter type="METHOD" missed="0"
covered="1"/></method><method name="executeJarSigner"
desc="(Lorg/apache/maven/shared/jarsigner/JarSigner;Lorg/apache/maven/shared/jarsigner/JarSignerRequest;)V"
line="97"><counter type="INSTRUCTION" missed="0" covered="31"/><counter
type="BRANCH" missed="0" covered="2"/><counter type="LINE" missed="0"
covered="6"/><counter type="COMPLEXITY" missed="0" covered="2"/><counter
type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION"
missed="19" covered="70"/><counter type="BRANCH" missed="0"
covered="6"/><counter type="LINE" missed="3" covered="17"/><counter
type="COMPLEXITY" missed="0" covered="7"/><counter type="METHOD" missed="0"
covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class
name="org/apache/maven/plugins/jarsigner/JarsignerSignMojo"
sourcefilename="JarsignerSignMojo.java"><method name="<init>" desc="()V"
line="53"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type
="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="getCommandlineInfo"
desc="(Lorg/apache/maven/shared/utils/cli/Commandline;)Ljava/lang/String;"
line="230"><counter type="INSTRUCTION" missed="1" covered="16"/><counter
type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="0"
covered="4"/><counter type="COMPLEXITY" missed="2" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="preProcessArchive"
desc="(Ljava/io/File;)V" line="241"><counter type="INSTRUCTION" missed="19"
covered="7"/><counter type="BRANCH" missed="0" covered="2"/><counter
type="LINE" missed="2" covered="4"/><counter type="COMPLEXITY" missed="0"
covered="2"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="validateParameters" desc="()V" line="252"><counter type="INSTRUCTION"
missed="0" covered="185"/><counter type="BRANCH" missed="1"
covered="21"/><counte
r type="LINE" missed="0" covered="20"/><counter type="COMPLEXITY" missed="1"
covered="11"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="createRequest"
desc="(Ljava/io/File;)Lorg/apache/maven/shared/jarsigner/JarSignerRequest;"
line="289"><counter type="INSTRUCTION" missed="0" covered="26"/><counter
type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="updateJarSignerRequestWithTsa"
desc="(Lorg/apache/maven/shared/jarsigner/JarSignerSignRequest;Lorg/apache/maven/plugins/jarsigner/TsaSelector$TsaServer;)V"
line="301"><counter type="INSTRUCTION" missed="0" covered="17"/><counter
type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="processArchives" desc="(Ljava/util/List;)V" line="312"><counter
type="INSTRUCTION" missed="15" covered="41"/><counter type="BRANC
H" missed="1" covered="3"/><counter type="LINE" missed="4"
covered="12"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="executeJarSigner"
desc="(Lorg/apache/maven/shared/jarsigner/JarSigner;Lorg/apache/maven/shared/jarsigner/JarSignerRequest;)V"
line="347"><counter type="INSTRUCTION" missed="1" covered="64"/><counter
type="BRANCH" missed="1" covered="5"/><counter type="LINE" missed="1"
covered="11"/><counter type="COMPLEXITY" missed="1" covered="3"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="setWaitStrategy"
desc="(Lorg/apache/maven/plugins/jarsigner/JarsignerSignMojo$WaitStrategy;)V"
line="368"><counter type="INSTRUCTION" missed="0" covered="4"/><counter
type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="defaultWaitStrategy" desc="(ILjava/time/Duration;)V" line="386"><counter
ty
pe="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0"
covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="waitAfterFailure"
desc="(ILjava/time/Duration;Lorg/apache/maven/plugins/jarsigner/JarsignerSignMojo$Sleeper;)V"
line="398"><counter type="INSTRUCTION" missed="0" covered="53"/><counter
type="BRANCH" missed="0" covered="2"/><counter type="LINE" missed="0"
covered="11"/><counter type="COMPLEXITY" missed="0" covered="2"/><counter
type="METHOD" missed="0" covered="1"/></method><method
name="lambda$processArchives$1"
desc="(Ljava/util/concurrent/ExecutorService;Ljava/io/File;)Ljava/util/concurrent/Future;"
line="314"><counter type="INSTRUCTION" missed="0" covered="6"/><counter
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="lambda$processArchives$0" desc="(Ljava/io/File;)Ljava/
lang/Void;" line="315"><counter type="INSTRUCTION" missed="0"
covered="5"/><counter type="LINE" missed="0" covered="2"/><counter
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0"
covered="1"/></method><counter type="INSTRUCTION" missed="36"
covered="437"/><counter type="BRANCH" missed="5" covered="35"/><counter
type="LINE" missed="7" covered="81"/><counter type="COMPLEXITY" missed="5"
covered="28"/><counter type="METHOD" missed="0" covered="13"/><counter
type="CLASS" missed="0" covered="1"/></class><class
name="org/apache/maven/plugins/jarsigner/TsaSelector$TsaServer"
sourcefilename="TsaSelector.java"><method name="<init>"
desc="(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V"
line="111"><counter type="INSTRUCTION" missed="0" covered="21"/><counter
type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="getTsaUrl" desc="()Lj
ava/lang/String;" line="125"><counter type="INSTRUCTION" missed="0"
covered="3"/><counter type="LINE" missed="0" covered="1"/><counter
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0"
covered="1"/></method><method name="getTsaAlias" desc="()Ljava/lang/String;"
line="129"><counter type="INSTRUCTION" missed="0" covered="3"/><counter
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0"
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method
name="getTsaPolicyId" desc="()Ljava/lang/String;" line="133"><counter
type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0"
covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter
type="METHOD" missed="0" covered="1"/></method><method name="getTsaDigestAlt"
desc="()Ljava/lang/String;" line="137"><counter type="INSTRUCTION" missed="0"
covered="3"/><counter type="LINE" missed="0" covered="1"/><counter
type="COMPLEXITY" missed="0" covered="1"/><co
unter type="METHOD" missed="0" covered="1"/></method><method
name="<clinit>" desc="()V" line="109"><counter type="INSTRUCTION"
missed="0" covered="9"/><counter type="LINE" missed="0" covered="1"/><counter
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0"
covered="1"/></method><counter type="INSTRUCTION" missed="0"
covered="42"/><counter type="LINE" missed="0" covered="12"/><counter
type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0"
covered="6"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile
name="AbstractJarsignerMojo.java"><line nr="58" mi="0" ci="2" mb="0"
cb="0"/><line nr="136" mi="0" ci="8" mb="0" cb="0"/><line nr="145" mi="0"
ci="5" mb="0" cb="0"/><line nr="270" mi="0" ci="3" mb="0" cb="2"/><line
nr="271" mi="0" ci="8" mb="0" cb="0"/><line nr="272" mi="0" ci="1" mb="0"
cb="0"/><line nr="275" mi="0" ci="2" mb="0" cb="0"/><line nr="277" mi="0"
ci="3" mb="0" cb="0"/><line nr="278" mi="0" ci="2" mb="0" cb="
2"/><line nr="279" mi="0" ci="11" mb="0" cb="0"/><line nr="280" mi="0" ci="4"
mb="0" cb="0"/><line nr="283" mi="0" ci="3" mb="0" cb="0"/><line nr="284"
mi="0" ci="3" mb="0" cb="0"/><line nr="285" mi="0" ci="14" mb="0" cb="0"/><line
nr="286" mi="0" ci="1" mb="0" cb="0"/><line nr="295" mi="0" ci="3" mb="0"
cb="2"/><line nr="297" mi="0" ci="9" mb="0" cb="0"/><line nr="300" mi="0"
ci="4" mb="0" cb="0"/><line nr="301" mi="0" ci="3" mb="0" cb="2"/><line
nr="302" mi="0" ci="11" mb="0" cb="0"/><line nr="305" mi="0" ci="3" mb="0"
cb="2"/><line nr="306" mi="0" ci="4" mb="0" cb="0"/><line nr="307" mi="0"
ci="3" mb="0" cb="2"/><line nr="308" mi="0" ci="6" mb="0" cb="0"/><line
nr="311" mi="0" ci="4" mb="0" cb="0"/><line nr="312" mi="0" ci="3" mb="0"
cb="2"/><line nr="313" mi="0" ci="6" mb="0" cb="0"/><line nr="316" mi="0"
ci="12" mb="0" cb="2"/><line nr="317" mi="0" ci="8" mb="0" cb="4"/><line
nr="318" mi="0" ci="1" mb="0" cb="0"/><line nr="321" mi="0" ci="5" mb="0"
cb="2"/><line nr="322" mi="0"
ci="1" mb="0" cb="0"/><line nr="325" mi="0" ci="9" mb="0" cb="0"/><line
nr="326" mi="0" ci="1" mb="0" cb="0"/><line nr="327" mi="0" ci="1" mb="0"
cb="0"/><line nr="328" mi="0" ci="3" mb="0" cb="2"/><line nr="329" mi="0"
ci="9" mb="0" cb="0"/><line nr="331" mi="0" ci="8" mb="0" cb="0"/><line
nr="335" mi="0" ci="3" mb="0" cb="2"/><line nr="336" mi="1" ci="9" mb="1"
cb="1"/><line nr="337" mi="1" ci="9" mb="1" cb="1"/><line nr="340" mi="0"
ci="8" mb="0" cb="0"/><line nr="341" mi="1" ci="0" mb="0" cb="0"/><line
nr="342" mi="14" ci="0" mb="0" cb="0"/><line nr="343" mi="0" ci="1" mb="0"
cb="0"/><line nr="346" mi="0" ci="2" mb="0" cb="0"/><line nr="370" mi="0"
ci="2" mb="1" cb="1"/><line nr="371" mi="5" ci="0" mb="0" cb="0"/><line
nr="374" mi="0" ci="3" mb="0" cb="0"/><line nr="375" mi="0" ci="6" mb="0"
cb="0"/><line nr="376" mi="0" ci="2" mb="0" cb="0"/><line nr="380" mi="3"
ci="0" mb="0" cb="0"/><line nr="384" mi="3" ci="0" mb="0" cb="0"/><line
nr="394" mi="0" ci="13" mb="2" cb="4"/><lin
e nr="405" mi="0" ci="2" mb="1" cb="1"/><line nr="406" mi="5" ci="0" mb="0"
cb="0"/><line nr="409" mi="0" ci="3" mb="0" cb="2"/><line nr="410" mi="0"
ci="4" mb="0" cb="0"/><line nr="413" mi="0" ci="3" mb="0" cb="2"/><line
nr="414" mi="0" ci="13" mb="0" cb="0"/><line nr="415" mi="0" ci="4" mb="0"
cb="2"/><line nr="416" mi="0" ci="12" mb="0" cb="0"/><line nr="418" mi="0"
ci="2" mb="0" cb="0"/><line nr="429" mi="0" ci="1" mb="0" cb="0"/><line
nr="438" mi="0" ci="1" mb="0" cb="0"/><line nr="447" mi="0" ci="10" mb="0"
cb="2"/><line nr="448" mi="0" ci="3" mb="0" cb="0"/><line nr="449" mi="0"
ci="1" mb="0" cb="0"/><line nr="450" mi="0" ci="1" mb="0" cb="0"/><line
nr="460" mi="0" ci="2" mb="1" cb="1"/><line nr="461" mi="5" ci="0" mb="0"
cb="0"/><line nr="464" mi="0" ci="3" mb="0" cb="0"/><line nr="466" mi="0"
ci="3" mb="0" cb="2"/><line nr="467" mi="0" ci="13" mb="0" cb="0"/><line
nr="468" mi="0" ci="4" mb="0" cb="2"/><line nr="469" mi="0" ci="12" mb="0"
cb="0"/><line nr="472" mi="0" ci="4"
mb="0" cb="0"/><line nr="473" mi="0" ci="4" mb="0" cb="0"/><line nr="474"
mi="0" ci="4" mb="0" cb="0"/><line nr="475" mi="0" ci="3" mb="0" cb="0"/><line
nr="476" mi="0" ci="4" mb="0" cb="0"/><line nr="477" mi="0" ci="4" mb="0"
cb="0"/><line nr="478" mi="0" ci="4" mb="0" cb="0"/><line nr="479" mi="0"
ci="4" mb="0" cb="0"/><line nr="480" mi="0" ci="4" mb="0" cb="0"/><line
nr="481" mi="0" ci="4" mb="0" cb="0"/><line nr="482" mi="0" ci="4" mb="0"
cb="0"/><line nr="483" mi="0" ci="4" mb="0" cb="0"/><line nr="486" mi="0"
ci="4" mb="0" cb="0"/><line nr="488" mi="0" ci="2" mb="0" cb="0"/><line
nr="490" mi="0" ci="3" mb="1" cb="1"/><line nr="491" mi="0" ci="17" mb="0"
cb="2"/><line nr="492" mi="0" ci="5" mb="0" cb="2"/><line nr="493" mi="0"
ci="2" mb="0" cb="0"/><line nr="496" mi="0" ci="4" mb="0" cb="0"/><line
nr="500" mi="0" ci="2" mb="0" cb="2"/><line nr="501" mi="0" ci="11" mb="0"
cb="0"/><line nr="505" mi="2" ci="3" mb="1" cb="1"/><line nr="506" mi="4"
ci="0" mb="2" cb="0"/><line nr="5
07" mi="4" ci="0" mb="2" cb="0"/><line nr="508" mi="10" ci="0" mb="0"
cb="0"/><line nr="509" mi="4" ci="0" mb="0" cb="0"/><line nr="510" mi="10"
ci="0" mb="0" cb="0"/><line nr="511" mi="4" ci="0" mb="0" cb="0"/><line
nr="512" mi="10" ci="0" mb="0" cb="0"/><line nr="513" mi="4" ci="0" mb="0"
cb="0"/><line nr="515" mi="5" ci="0" mb="2" cb="0"/><line nr="516" mi="10"
ci="0" mb="0" cb="0"/><line nr="517" mi="4" ci="0" mb="0" cb="0"/><line
nr="518" mi="10" ci="0" mb="0" cb="0"/><line nr="519" mi="4" ci="0" mb="0"
cb="0"/><line nr="520" mi="10" ci="0" mb="0" cb="0"/><line nr="521" mi="4"
ci="0" mb="0" cb="0"/><line nr="524" mi="6" ci="0" mb="2" cb="0"/><line
nr="525" mi="10" ci="0" mb="0" cb="0"/><line nr="526" mi="6" ci="0" mb="0"
cb="0"/><line nr="528" mi="10" ci="0" mb="0" cb="0"/><line nr="529" mi="6"
ci="0" mb="0" cb="0"/><line nr="533" mi="0" ci="2" mb="0" cb="0"/><line
nr="534" mi="0" ci="3" mb="1" cb="1"/><line nr="535" mi="0" ci="7" mb="0"
cb="0"/><line nr="536" mi="1" ci="0" mb=
"0" cb="0"/><line nr="539" mi="0" ci="6" mb="0" cb="0"/><line nr="542" mi="0"
ci="5" mb="0" cb="0"/><line nr="543" mi="0" ci="1" mb="0" cb="0"/><line
nr="544" mi="0" ci="15" mb="0" cb="0"/><line nr="545" mi="0" ci="1" mb="0"
cb="0"/><line nr="546" mi="0" ci="1" mb="0" cb="0"/><line nr="561" mi="0"
ci="5" mb="0" cb="0"/><line nr="562" mi="1" ci="0" mb="0" cb="0"/><line
nr="563" mi="13" ci="0" mb="0" cb="0"/><line nr="564" mi="14" ci="0" mb="0"
cb="0"/><line nr="580" mi="0" ci="2" mb="1" cb="1"/><line nr="581" mi="5"
ci="0" mb="0" cb="0"/><line nr="584" mi="0" ci="10" mb="0" cb="0"/><line
nr="595" mi="0" ci="2" mb="0" cb="0"/><line nr="596" mi="0" ci="3" mb="0"
cb="2"/><line nr="597" mi="0" ci="7" mb="0" cb="0"/><line nr="600" mi="0"
ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="209"
covered="514"/><counter type="BRANCH" missed="19" covered="59"/><counter
type="LINE" missed="32" covered="107"/><counter type="COMPLEXITY" missed="17"
covered="37"/><counter type="METHOD" miss
ed="2" covered="13"/><counter type="CLASS" missed="0"
covered="1"/></sourcefile><sourcefile name="JarsignerSignMojo.java"><line
nr="53" mi="0" ci="2" mb="0" cb="0"/><line nr="221" mi="0" ci="5" mb="0"
cb="0"/><line nr="230" mi="1" ci="6" mb="1" cb="1"/><line nr="232" mi="0"
ci="2" mb="1" cb="1"/><line nr="233" mi="0" ci="6" mb="0" cb="0"/><line
nr="236" mi="0" ci="2" mb="0" cb="0"/><line nr="241" mi="0" ci="3" mb="0"
cb="2"/><line nr="243" mi="0" ci="2" mb="0" cb="0"/><line nr="244" mi="1"
ci="0" mb="0" cb="0"/><line nr="245" mi="18" ci="0" mb="0" cb="0"/><line
nr="246" mi="0" ci="1" mb="0" cb="0"/><line nr="248" mi="0" ci="1" mb="0"
cb="0"/><line nr="252" mi="0" ci="2" mb="0" cb="0"/><line nr="254" mi="0"
ci="4" mb="0" cb="2"/><line nr="255" mi="0" ci="14" mb="0" cb="0"/><line
nr="256" mi="0" ci="3" mb="0" cb="0"/><line nr="259" mi="0" ci="3" mb="0"
cb="2"/><line nr="260" mi="0" ci="14" mb="0" cb="0"/><line nr="261" mi="0"
ci="3" mb="0" cb="0"/><line nr="264" mi="0" ci="4" mb="0" c
b="2"/><line nr="265" mi="0" ci="14" mb="0" cb="0"/><line nr="266" mi="0"
ci="3" mb="0" cb="0"/><line nr="269" mi="0" ci="8" mb="0" cb="4"/><line
nr="270" mi="0" ci="8" mb="0" cb="0"/><line nr="272" mi="0" ci="14" mb="1"
cb="3"/><line nr="273" mi="0" ci="29" mb="0" cb="0"/><line nr="275" mi="0"
ci="9" mb="0" cb="4"/><line nr="276" mi="0" ci="15" mb="0" cb="0"/><line
nr="278" mi="0" ci="9" mb="0" cb="4"/><line nr="279" mi="0" ci="15" mb="0"
cb="0"/><line nr="281" mi="0" ci="13" mb="0" cb="0"/><line nr="282" mi="0"
ci="1" mb="0" cb="0"/><line nr="289" mi="0" ci="4" mb="0" cb="0"/><line
nr="290" mi="0" ci="4" mb="0" cb="0"/><line nr="291" mi="0" ci="6" mb="0"
cb="0"/><line nr="292" mi="0" ci="4" mb="0" cb="0"/><line nr="295" mi="0"
ci="6" mb="0" cb="0"/><line nr="296" mi="0" ci="2" mb="0" cb="0"/><line
nr="301" mi="0" ci="4" mb="0" cb="0"/><line nr="302" mi="0" ci="4" mb="0"
cb="0"/><line nr="303" mi="0" ci="4" mb="0" cb="0"/><line nr="304" mi="0"
ci="4" mb="0" cb="0"/><line nr="305" m
i="0" ci="1" mb="0" cb="0"/><line nr="312" mi="0" ci="4" mb="0" cb="0"/><line
nr="313" mi="0" ci="5" mb="0" cb="0"/><line nr="314" mi="0" ci="7" mb="0"
cb="0"/><line nr="315" mi="0" ci="3" mb="0" cb="0"/><line nr="316" mi="0"
ci="2" mb="0" cb="0"/><line nr="318" mi="0" ci="4" mb="0" cb="0"/><line
nr="320" mi="0" ci="10" mb="0" cb="2"/><line nr="321" mi="0" ci="3" mb="0"
cb="0"/><line nr="322" mi="0" ci="1" mb="0" cb="0"/><line nr="323" mi="1"
ci="0" mb="0" cb="0"/><line nr="324" mi="2" ci="0" mb="0" cb="0"/><line
nr="325" mi="6" ci="0" mb="0" cb="0"/><line nr="326" mi="0" ci="1" mb="0"
cb="0"/><line nr="327" mi="0" ci="4" mb="1" cb="1"/><line nr="328" mi="0"
ci="4" mb="0" cb="0"/><line nr="330" mi="6" ci="0" mb="0" cb="0"/><line
nr="333" mi="0" ci="3" mb="0" cb="0"/><line nr="335" mi="0" ci="1" mb="0"
cb="0"/><line nr="347" mi="0" ci="8" mb="1" cb="1"/><line nr="348" mi="0"
ci="4" mb="0" cb="0"/><line nr="349" mi="0" ci="3" mb="0" cb="0"/><line
nr="350" mi="0" ci="2" mb="0" cb="2"/>
<line nr="351" mi="0" ci="1" mb="0" cb="0"/><line nr="353" mi="0" ci="3"
mb="0" cb="0"/><line nr="355" mi="0" ci="6" mb="0" cb="2"/><line nr="356"
mi="0" ci="8" mb="0" cb="0"/><line nr="357" mi="0" ci="8" mb="0" cb="0"/><line
nr="360" mi="0" ci="10" mb="0" cb="0"/><line nr="361" mi="0" ci="11" mb="0"
cb="0"/><line nr="364" mi="1" ci="0" mb="0" cb="0"/><line nr="368" mi="0"
ci="3" mb="0" cb="0"/><line nr="369" mi="0" ci="1" mb="0" cb="0"/><line
nr="386" mi="0" ci="5" mb="0" cb="0"/><line nr="387" mi="0" ci="1" mb="0"
cb="0"/><line nr="398" mi="0" ci="4" mb="0" cb="0"/><line nr="399" mi="0"
ci="11" mb="0" cb="0"/><line nr="400" mi="0" ci="5" mb="0" cb="0"/><line
nr="401" mi="0" ci="4" mb="0" cb="2"/><line nr="402" mi="0" ci="15" mb="0"
cb="0"/><line nr="404" mi="0" ci="3" mb="0" cb="0"/><line nr="405" mi="0"
ci="1" mb="0" cb="0"/><line nr="406" mi="0" ci="2" mb="0" cb="0"/><line
nr="407" mi="0" ci="6" mb="0" cb="0"/><line nr="408" mi="0" ci="1" mb="0"
cb="0"/><line nr="410" mi="0" ci=
"1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="36"
covered="437"/><counter type="BRANCH" missed="5" covered="35"/><counter
type="LINE" missed="7" covered="81"/><counter type="COMPLEXITY" missed="5"
covered="28"/><counter type="METHOD" missed="0" covered="13"/><counter
type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile
name="TsaSelector.java"><line nr="57" mi="0" ci="5" mb="0" cb="0"/><line
nr="62" mi="0" ci="2" mb="0" cb="0"/><line nr="63" mi="0" ci="4" mb="0"
cb="0"/><line nr="65" mi="0" ci="11" mb="0" cb="2"/><line nr="66" mi="0"
ci="10" mb="0" cb="2"/><line nr="67" mi="0" ci="10" mb="0" cb="2"/><line
nr="68" mi="0" ci="10" mb="0" cb="2"/><line nr="69" mi="0" ci="11" mb="0"
cb="0"/><line nr="72" mi="0" ci="3" mb="0" cb="2"/><line nr="73" mi="0" ci="4"
mb="0" cb="0"/><line nr="75" mi="0" ci="4" mb="0" cb="0"/><line nr="76" mi="0"
ci="1" mb="0" cb="0"/><line nr="85" mi="0" ci="6" mb="0" cb="0"/><line nr="86"
mi="0" ci="9" mb="0" cb="2"/><line nr="87" mi="0" ci="11
" mb="0" cb="2"/><line nr="88" mi="0" ci="6" mb="0" cb="0"/><line nr="91"
mi="0" ci="4" mb="0" cb="0"/><line nr="92" mi="0" ci="2" mb="0" cb="0"/><line
nr="102" mi="0" ci="4" mb="0" cb="2"/><line nr="103" mi="0" ci="7" mb="0"
cb="0"/><line nr="105" mi="0" ci="1" mb="0" cb="0"/><line nr="109" mi="0"
ci="9" mb="0" cb="0"/><line nr="111" mi="0" ci="6" mb="0" cb="0"/><line
nr="117" mi="0" ci="2" mb="0" cb="0"/><line nr="118" mi="0" ci="3" mb="0"
cb="0"/><line nr="119" mi="0" ci="3" mb="0" cb="0"/><line nr="120" mi="0"
ci="3" mb="0" cb="0"/><line nr="121" mi="0" ci="3" mb="0" cb="0"/><line
nr="122" mi="0" ci="1" mb="0" cb="0"/><line nr="125" mi="0" ci="3" mb="0"
cb="0"/><line nr="129" mi="0" ci="3" mb="0" cb="0"/><line nr="133" mi="0"
ci="3" mb="0" cb="0"/><line nr="137" mi="0" ci="3" mb="0" cb="0"/><counter
type="INSTRUCTION" missed="0" covered="167"/><counter type="BRANCH" missed="0"
covered="16"/><counter type="LINE" missed="0" covered="33"/><counter
type="COMPLEXITY" missed="0" cover
ed="17"/><counter type="METHOD" missed="0" covered="9"/><counter type="CLASS"
missed="0" covered="2"/></sourcefile><sourcefile
name="JarsignerVerifyMojo.java"><line nr="42" mi="0" ci="3" mb="0"
cb="0"/><line nr="66" mi="0" ci="4" mb="0" cb="0"/><line nr="67" mi="0" ci="4"
mb="0" cb="0"/><line nr="68" mi="0" ci="2" mb="0" cb="0"/><line nr="73" mi="0"
ci="3" mb="0" cb="0"/><line nr="75" mi="0" ci="3" mb="0" cb="2"/><line nr="80"
mi="0" ci="3" mb="0" cb="0"/><line nr="81" mi="1" ci="0" mb="0" cb="0"/><line
nr="82" mi="12" ci="0" mb="0" cb="0"/><line nr="83" mi="6" ci="0" mb="0"
cb="0"/><line nr="84" mi="0" ci="1" mb="0" cb="0"/><line nr="86" mi="0" ci="2"
mb="0" cb="2"/><line nr="89" mi="0" ci="13" mb="0" cb="0"/><line nr="92" mi="0"
ci="1" mb="0" cb="0"/><line nr="97" mi="0" ci="4" mb="0" cb="0"/><line nr="98"
mi="0" ci="3" mb="0" cb="0"/><line nr="99" mi="0" ci="2" mb="0" cb="2"/><line
nr="100" mi="0" ci="10" mb="0" cb="0"/><line nr="101" mi="0" ci="11" mb="0"
cb="0"/><line nr="103"
mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="19"
covered="70"/><counter type="BRANCH" missed="0" covered="6"/><counter
type="LINE" missed="3" covered="17"/><counter type="COMPLEXITY" missed="0"
covered="7"/><counter type="METHOD" missed="0" covered="4"/><counter
type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION"
missed="264" covered="1188"/><counter type="BRANCH" missed="24"
covered="116"/><counter type="LINE" missed="42" covered="238"/><counter
type="COMPLEXITY" missed="22" covered="89"/><counter type="METHOD" missed="2"
covered="39"/><counter type="CLASS" missed="0" covered="5"/></package><package
name="org/apache/maven/plugins/maven_jarsigner_plugin"><class
name="org/apache/maven/plugins/maven_jarsigner_plugin/HelpMojo"
sourcefilename="HelpMojo.java"><method name="<init>" desc="()V"
line="28"><counter type="INSTRUCTION" missed="3" covered="0"/><counter
type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" co
vered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method
name="build" desc="()Lorg/w3c/dom/Document;" line="68"><counter
type="INSTRUCTION" missed="51" covered="0"/><counter type="BRANCH" missed="2"
covered="0"/><counter type="LINE" missed="13" covered="0"/><counter
type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1"
covered="0"/></method><method name="execute" desc="()V" line="100"><counter
type="INSTRUCTION" missed="178" covered="0"/><counter type="BRANCH" missed="20"
covered="0"/><counter type="LINE" missed="31" covered="0"/><counter
type="COMPLEXITY" missed="11" covered="0"/><counter type="METHOD" missed="1"
covered="0"/></method><method name="isNotEmpty" desc="(Ljava/lang/String;)Z"
line="165"><counter type="INSTRUCTION" missed="9" covered="0"/><counter
type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="1"
covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></met
hod><method name="getValue"
desc="(Lorg/w3c/dom/Node;Ljava/lang/String;)Ljava/lang/String;"
line="171"><counter type="INSTRUCTION" missed="5" covered="0"/><counter
type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1"
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method
name="getSingleChild"
desc="(Lorg/w3c/dom/Node;Ljava/lang/String;)Lorg/w3c/dom/Node;"
line="177"><counter type="INSTRUCTION" missed="44" covered="0"/><counter
type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6"
covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></method><method name="findNamedChild"
desc="(Lorg/w3c/dom/Node;Ljava/lang/String;)Ljava/util/List;"
line="191"><counter type="INSTRUCTION" missed="30" covered="0"/><counter
type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="7"
covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter
type="METHOD" missed="1"
covered="0"/></method><method name="findSingleChild"
desc="(Lorg/w3c/dom/Node;Ljava/lang/String;)Lorg/w3c/dom/Node;"
line="207"><counter type="INSTRUCTION" missed="32" covered="0"/><counter
type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6"
covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></method><method name="writeGoal"
desc="(Ljava/lang/StringBuilder;Ljava/lang/String;Lorg/w3c/dom/Element;)V"
line="222"><counter type="INSTRUCTION" missed="129" covered="0"/><counter
type="BRANCH" missed="20" covered="0"/><counter type="LINE" missed="23"
covered="0"/><counter type="COMPLEXITY" missed="11" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></method><method name="writeParameter"
desc="(Ljava/lang/StringBuilder;Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;)V"
line="262"><counter type="INSTRUCTION" missed="125" covered="0"/><counter
type="BRANCH" missed="18" covered="0"/><counter type="LINE" missed="22" co
vered="0"/><counter type="COMPLEXITY" missed="10" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></method><method name="repeat"
desc="(Ljava/lang/String;I)Ljava/lang/String;" line="310"><counter
type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="2"
covered="0"/><counter type="LINE" missed="4" covered="0"/><counter
type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1"
covered="0"/></method><method name="append"
desc="(Ljava/lang/StringBuilder;Ljava/lang/String;I)V" line="330"><counter
type="INSTRUCTION" missed="24" covered="0"/><counter type="BRANCH" missed="2"
covered="0"/><counter type="LINE" missed="4" covered="0"/><counter
type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1"
covered="0"/></method><method name="toLines"
desc="(Ljava/lang/String;III)Ljava/util/List;" line="348"><counter
type="INSTRUCTION" missed="42" covered="0"/><counter type="BRANCH" missed="2"
covered="0"/><counter type="LINE" miss
ed="6" covered="0"/><counter type="COMPLEXITY" missed="2"
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method
name="toLines" desc="(Ljava/util/List;Ljava/lang/String;II)V"
line="372"><counter type="INSTRUCTION" missed="104" covered="0"/><counter
type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="19"
covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter
type="METHOD" missed="1" covered="0"/></method><method name="getIndentLevel"
desc="(Ljava/lang/String;)I" line="421"><counter type="INSTRUCTION" missed="40"
covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter
type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="6"
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method
name="getPropertyFromExpression" desc="(Ljava/lang/String;)Ljava/lang/String;"
line="439"><counter type="INSTRUCTION" missed="26" covered="0"/><counter
type="BRANCH" missed="8" covered="0"/><counter type
="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="5"
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter
type="INSTRUCTION" missed="864" covered="0"/><counter type="BRANCH"
missed="112" covered="0"/><counter type="LINE" missed="156"
covered="0"/><counter type="COMPLEXITY" missed="72" covered="0"/><counter
type="METHOD" missed="16" covered="0"/><counter type="CLASS" missed="1"
covered="0"/></class><sourcefile name="HelpMojo.java"><line nr="28" mi="3"
ci="0" mb="0" cb="0"/><line nr="68" mi="4" ci="0" mb="0" cb="0"/><line nr="69"
mi="5" ci="0" mb="0" cb="0"/><line nr="71" mi="2" ci="0" mb="2" cb="0"/><line
nr="73" mi="5" ci="0" mb="0" cb="0"/><line nr="75" mi="2" ci="0" mb="0"
cb="0"/><line nr="76" mi="3" ci="0" mb="0" cb="0"/><line nr="77" mi="6" ci="0"
mb="0" cb="0"/><line nr="79" mi="1" ci="0" mb="0" cb="0"/><line nr="81" mi="7"
ci="0" mb="0" cb="0"/><line nr="83" mi="1" ci="0" mb="0" cb="0"/><line nr="85"
mi="7" ci="0" mb="0" cb="0"/><line
nr="87" mi="1" ci="0" mb="0" cb="0"/><line nr="89" mi="7" ci="0" mb="0"
cb="0"/><line nr="100" mi="3" ci="0" mb="2" cb="0"/><line nr="102" mi="4"
ci="0" mb="0" cb="0"/><line nr="103" mi="3" ci="0" mb="0" cb="0"/><line
nr="105" mi="3" ci="0" mb="2" cb="0"/><line nr="107" mi="4" ci="0" mb="0"
cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="111" mi="3"
ci="0" mb="0" cb="0"/><line nr="113" mi="4" ci="0" mb="0" cb="0"/><line
nr="114" mi="4" ci="0" mb="0" cb="0"/><line nr="117" mi="4" ci="0" mb="0"
cb="0"/><line nr="118" mi="4" ci="0" mb="0" cb="0"/><line nr="119" mi="19"
ci="0" mb="0" cb="0"/><line nr="120" mi="7" ci="0" mb="4" cb="0"/><line
nr="122" mi="15" ci="0" mb="0" cb="0"/><line nr="126" mi="3" ci="0" mb="2"
cb="0"/><line nr="128" mi="6" ci="0" mb="0" cb="0"/><line nr="132" mi="5"
ci="0" mb="0" cb="0"/><line nr="135" mi="7" ci="0" mb="0" cb="0"/><line
nr="136" mi="5" ci="0" mb="0" cb="0"/><line nr="139" mi="4" ci="0" mb="0"
cb="0"/><line nr="141" mi="4" ci="0" mb="0
" cb="0"/><line nr="143" mi="4" ci="0" mb="0" cb="0"/><line nr="145" mi="7"
ci="0" mb="4" cb="0"/><line nr="147" mi="21" ci="0" mb="2" cb="0"/><line
nr="148" mi="5" ci="0" mb="0" cb="0"/><line nr="151" mi="10" ci="0" mb="2"
cb="0"/><line nr="153" mi="6" ci="0" mb="0" cb="0"/><line nr="154" mi="1"
ci="0" mb="0" cb="0"/><line nr="156" mi="4" ci="0" mb="2" cb="0"/><line
nr="158" mi="5" ci="0" mb="0" cb="0"/><line nr="160" mi="1" ci="0" mb="0"
cb="0"/><line nr="165" mi="9" ci="0" mb="4" cb="0"/><line nr="171" mi="5"
ci="0" mb="0" cb="0"/><line nr="177" mi="4" ci="0" mb="0" cb="0"/><line
nr="178" mi="3" ci="0" mb="2" cb="0"/><line nr="180" mi="14" ci="0" mb="0"
cb="0"/><line nr="182" mi="4" ci="0" mb="2" cb="0"/><line nr="184" mi="14"
ci="0" mb="0" cb="0"/><line nr="186" mi="5" ci="0" mb="0" cb="0"/><line
nr="191" mi="4" ci="0" mb="0" cb="0"/><line nr="192" mi="3" ci="0" mb="0"
cb="0"/><line nr="193" mi="8" ci="0" mb="2" cb="0"/><line nr="195" mi="4"
ci="0" mb="0" cb="0"/><line nr="196"
mi="5" ci="0" mb="2" cb="0"/><line nr="198" mi="4" ci="0" mb="0" cb="0"/><line
nr="201" mi="2" ci="0" mb="0" cb="0"/><line nr="207" mi="4" ci="0" mb="0"
cb="0"/><line nr="208" mi="3" ci="0" mb="2" cb="0"/><line nr="210" mi="2"
ci="0" mb="0" cb="0"/><line nr="212" mi="4" ci="0" mb="2" cb="0"/><line
nr="214" mi="14" ci="0" mb="0" cb="0"/><line nr="216" mi="5" ci="0" mb="0"
cb="0"/><line nr="222" mi="4" ci="0" mb="0" cb="0"/><line nr="223" mi="4"
ci="0" mb="0" cb="0"/><line nr="224" mi="4" ci="0" mb="0" cb="0"/><line
nr="225" mi="12" ci="0" mb="6" cb="0"/><line nr="227" mi="14" ci="0" mb="0"
cb="0"/><line nr="228" mi="4" ci="0" mb="0" cb="0"/><line nr="229" mi="6"
ci="0" mb="4" cb="0"/><line nr="231" mi="13" ci="0" mb="0" cb="0"/><line
nr="232" mi="5" ci="0" mb="4" cb="0"/><line nr="234" mi="5" ci="0" mb="0"
cb="0"/><line nr="235" mi="7" ci="0" mb="0" cb="0"/><line nr="238" mi="2"
ci="0" mb="2" cb="0"/><line nr="240" mi="6" ci="0" mb="0" cb="0"/><line
nr="242" mi="5" ci="0" mb="0" cb="
0"/><line nr="244" mi="3" ci="0" mb="2" cb="0"/><line nr="246" mi="4" ci="0"
mb="0" cb="0"/><line nr="247" mi="4" ci="0" mb="0" cb="0"/><line nr="248"
mi="5" ci="0" mb="0" cb="0"/><line nr="249" mi="5" ci="0" mb="0" cb="0"/><line
nr="251" mi="10" ci="0" mb="2" cb="0"/><line nr="253" mi="5" ci="0" mb="0"
cb="0"/><line nr="254" mi="1" ci="0" mb="0" cb="0"/><line nr="257" mi="1"
ci="0" mb="0" cb="0"/><line nr="262" mi="4" ci="0" mb="0" cb="0"/><line
nr="263" mi="4" ci="0" mb="0" cb="0"/><line nr="265" mi="2" ci="0" mb="0"
cb="0"/><line nr="266" mi="2" ci="0" mb="2" cb="0"/><line nr="268" mi="5"
ci="0" mb="0" cb="0"/><line nr="271" mi="2" ci="0" mb="0" cb="0"/><line
nr="272" mi="6" ci="0" mb="4" cb="0"/><line nr="274" mi="13" ci="0" mb="0"
cb="0"/><line nr="276" mi="12" ci="0" mb="0" cb="0"/><line nr="277" mi="4"
ci="0" mb="0" cb="0"/><line nr="278" mi="6" ci="0" mb="4" cb="0"/><line
nr="280" mi="13" ci="0" mb="0" cb="0"/><line nr="281" mi="5" ci="0" mb="0"
cb="0"/><line nr="283" mi="3"
ci="0" mb="2" cb="0"/><line nr="284" mi="5" ci="0" mb="0" cb="0"/><line
nr="286" mi="6" ci="0" mb="2" cb="0"/><line nr="288" mi="5" ci="0" mb="0"
cb="0"/><line nr="290" mi="6" ci="0" mb="4" cb="0"/><line nr="292" mi="4"
ci="0" mb="0" cb="0"/><line nr="293" mi="12" ci="0" mb="0" cb="0"/><line
nr="296" mi="5" ci="0" mb="0" cb="0"/><line nr="297" mi="1" ci="0" mb="0"
cb="0"/><line nr="310" mi="8" ci="0" mb="0" cb="0"/><line nr="312" mi="7"
ci="0" mb="2" cb="0"/><line nr="314" mi="4" ci="0" mb="0" cb="0"/><line
nr="317" mi="3" ci="0" mb="0" cb="0"/><line nr="330" mi="16" ci="0" mb="2"
cb="0"/><line nr="332" mi="6" ci="0" mb="0" cb="0"/><line nr="333" mi="1"
ci="0" mb="0" cb="0"/><line nr="334" mi="1" ci="0" mb="0" cb="0"/><line
nr="348" mi="4" ci="0" mb="0" cb="0"/><line nr="350" mi="4" ci="0" mb="0"
cb="0"/><line nr="352" mi="4" ci="0" mb="0" cb="0"/><line nr="354" mi="16"
ci="0" mb="2" cb="0"/><line nr="356" mi="12" ci="0" mb="0" cb="0"/><line
nr="359" mi="2" ci="0" mb="0" cb="0"/><l
ine nr="372" mi="3" ci="0" mb="0" cb="0"/><line nr="373" mi="5" ci="0" mb="0"
cb="0"/><line nr="375" mi="4" ci="0" mb="0" cb="0"/><line nr="377" mi="16"
ci="0" mb="2" cb="0"/><line nr="379" mi="3" ci="0" mb="2" cb="0"/><line
nr="381" mi="7" ci="0" mb="2" cb="0"/><line nr="383" mi="5" ci="0" mb="0"
cb="0"/><line nr="384" mi="3" ci="0" mb="0" cb="0"/><line nr="385" mi="9"
ci="0" mb="0" cb="0"/><line nr="389" mi="4" ci="0" mb="0" cb="0"/><line
nr="393" mi="8" ci="0" mb="2" cb="0"/><line nr="395" mi="4" ci="0" mb="0"
cb="0"/><line nr="396" mi="3" ci="0" mb="2" cb="0"/><line nr="398" mi="12"
ci="0" mb="0" cb="0"/><line nr="400" mi="3" ci="0" mb="2" cb="0"/><line
nr="402" mi="5" ci="0" mb="0" cb="0"/><line nr="406" mi="4" ci="0" mb="0"
cb="0"/><line nr="410" mi="5" ci="0" mb="0" cb="0"/><line nr="411" mi="1"
ci="0" mb="0" cb="0"/><line nr="421" mi="2" ci="0" mb="0" cb="0"/><line
nr="422" mi="13" ci="0" mb="4" cb="0"/><line nr="424" mi="1" ci="0" mb="0"
cb="0"/><line nr="426" mi="15" ci="0
" mb="4" cb="0"/><line nr="428" mi="5" ci="0" mb="2" cb="0"/><line nr="430"
mi="1" ci="0" mb="0" cb="0"/><line nr="431" mi="1" ci="0" mb="0" cb="0"/><line
nr="434" mi="2" ci="0" mb="0" cb="0"/><line nr="439" mi="12" ci="0" mb="6"
cb="0"/><line nr="440" mi="4" ci="0" mb="2" cb="0"/><line nr="443" mi="8"
ci="0" mb="0" cb="0"/><line nr="446" mi="2" ci="0" mb="0" cb="0"/><counter
type="INSTRUCTION" missed="864" covered="0"/><counter type="BRANCH"
missed="112" covered="0"/><counter type="LINE" missed="156"
covered="0"/><counter type="COMPLEXITY" missed="72" covered="0"/><counter
type="METHOD" missed="16" covered="0"/><counter type="CLASS" missed="1"
covered="0"/></sourcefile><counter type="INSTRUCTION" missed="864"
covered="0"/><counter type="BRANCH" missed="112" covered="0"/><counter
type="LINE" missed="156" covered="0"/><counter type="COMPLEXITY" missed="72"
covered="0"/><counter type="METHOD" missed="16" covered="0"/><counter
type="CLASS" missed="1" covered="0"/></package><counter typ
e="INSTRUCTION" missed="1128" covered="1188"/><counter type="BRANCH"
missed="136" covered="116"/><counter type="LINE" missed="198"
covered="238"/><counter type="COMPLEXITY" missed="94" covered="89"/><counter
type="METHOD" missed="18" covered="39"/><counter type="CLASS" missed="1"
covered="5"/></report>
\ No newline at end of file
Propchange:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/jacoco.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.html
==============================================================================
---
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.html
(added)
+++
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.html
Tue Sep 3 16:39:49 2024
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html
xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta
http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link
rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link
rel="shortcut icon" href="../jacoco-resources/report.gif"
type="image/gif"/><title>AbstractJarsignerMojo</title><script
type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body
onload="initialSort(['breadcrumb'])"><div class="breadcrumb"
id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html"
class="el_session">Sessions</a></span><a href="../index.html"
class="el_report">Apache Maven Jarsigner Plugin</a> > <a href="index.html"
class="el_package">org.apache.maven.plugins.jarsigner</a> > <span
class="el_class">AbstractJarsignerMojo</span></div><h1>AbstractJarsignerMojo</h1><table
class="coverag
e" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a"
onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b"
onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2"
id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d"
onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e"
onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f"
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g"
onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h"
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i"
onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j"
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k"
onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td
class="bar">209 of 723</td><td class="ctr2">71%</td><td class="bar">19 of
78</td><td class="ctr2">75%</td><td
class="ctr1">17</td><td class="ctr2">54</td><td class="ctr1">32</td><td
class="ctr2">139</td><td class="ctr1">2</td><td
class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a12"><a
href="AbstractJarsignerMojo.java.html#L460"
class="el_method">processArchive(File)</a></td><td class="bar" id="b0"><img
src="../jacoco-resources/redbar.gif" width="53" height="10" title="143"
alt="143"/><img src="../jacoco-resources/greenbar.gif" width="66" height="10"
title="178" alt="178"/></td><td class="ctr2" id="c11">55%</td><td class="bar"
id="d0"><img src="../jacoco-resources/redbar.gif" width="55" height="10"
title="12" alt="12"/><img src="../jacoco-resources/greenbar.gif" width="64"
height="10" title="14" alt="14"/></td><td class="ctr2" id="e6">53%</td><td
class="ctr1" id="f0">8</td><td class="ctr2" id="g0">14</td><td class="ctr1"
id="h0">22</td><td class="ctr2" id="i0">59</td><td class="ctr1"
id="j2">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a
href="AbstractJarsignerMojo.java.htm
l#L561" class="el_method">decrypt(String)</a></td><td class="bar" id="b1"><img
src="../jacoco-resources/redbar.gif" width="10" height="10" title="28"
alt="28"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10"
title="5" alt="5"/></td><td class="ctr2" id="c12">15%</td><td class="bar"
id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f8">0</td><td
class="ctr2" id="g9">1</td><td class="ctr1" id="h1">3</td><td class="ctr2"
id="i5">4</td><td class="ctr1" id="j3">0</td><td class="ctr2"
id="k1">1</td></tr><tr><td id="a3"><a
href="AbstractJarsignerMojo.java.html#L295"
class="el_method">findJarfiles()</a></td><td class="bar" id="b2"><img
src="../jacoco-resources/redbar.gif" width="6" height="10" title="17"
alt="17"/><img src="../jacoco-resources/greenbar.gif" width="55" height="10"
title="149" alt="149"/></td><td class="ctr2" id="c7">89%</td><td class="bar"
id="d1"><img src="../jacoco-resources/redbar.gif" width="9" height="10"
title="2" alt="2"/><img src="../jac
oco-resources/greenbar.gif" width="110" height="10" title="24"
alt="24"/></td><td class="ctr2" id="e3">92%</td><td class="ctr1"
id="f1">2</td><td class="ctr2" id="g1">14</td><td class="ctr1"
id="h2">2</td><td class="ctr2" id="i1">31</td><td class="ctr1"
id="j4">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a5"><a
href="AbstractJarsignerMojo.java.html#L405"
class="el_method">getFileFromArtifact(Artifact)</a></td><td class="bar"
id="b3"><img src="../jacoco-resources/redbar.gif" width="1" height="10"
title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="16"
height="10" title="43" alt="43"/></td><td class="ctr2" id="c8">89%</td><td
class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="4"
height="10" title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif"
width="32" height="10" title="7" alt="7"/></td><td class="ctr2"
id="e4">87%</td><td class="ctr1" id="f3">1</td><td class="ctr2"
id="g2">5</td><td class="ctr1" id="h3">1</td><td class="ctr2"
id="i3">9</td><td class="ctr1" id="j5">0</td><td class="ctr2"
id="k3">1</td></tr><tr><td id="a4"><a
href="AbstractJarsignerMojo.java.html#L370"
class="el_method">getCommandlineInfo(Commandline)</a></td><td class="bar"
id="b4"><img src="../jacoco-resources/redbar.gif" width="1" height="10"
title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="4"
height="10" title="13" alt="13"/></td><td class="ctr2" id="c9">72%</td><td
class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="4"
height="10" title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif"
width="4" height="10" title="1" alt="1"/></td><td class="ctr2"
id="e7">50%</td><td class="ctr1" id="f4">1</td><td class="ctr2"
id="g5">2</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i4">5</td><td
class="ctr1" id="j6">0</td><td class="ctr2" id="k4">1</td></tr><tr><td
id="a6"><a href="AbstractJarsignerMojo.java.html#L580"
class="el_method">getMessage(String, Object[])</a></td><td class="bar" id="b5">
<img src="../jacoco-resources/redbar.gif" width="1" height="10" title="5"
alt="5"/><img src="../jacoco-resources/greenbar.gif" width="4" height="10"
title="12" alt="12"/></td><td class="ctr2" id="c10">70%</td><td class="bar"
id="d5"><img src="../jacoco-resources/redbar.gif" width="4" height="10"
title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif" width="4"
height="10" title="1" alt="1"/></td><td class="ctr2" id="e8">50%</td><td
class="ctr1" id="f5">1</td><td class="ctr2" id="g6">2</td><td class="ctr1"
id="h5">1</td><td class="ctr2" id="i8">3</td><td class="ctr1" id="j7">0</td><td
class="ctr2" id="k5">1</td></tr><tr><td id="a8"><a
href="AbstractJarsignerMojo.java.html#L380"
class="el_method">getStoretype()</a></td><td class="bar" id="b6"><img
src="../jacoco-resources/redbar.gif" width="1" height="10" title="3"
alt="3"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d10"/><td
class="ctr2" id="e10">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2"
id="g10">1
</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i10">1</td><td
class="ctr1" id="j0">1</td><td class="ctr2" id="k6">1</td></tr><tr><td
id="a7"><a href="AbstractJarsignerMojo.java.html#L384"
class="el_method">getStorepass()</a></td><td class="bar" id="b7"><img
src="../jacoco-resources/redbar.gif" width="1" height="10" title="3"
alt="3"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d11"/><td
class="ctr2" id="e11">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2"
id="g11">1</td><td class="ctr1" id="h7">1</td><td class="ctr2"
id="i11">1</td><td class="ctr1" id="j1">1</td><td class="ctr2"
id="k7">1</td></tr><tr><td id="a2"><a
href="AbstractJarsignerMojo.java.html#L270"
class="el_method">execute()</a></td><td class="bar" id="b8"><img
src="../jacoco-resources/greenbar.gif" width="20" height="10" title="55"
alt="55"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d6"><img
src="../jacoco-resources/greenbar.gif" width="18" height="10" title="4"
alt="4"/>
</td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f9">0</td><td
class="ctr2" id="g4">3</td><td class="ctr1" id="h8">0</td><td class="ctr2"
id="i2">12</td><td class="ctr1" id="j8">0</td><td class="ctr2"
id="k8">1</td></tr><tr><td id="a0"><a
href="AbstractJarsignerMojo.java.html#L58"
class="el_method">AbstractJarsignerMojo()</a></td><td class="bar" id="b9"><img
src="../jacoco-resources/greenbar.gif" width="5" height="10" title="15"
alt="15"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d12"/><td
class="ctr2" id="e12">n/a</td><td class="ctr1" id="f10">0</td><td class="ctr2"
id="g12">1</td><td class="ctr1" id="h9">0</td><td class="ctr2"
id="i9">3</td><td class="ctr1" id="j9">0</td><td class="ctr2"
id="k9">1</td></tr><tr><td id="a13"><a
href="AbstractJarsignerMojo.java.html#L447"
class="el_method">processArchives(List)</a></td><td class="bar" id="b10"><img
src="../jacoco-resources/greenbar.gif" width="5" height="10" title="15"
alt="15"/></td><td class="ctr2" id="c
2">100%</td><td class="bar" id="d7"><img
src="../jacoco-resources/greenbar.gif" width="9" height="10" title="2"
alt="2"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1"
id="f11">0</td><td class="ctr2" id="g7">2</td><td class="ctr1"
id="h10">0</td><td class="ctr2" id="i6">4</td><td class="ctr1"
id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a9"><a
href="AbstractJarsignerMojo.java.html#L595"
class="el_method">getToolchain()</a></td><td class="bar" id="b11"><img
src="../jacoco-resources/greenbar.gif" width="5" height="10" title="14"
alt="14"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d8"><img
src="../jacoco-resources/greenbar.gif" width="9" height="10" title="2"
alt="2"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1"
id="f12">0</td><td class="ctr2" id="g8">2</td><td class="ctr1"
id="h11">0</td><td class="ctr2" id="i7">4</td><td class="ctr1"
id="j11">0</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a10"><a
href="AbstractJarsignerM
ojo.java.html#L394" class="el_method">isZipFile(Artifact)</a></td><td
class="bar" id="b12"><img src="../jacoco-resources/greenbar.gif" width="4"
height="10" title="13" alt="13"/></td><td class="ctr2" id="c4">100%</td><td
class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="9"
height="10" title="2" alt="2"/><img src="../jacoco-resources/greenbar.gif"
width="18" height="10" title="4" alt="4"/></td><td class="ctr2"
id="e5">66%</td><td class="ctr1" id="f2">2</td><td class="ctr2"
id="g3">4</td><td class="ctr1" id="h12">0</td><td class="ctr2"
id="i12">1</td><td class="ctr1" id="j12">0</td><td class="ctr2"
id="k12">1</td></tr><tr><td id="a11"><a
href="AbstractJarsignerMojo.java.html#L429"
class="el_method">preProcessArchive(File)</a></td><td class="bar" id="b13"/><td
class="ctr2" id="c5">100%</td><td class="bar" id="d13"/><td class="ctr2"
id="e13">n/a</td><td class="ctr1" id="f13">0</td><td class="ctr2"
id="g13">1</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i13
">1</td><td class="ctr1" id="j13">0</td><td class="ctr2"
id="k13">1</td></tr><tr><td id="a14"><a
href="AbstractJarsignerMojo.java.html#L438"
class="el_method">validateParameters()</a></td><td class="bar" id="b14"/><td
class="ctr2" id="c6">100%</td><td class="bar" id="d14"/><td class="ctr2"
id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2"
id="g14">1</td><td class="ctr1" id="h14">0</td><td class="ctr2"
id="i14">1</td><td class="ctr1" id="j14">0</td><td class="ctr2"
id="k14">1</td></tr></tbody></table><div class="footer"><span
class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a>
0.8.12.202403310830</span></div></body></html>
\ No newline at end of file
Propchange:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.html
------------------------------------------------------------------------------
svn:eol-style = native
Added:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.java.html
==============================================================================
---
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.java.html
(added)
+++
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.java.html
Tue Sep 3 16:39:49 2024
@@ -0,0 +1,603 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html
xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta
http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link
rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link
rel="shortcut icon" href="../jacoco-resources/report.gif"
type="image/gif"/><title>AbstractJarsignerMojo.java</title><link
rel="stylesheet" href="../jacoco-resources/prettify.css"
type="text/css"/><script type="text/javascript"
src="../jacoco-resources/prettify.js"></script></head><body
onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb"
id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html"
class="el_session">Sessions</a></span><a href="../index.html"
class="el_report">Apache Maven Jarsigner Plugin</a> > <a
href="index.source.html"
class="el_package">org.apache.maven.plugins.jarsigner</a> > <
span
class="el_source">AbstractJarsignerMojo.java</span></div><h1>AbstractJarsignerMojo.java</h1><pre
class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugins.jarsigner;
+
+import java.io.File;
+import java.io.IOException;
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Optional;
+import java.util.ResourceBundle;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.execution.MavenSession;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.settings.Settings;
+import org.apache.maven.shared.jarsigner.JarSigner;
+import org.apache.maven.shared.jarsigner.JarSignerRequest;
+import org.apache.maven.shared.jarsigner.JarSignerUtil;
+import org.apache.maven.shared.utils.ReaderFactory;
+import org.apache.maven.shared.utils.StringUtils;
+import org.apache.maven.shared.utils.cli.Commandline;
+import org.apache.maven.shared.utils.cli.javatool.JavaToolException;
+import org.apache.maven.shared.utils.io.FileUtils;
+import org.apache.maven.toolchain.Toolchain;
+import org.apache.maven.toolchain.ToolchainManager;
+import org.sonatype.plexus.components.sec.dispatcher.SecDispatcher;
+import org.sonatype.plexus.components.sec.dispatcher.SecDispatcherException;
+
+/**
+ * Maven Jarsigner Plugin base class.
+ *
+ * @author <a href="[email protected]">Christian
Schulte</a>
+ */
+<span class="fc" id="L58">public abstract class AbstractJarsignerMojo extends
AbstractMojo {</span>
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.verbose", defaultValue =
"false")
+ private boolean verbose;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.keystore")
+ private String keystore;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.storetype")
+ private String storetype;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.storepass")
+ private String storepass;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.providerName")
+ private String providerName;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.providerClass")
+ private String providerClass;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.providerArg")
+ private String providerArg;
+
+ /**
+ * See <a
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html#Options">options</a>.
+ */
+ @Parameter(property = "jarsigner.alias")
+ private String alias;
+
+ /**
+ * The maximum memory available to the JAR signer, e.g.
<code>256M</code>. See <a
+ *
href="https://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html#Xms">-Xmx</a>
for more details.
+ */
+ @Parameter(property = "jarsigner.maxMemory")
+ private String maxMemory;
+
+ /**
+ * Archive to process. If set, neither the project artifact nor any
attachments or archive sets are processed.
+ */
+ @Parameter(property = "jarsigner.archive")
+ private File archive;
+
+ /**
+ * The base directory to scan for JAR files using Ant-like
inclusion/exclusion patterns.
+ *
+ * @since 1.1
+ */
+ @Parameter(property = "jarsigner.archiveDirectory")
+ private File archiveDirectory;
+
+ /**
+ * The Ant-like inclusion patterns used to select JAR files to process.
The patterns must be relative to the
+ * directory given by the parameter {@link #archiveDirectory}. By default,
the pattern
+ * <code>&#42;&#42;/&#42;.?ar</code> is used.
+ *
+ * @since 1.1
+ */
+<span class="fc" id="L136"> @Parameter</span>
+ private String[] includes = {"**/*.?ar"};
+
+ /**
+ * The Ant-like exclusion patterns used to exclude JAR files from
processing. The patterns must be relative to the
+ * directory given by the parameter {@link #archiveDirectory}.
+ *
+ * @since 1.1
+ */
+<span class="fc" id="L145"> @Parameter</span>
+ private String[] excludes = {};
+
+ /**
+ * List of additional arguments to append to the jarsigner command line.
Each argument should be specified as a
+ * separate element. For example, to specify the name of the signed jar,
two elements are needed:
+ * <ul>
+ * <li>Alternative using the command line: {@code
-Djarsigner.arguments="-signedjar,my-project_signed.jar"}</li>
+ * <li>Alternative using the Maven POM configuration:</li>
+ * </ul>
+ * <pre>
+ * {@code
+ * <configuration>
+ * <arguments>
+ * <argument>-signedjar</argument>
+ * <argument>my-project_signed.jar</argument>
+ * </arguments>
+ * </configuration>
+ * }</pre>
+ */
+ @Parameter(property = "jarsigner.arguments")
+ private String[] arguments;
+
+ /**
+ * Set to {@code true} to disable the plugin.
+ */
+ @Parameter(property = "jarsigner.skip", defaultValue =
"false")
+ private boolean skip;
+
+ /**
+ * Controls processing of the main artifact produced by the project.
+ *
+ * @since 1.1
+ */
+ @Parameter(property = "jarsigner.processMainArtifact",
defaultValue = "true")
+ private boolean processMainArtifact;
+
+ /**
+ * Controls processing of project attachments. If enabled, attached
artifacts that are no JAR/ZIP files will be
+ * automatically excluded from processing.
+ *
+ * @since 1.1
+ */
+ @Parameter(property = "jarsigner.processAttachedArtifacts",
defaultValue = "true")
+ private boolean processAttachedArtifacts;
+
+ /**
+ * Must be set to true if the password must be given via a protected
+ * authentication path such as a dedicated PIN reader.
+ *
+ * @since 1.3
+ */
+ @Parameter(property = "jarsigner.protectedAuthenticationPath",
defaultValue = "false")
+ private boolean protectedAuthenticationPath;
+
+ /**
+ * A set of artifact classifiers describing the project attachments that
should be processed. This parameter is only
+ * relevant if {@link #processAttachedArtifacts} is
<code>true</code>. If empty, all attachments are included.
+ *
+ * @since 1.2
+ */
+ @Parameter
+ private String[] includeClassifiers;
+
+ /**
+ * A set of artifact classifiers describing the project attachments that
should not be processed. This parameter is
+ * only relevant if {@link #processAttachedArtifacts} is
<code>true</code>. If empty, no attachments are excluded.
+ *
+ * @since 1.2
+ */
+ @Parameter
+ private String[] excludeClassifiers;
+
+ /**
+ * The Maven project.
+ */
+ @Parameter(defaultValue = "${project}", readonly = true,
required = true)
+ private MavenProject project;
+
+ /**
+ * The Maven settings.
+ *
+ * @since 1.5
+ */
+ @Parameter(defaultValue = "${settings}", readonly = true,
required = true)
+ private Settings settings;
+
+ /**
+ * Location of the working directory.
+ *
+ * @since 1.3
+ */
+ @Parameter(defaultValue = "${project.basedir}")
+ private File workingDirectory;
+
+ /**
+ */
+ @Component
+ private JarSigner jarSigner;
+
+ /**
+ * The current build session instance. This is used for
+ * toolchain manager API calls.
+ *
+ * @since 1.3
+ */
+ @Parameter(defaultValue = "${session}", readonly = true,
required = true)
+ private MavenSession session;
+
+ /**
+ * To obtain a toolchain if possible.
+ *
+ * @since 1.3
+ */
+ @Component
+ private ToolchainManager toolchainManager;
+
+ /**
+ * @since 1.3.2
+ */
+ @Component(hint = "mng-4384")
+ private SecDispatcher securityDispatcher;
+
+ @Override
+ public final void execute() throws MojoExecutionException {
+<span class="fc bfc" id="L270" title="All 2 branches covered."> if
(this.skip) {</span>
+<span class="fc" id="L271">
getLog().info(getMessage("disabled"));</span>
+<span class="fc" id="L272"> return;</span>
+ }
+
+<span class="fc" id="L275"> validateParameters();</span>
+
+<span class="fc" id="L277"> Toolchain toolchain = getToolchain();</span>
+<span class="fc bfc" id="L278" title="All 2 branches covered."> if
(toolchain != null) {</span>
+<span class="fc" id="L279"> getLog().info("Toolchain in
maven-jarsigner-plugin: " + toolchain);</span>
+<span class="fc" id="L280">
jarSigner.setToolchain(toolchain);</span>
+ }
+
+<span class="fc" id="L283"> List<File> archives =
findJarfiles();</span>
+<span class="fc" id="L284"> processArchives(archives);</span>
+<span class="fc" id="L285">
getLog().info(getMessage("processed", archives.size()));</span>
+<span class="fc" id="L286"> }</span>
+
+ /**
+ * Finds all jar files, by looking at the Maven project and user
configuration.
+ *
+ * @return a List of File objects
+ * @throws MojoExecutionException if it was not possible to build a list
of jar files
+ */
+ private List<File> findJarfiles() throws MojoExecutionException {
+<span class="fc bfc" id="L295" title="All 2 branches covered."> if
(this.archive != null) {</span>
+ // Only process this, but nothing more
+<span class="fc" id="L297"> return
Arrays.asList(this.archive);</span>
+ }
+
+<span class="fc" id="L300"> List<File> archives = new
ArrayList<>();</span>
+<span class="fc bfc" id="L301" title="All 2 branches covered."> if
(processMainArtifact) {</span>
+<span class="fc" id="L302">
getFileFromArtifact(this.project.getArtifact()).ifPresent(archives::add);</span>
+ }
+
+<span class="fc bfc" id="L305" title="All 2 branches covered."> if
(processAttachedArtifacts) {</span>
+<span class="fc" id="L306"> Collection<String> includes = new
HashSet<>();</span>
+<span class="fc bfc" id="L307" title="All 2 branches covered."> if
(includeClassifiers != null) {</span>
+<span class="fc" id="L308">
includes.addAll(Arrays.asList(includeClassifiers));</span>
+ }
+
+<span class="fc" id="L311"> Collection<String> excludes = new
HashSet<>();</span>
+<span class="fc bfc" id="L312" title="All 2 branches covered."> if
(excludeClassifiers != null) {</span>
+<span class="fc" id="L313">
excludes.addAll(Arrays.asList(excludeClassifiers));</span>
+ }
+
+<span class="fc bfc" id="L316" title="All 2 branches covered."> for
(Artifact artifact : this.project.getAttachedArtifacts()) {</span>
+<span class="fc bfc" id="L317" title="All 4 branches covered.">
if (!includes.isEmpty() &&
!includes.contains(artifact.getClassifier())) {</span>
+<span class="fc" id="L318"> continue;</span>
+ }
+
+<span class="fc bfc" id="L321" title="All 2 branches covered.">
if (excludes.contains(artifact.getClassifier())) {</span>
+<span class="fc" id="L322"> continue;</span>
+ }
+
+<span class="fc" id="L325">
getFileFromArtifact(artifact).ifPresent(archives::add);</span>
+<span class="fc" id="L326"> }</span>
+<span class="fc" id="L327"> } else {</span>
+<span class="fc bfc" id="L328" title="All 2 branches covered."> if
(verbose) {</span>
+<span class="fc" id="L329">
getLog().info(getMessage("ignoringAttachments"));</span>
+ } else {
+<span class="fc" id="L331">
getLog().debug(getMessage("ignoringAttachments"));</span>
+ }
+ }
+
+<span class="fc bfc" id="L335" title="All 2 branches covered."> if
(archiveDirectory != null) {</span>
+<span class="pc bpc" id="L336" title="1 of 2 branches missed.">
String includeList = (includes != null) ? StringUtils.join(includes,
",") : null;</span>
+<span class="pc bpc" id="L337" title="1 of 2 branches missed.">
String excludeList = (excludes != null) ? StringUtils.join(excludes,
",") : null;</span>
+
+ try {
+<span class="fc" id="L340">
archives.addAll(FileUtils.getFiles(archiveDirectory, includeList,
excludeList));</span>
+<span class="nc" id="L341"> } catch (IOException e) {</span>
+<span class="nc" id="L342"> throw new
MojoExecutionException("Failed to scan archive directory for JARs: "
+ e.getMessage(), e);</span>
+<span class="fc" id="L343"> }</span>
+ }
+
+<span class="fc" id="L346"> return archives;</span>
+ }
+
+ /**
+ * Creates the jar signer request to be executed.
+ *
+ * @param archive the archive file to treat by jarsigner
+ * @return the request
+ * @throws MojoExecutionException if an exception occurs
+ * @since 1.3
+ */
+ protected abstract JarSignerRequest createRequest(File archive) throws
MojoExecutionException;
+
+ /**
+ * Gets a string representation of a {@code Commandline}.
+ * <p>
+ * This method creates the string representation by calling {@code
commandLine.toString()} by default.
+ * </p>
+ *
+ * @param commandLine The {@code Commandline} to get a string
representation of.
+ * @return The string representation of {@code commandLine}.
+ * @throws NullPointerException if {@code commandLine} is {@code null}
+ */
+ protected String getCommandlineInfo(final Commandline commandLine) {
+<span class="pc bpc" id="L370" title="1 of 2 branches missed."> if
(commandLine == null) {</span>
+<span class="nc" id="L371"> throw new
NullPointerException("commandLine");</span>
+ }
+
+<span class="fc" id="L374"> String commandLineInfo =
commandLine.toString();</span>
+<span class="fc" id="L375"> commandLineInfo =
StringUtils.replace(commandLineInfo, this.storepass,
"'*****'");</span>
+<span class="fc" id="L376"> return commandLineInfo;</span>
+ }
+
+ public String getStoretype() {
+<span class="nc" id="L380"> return storetype;</span>
+ }
+
+ public String getStorepass() {
+<span class="nc" id="L384"> return storepass;</span>
+ }
+
+ /**
+ * Checks whether the specified artifact is a ZIP file.
+ *
+ * @param artifact The artifact to check, may be
<code>null</code>.
+ * @return <code>true</code> if the artifact looks like a ZIP
file, <code>false</code> otherwise.
+ */
+ private static boolean isZipFile(final Artifact artifact) {
+<span class="pc bpc" id="L394" title="2 of 6 branches missed."> return
artifact != null && artifact.getFile() != null &&
JarSignerUtil.isZipFile(artifact.getFile());</span>
+ }
+
+ /**
+ * Examines an Artifact and extract the File object pointing to the
Artifact jar file.
+ *
+ * @param artifact the artifact to examine
+ * @return An Optional containing the File, or Optional.empty() if the
File is not a jar file.
+ * @throws NullPointerException if {@code artifact} is {@code null}
+ */
+ private Optional<File> getFileFromArtifact(final Artifact artifact) {
+<span class="pc bpc" id="L405" title="1 of 2 branches missed."> if
(artifact == null) {</span>
+<span class="nc" id="L406"> throw new
NullPointerException("artifact");</span>
+ }
+
+<span class="fc bfc" id="L409" title="All 2 branches covered."> if
(isZipFile(artifact)) {</span>
+<span class="fc" id="L410"> return
Optional.of(artifact.getFile());</span>
+ }
+
+<span class="fc bfc" id="L413" title="All 2 branches covered."> if
(this.verbose) {</span>
+<span class="fc" id="L414">
getLog().info(getMessage("unsupported", artifact));</span>
+<span class="fc bfc" id="L415" title="All 2 branches covered."> } else
if (getLog().isDebugEnabled()) {</span>
+<span class="fc" id="L416">
getLog().debug(getMessage("unsupported", artifact));</span>
+ }
+<span class="fc" id="L418"> return Optional.empty();</span>
+ }
+
+ /**
+ * Pre-processes a given archive.
+ *
+ * @param archive The archive to process, must not be
<code>null</code>.
+ * @throws MojoExecutionException if pre-processing failed
+ */
+ protected void preProcessArchive(final File archive) throws
MojoExecutionException {
+ // Default implementation does nothing
+<span class="fc" id="L429"> }</span>
+
+ /**
+ * Validate the user supplied configuration/parameters.
+ *
+ * @throws MojoExecutionException if the user supplied configuration make
further execution impossible
+ */
+ protected void validateParameters() throws MojoExecutionException {
+ // Default implementation does nothing
+<span class="fc" id="L438"> }</span>
+
+ /**
+ * Process (sign/verify) a list of archives.
+ *
+ * @param archives list of jar files to process
+ * @throws MojoExecutionException if an error occurs during the processing
of archives
+ */
+ protected void processArchives(List<File> archives) throws
MojoExecutionException {
+<span class="fc bfc" id="L447" title="All 2 branches covered."> for
(File file : archives) {</span>
+<span class="fc" id="L448"> processArchive(file);</span>
+<span class="fc" id="L449"> }</span>
+<span class="fc" id="L450"> }</span>
+
+ /**
+ * Processes a given archive.
+ *
+ * @param archive The archive to process.
+ * @throws NullPointerException if {@code archive} is {@code null}
+ * @throws MojoExecutionException if processing {@code archive} fails
+ */
+ protected final void processArchive(final File archive) throws
MojoExecutionException {
+<span class="pc bpc" id="L460" title="1 of 2 branches missed."> if
(archive == null) {</span>
+<span class="nc" id="L461"> throw new
NullPointerException("archive");</span>
+ }
+
+<span class="fc" id="L464"> preProcessArchive(archive);</span>
+
+<span class="fc bfc" id="L466" title="All 2 branches covered."> if
(this.verbose) {</span>
+<span class="fc" id="L467">
getLog().info(getMessage("processing", archive));</span>
+<span class="fc bfc" id="L468" title="All 2 branches covered."> } else
if (getLog().isDebugEnabled()) {</span>
+<span class="fc" id="L469">
getLog().debug(getMessage("processing", archive));</span>
+ }
+
+<span class="fc" id="L472"> JarSignerRequest request =
createRequest(archive);</span>
+<span class="fc" id="L473"> request.setVerbose(verbose);</span>
+<span class="fc" id="L474"> request.setAlias(alias);</span>
+<span class="fc" id="L475"> request.setArchive(archive);</span>
+<span class="fc" id="L476"> request.setKeystore(keystore);</span>
+<span class="fc" id="L477"> request.setStoretype(storetype);</span>
+<span class="fc" id="L478"> request.setProviderArg(providerArg);</span>
+<span class="fc" id="L479">
request.setProviderClass(providerClass);</span>
+<span class="fc" id="L480">
request.setProviderName(providerName);</span>
+<span class="fc" id="L481">
request.setWorkingDirectory(workingDirectory);</span>
+<span class="fc" id="L482"> request.setMaxMemory(maxMemory);</span>
+<span class="fc" id="L483">
request.setProtectedAuthenticationPath(protectedAuthenticationPath);</span>
+
+ // Preserves 'file.encoding' the plugin is executed with.
+<span class="fc" id="L486"> final List<String>
additionalArguments = new ArrayList<>();</span>
+
+<span class="fc" id="L488"> boolean fileEncodingSeen = false;</span>
+
+<span class="pc bpc" id="L490" title="1 of 2 branches missed."> if
(this.arguments != null) {</span>
+<span class="fc bfc" id="L491" title="All 2 branches covered."> for
(final String argument : this.arguments) {</span>
+<span class="fc bfc" id="L492" title="All 2 branches covered.">
if (argument.trim().startsWith("-J-Dfile.encoding=")) {</span>
+<span class="fc" id="L493"> fileEncodingSeen = true;</span>
+ }
+
+<span class="fc" id="L496">
additionalArguments.add(argument);</span>
+ }
+ }
+
+<span class="fc bfc" id="L500" title="All 2 branches covered."> if
(!fileEncodingSeen) {</span>
+<span class="fc" id="L501">
additionalArguments.add("-J-Dfile.encoding=" +
ReaderFactory.FILE_ENCODING);</span>
+ }
+
+ // Adds proxy information.
+<span class="pc bpc" id="L505" title="1 of 2 branches missed."> if
(this.settings != null</span>
+<span class="nc bnc" id="L506" title="All 2 branches missed.">
&& this.settings.getActiveProxy() != null</span>
+<span class="nc bnc" id="L507" title="All 2 branches missed.">
&& StringUtils.isNotEmpty(this.settings.getActiveProxy().getHost()))
{</span>
+<span class="nc" id="L508"> additionalArguments.add(</span>
+<span class="nc" id="L509"> "-J-Dhttp.proxyHost="
+ this.settings.getActiveProxy().getHost());</span>
+<span class="nc" id="L510"> additionalArguments.add(</span>
+<span class="nc" id="L511">
"-J-Dhttps.proxyHost=" +
this.settings.getActiveProxy().getHost());</span>
+<span class="nc" id="L512"> additionalArguments.add(</span>
+<span class="nc" id="L513"> "-J-Dftp.proxyHost="
+ this.settings.getActiveProxy().getHost());</span>
+
+<span class="nc bnc" id="L515" title="All 2 branches missed."> if
(this.settings.getActiveProxy().getPort() > 0) {</span>
+<span class="nc" id="L516"> additionalArguments.add(</span>
+<span class="nc" id="L517">
"-J-Dhttp.proxyPort=" +
this.settings.getActiveProxy().getPort());</span>
+<span class="nc" id="L518"> additionalArguments.add(</span>
+<span class="nc" id="L519">
"-J-Dhttps.proxyPort=" +
this.settings.getActiveProxy().getPort());</span>
+<span class="nc" id="L520"> additionalArguments.add(</span>
+<span class="nc" id="L521">
"-J-Dftp.proxyPort=" +
this.settings.getActiveProxy().getPort());</span>
+ }
+
+<span class="nc bnc" id="L524" title="All 2 branches missed."> if
(StringUtils.isNotEmpty(this.settings.getActiveProxy().getNonProxyHosts()))
{</span>
+<span class="nc" id="L525">
additionalArguments.add("-J-Dhttp.nonProxyHosts=\""</span>
+<span class="nc" id="L526"> +
this.settings.getActiveProxy().getNonProxyHosts() + "\"");</span>
+
+<span class="nc" id="L528">
additionalArguments.add("-J-Dftp.nonProxyHosts=\""</span>
+<span class="nc" id="L529"> +
this.settings.getActiveProxy().getNonProxyHosts() + "\"");</span>
+ }
+ }
+
+<span class="fc" id="L533"> request.setArguments(</span>
+<span class="pc bpc" id="L534" title="1 of 2 branches missed.">
!additionalArguments.isEmpty()</span>
+<span class="fc" id="L535"> ?
additionalArguments.toArray(new String[additionalArguments.size()])</span>
+<span class="nc" id="L536"> : null);</span>
+
+ // Special handling for passwords through the Maven Security Dispatcher
+<span class="fc" id="L539">
request.setStorepass(decrypt(storepass));</span>
+
+ try {
+<span class="fc" id="L542"> executeJarSigner(jarSigner,
request);</span>
+<span class="fc" id="L543"> } catch (JavaToolException e) {</span>
+<span class="fc" id="L544"> throw new
MojoExecutionException(getMessage("commandLineException",
e.getMessage()), e);</span>
+<span class="fc" id="L545"> }</span>
+<span class="fc" id="L546"> }</span>
+
+ /**
+ * Executes jarsigner (execute signing or verification for a jar file).
+ *
+ * @param jarSigner the JarSigner execution interface
+ * @param request the JarSignerRequest with parameters JarSigner should use
+ * @throws JavaToolException if jarsigner could not be invoked
+ * @throws MojoExecutionException if the invocation of jarsigner
succeeded, but returned a non-zero exit code
+ */
+ protected abstract void executeJarSigner(JarSigner jarSigner,
JarSignerRequest request)
+ throws JavaToolException, MojoExecutionException;
+
+ protected String decrypt(String encoded) throws MojoExecutionException {
+ try {
+<span class="fc" id="L561"> return
securityDispatcher.decrypt(encoded);</span>
+<span class="nc" id="L562"> } catch (SecDispatcherException e) {</span>
+<span class="nc" id="L563"> getLog().error("error using
security dispatcher: " + e.getMessage(), e);</span>
+<span class="nc" id="L564"> throw new
MojoExecutionException("error using security dispatcher: " +
e.getMessage(), e);</span>
+ }
+ }
+
+ /**
+ * Gets a message for a given key from the resource bundle backing the
implementation.
+ *
+ * @param key the key of the message to return
+ * @param args arguments to format the message with
+ * @return the message with key {@code key} from the resource bundle
backing the implementation
+ * @throws NullPointerException if {@code key} is {@code null}
+ * @throws java.util.MissingResourceException
+ * if there is no message available matching {@code key} or
accessing
+ * the resource bundle fails
+ */
+ String getMessage(final String key, final Object... args) {
+<span class="pc bpc" id="L580" title="1 of 2 branches missed."> if (key
== null) {</span>
+<span class="nc" id="L581"> throw new
NullPointerException("key");</span>
+ }
+
+<span class="fc" id="L584"> return new
MessageFormat(ResourceBundle.getBundle("jarsigner").getString(key)).format(args);</span>
+ }
+
+ /**
+ * the part with ToolchainManager lookup once we depend on
+ * 2.0.9 (have it as prerequisite). Define as regular component field then.
+ * hint: check maven-compiler-plugin code
+ *
+ * @return Toolchain instance
+ */
+ private Toolchain getToolchain() {
+<span class="fc" id="L595"> Toolchain tc = null;</span>
+<span class="fc bfc" id="L596" title="All 2 branches covered."> if
(toolchainManager != null) {</span>
+<span class="fc" id="L597"> tc =
toolchainManager.getToolchainFromBuildContext("jdk", session);</span>
+ }
+
+<span class="fc" id="L600"> return tc;</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a
href="http://www.jacoco.org/jacoco">JaCoCo</a>
0.8.12.202403310830</span></div></body></html>
\ No newline at end of file
Propchange:
maven/website/components/plugins-archives/maven-jarsigner-plugin-LATEST/jacoco/org.apache.maven.plugins.jarsigner/AbstractJarsignerMojo.java.html
------------------------------------------------------------------------------
svn:eol-style = native