55d4731a创建于 2023年2月5日历史提交
<html>

<head>

  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

  <title>Cangjie Code Coverage Report</title>

  <style media="screen" type="text/css">

  body

{

  color: #000000;

  background-color: #FFFFFF;

}



/* Link formats: use maroon w/underlines */

a:link

{

  color: navy;

  text-decoration: underline;

}

a:visited

{

  color: maroon;

  text-decoration: underline;

}

a:active

{

  color: navy;

  text-decoration: underline;

}



/*** TD formats ***/

td

{

  font-family: sans-serif;

}

td.title

{

  text-align: center;

  padding-bottom: 10px;

  font-size: 20pt;

  font-weight: bold;

}



/* TD Header Information */

td.headerName

{

  text-align: right;

  color: black;

  padding-right: 6px;

  font-weight: bold;

  vertical-align: top;

  white-space: nowrap;

}

td.headerValue

{

  text-align: left;

  color: #284FA8;

  font-family: sans-serif;

  font-weight: bold;

  white-space: nowrap;

}



td.headerTableEntry

{

  text-align: right;

  color: black;

  font-weight: bold;

  white-space: nowrap;

  padding-left: 12px;

  padding-right: 4px;

  background-color: LightBlue;

}

td.headerValueLeg

{

  text-align: left;

  color: black;

  font-size: 80%;

  white-space: nowrap;

  padding-top: 2px;

}



/* Color of horizontal ruler */

td.hr

{

  background-color: navy;

  height:3px;

}

/* Footer format */

td.footer

{

  text-align: center;

  padding-top: 3px;

  font-family: sans-serif;

}



/* Coverage Table */



td.coverTableHead

{

  text-align: center;

  color: white;

  background-color: SteelBlue;

  font-family: sans-serif;

  font-size: 120%;

  white-space: nowrap;

  padding-left: 4px;

  padding-right: 4px;

}

td.coverFile

{

  text-align: left;

  padding-left: 10px;

  padding-right: 20px;

  color: black;

  background-color: LightBlue;

  font-family: monospace;

  font-weight: bold;

  font-size: 110%;

}

td.coverBar

{

  padding-left: 10px;

  padding-right: 10px;

  background-color: LightBlue;

}

td.coverBarOutline

{

  background-color: white;

}

td.coverValue

{

  padding-top: 2px;

  text-align: right;

  padding-left: 10px;

  padding-right: 10px;

  font-family: sans-serif;

  white-space: nowrap;

  font-weight: bold;

}



/* Link Details */

a.detail:link

{

  color: #B8D0FF;

  font-size:80%;

}

a.detail:visited

{

  color: #B8D0FF;

  font-size:80%;

}

a.detail:active

{

  color: #FFFFFF;

  font-size:80%;

}



.graphcont{

    color:#000;

    font-weight:700;

    float:left

}



.graph{

    float:left;

    background-color: white;

    position:relative;

    width:280px;

    padding:0

}



.graph .bar{

    display:block;

    position:relative;

    border:black 1px solid;

    text-align:center;

    color:#fff;

    height:10px;

    font-family:Arial,Helvetica,sans-serif;

    font-size:12px;

    line-height:1.9em

}



.graph .bar span{

    position:absolute;

    left:1em

}



td.coveredLine,

span.coveredLine

{

    background-color: LightGreen!important;

}



td.uncoveredLine,

span.uncoveredLine

{

    background-color: LightPink!important;

}



.linebranch, .linecount

{

    border-right: 1px gray solid;

    background-color: lightgray;

}



.linebranchDetails

{

    position: relative;

}

.linebranchSummary

{

    cursor: help;

}

.linebranchContents

{

    font-family: sans-serif;

    font-size: small;

    text-align: left;

    position: absolute;

    width: 15em;

    padding: 1em;

    background: white;

    border: solid gray 1px;

    box-shadow: 5px 5px 10px gray;

    z-index: 1; /* show in front of the table entries */

}



.takenBranch

{

    color: Green!important;

    cursor: help;

}



.notTakenBranch

{

    color: Red!important;

    cursor: help;

}



.src

{

    padding-left: 12px;

}



.srcHeader,

span.takenBranch,

span.notTakenBranch

{

    font-family: monospace;

    font-weight: bold;

}



pre

{

    height : 15px;

    margin-top: 0;

    margin-bottom: 0;

}



.lineno

{

    background-color: #EFE383;

    border-right: 1px solid #BBB15F;

}

  </style>

</head>



<body>



  <table width="100%" border="0" cellspacing="0" cellpadding="0">

    <tr><td class="title">Cangjie Code Coverage Report</td></tr>

    <tr><td class="hr"></td></tr>



    <tr>

      <td width="100%">

        <table cellpadding="1" border="0" width="100%">

          <tr>

            <td class="headerName">File:</td>

            <td class="headerValue">src/ZipFile.cj</td>

            <td width="5%"></td>

            <td width="15%"></td>

            <td width="10%" class="headerValue" style="text-align:right;">Hit</td>

            <td width="10%" class="headerValue" style="text-align:right;">Total</td>

            <td width="15%" class="headerValue" style="text-align:right;">Coverage</td>

          </tr>

          <tr>

            <td class="headerName">Date:</td>

            <td class="headerValue">2022-05-17 16:02:09</td>

            <td></td>

            <td class="headerName">Lines:</td>

            <td class="headerTableEntry">61</td>

            <td class="headerTableEntry">64</td>

            <td class="headerTableEntry" style="background-color:LightGreen">95.0 %</td>

          </tr>

          <tr>

            <td class="headerName">Legend:</td>

            <td class="headerValueLeg">

              <span style="background-color:LightPink">low: &lt; 75.0 %</span>

              <span style="background-color:Yellow">medium: &gt;= 75.0 %</span>

              <span style="background-color:LightGreen">high: &gt;= 90.0 %</span>

            </td>

            <td></td>

            <td class="headerName">Branches:</td>

            <td class="headerTableEntry">-</td>

            <td class="headerTableEntry">-</td>

            <td class="headerTableEntry" style="background-color:LightGreen">-</td>

          </tr>

        </table>

      </td>

    </tr>



    <tr><td class="hr"></td></tr>

  </table>



  <br>

  <table cellspacing="0" cellpadding="1">

     <tr>

      <td width="5%" align="right" class="srcHeader">Line</td>

      <td width="5%" align="right" class="srcHeader">Branch</td>

      <td width="5%" align="center" class="srcHeader">Hit</td>

      <td width="75%" align="left" class="srcHeader src">Source</td>

    </tr>



    <tr>

<td align="right" class="lineno"><pre>1</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>/*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>2</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * Copyright (c) Huawei Technologies Co., Ltd. 2022-2022. All rights reserved.</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>3</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>4</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>5</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>/**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>6</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * @file</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>7</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>8</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * This is a class library that implements compression file functions.</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>9</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * Provides streaming compression interfaces such as deflateInit, deflate, deflateEnd, deflateBound, setGzipHeader, and setDictionary.</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>10</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>11</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>12</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>package zip4cj</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>13</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>from std import io.*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>14</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>from compress import zlib.*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>15</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>from std import collection.*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>16</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>from std import convert.*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>17</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>18</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>/**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>19</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * Provide compressed file function</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>20</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>21</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre> */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>22</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>public open class ZipFile {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>23</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private var filePath: String = ""</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>24</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private var passwd: String = ""</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>25</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private var outPath: String = ""</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>26</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private var zipParam: ZipParams = ZipParams()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>27</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private var fileList = HashSet<String>()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>28</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    private let headerParser: HeaderParser</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>29</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>30</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Zip decompression initialization</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>31</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>32</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>33</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>34</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public init() {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>35</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser = HeaderParser()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>36</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>37</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>38</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>39</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Zip compression initialization</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>40</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>41</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param filePath File path to be unzipped</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>42</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>43</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>44</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>45</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public init(filePath: String) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>46</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser = HeaderParser()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>47</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        this.filePath = filePath</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>48</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>49</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>50</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    func checkFile(files: HashSet<String>) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>51</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        for (file in files) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>52</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            var fileInfo = FileInfo(file)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>53</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            if (!fileInfo.exist()) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>54</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>                throw RuntimeException(FileUtils.getFileName(file) + " file does not exist")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>55</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>            }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>56</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>57</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>58</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>59</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>60</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Add compressed file</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>61</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>62</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param file Add path to compressed file</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>63</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>64</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>65</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>66</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func addFile(file: String) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>67</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var fileInfo = FileInfo(file)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>68</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (!fileInfo.exist()) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>69</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException(FileUtils.getFileName(file) + " file does not exist")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>70</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>71</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        fileList.put(file)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>72</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>73</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>74</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>75</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * The Function is addFiles</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>76</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>77</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param The param is files of HashSet<String></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>78</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>79</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>80</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>81</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func addFiles(files: HashSet<String>) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>82</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (files.size() == 0) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>83</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException("The number of added files cannot be empty!")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>84</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>85</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        checkFile(files)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>86</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        fileList.putAll(files)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>87</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>88</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>89</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>90</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Zip compress</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>91</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>92</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>93</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>94</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func writeZip() {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>95</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (!outPath.endsWith(".zip")) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>96</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException("Output file type should be zip!")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>97</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>98</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser.setOutPath(outPath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>99</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser.writeZipFile(fileList, zipParam)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>100</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>101</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>102</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private func checkFile() {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>103</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (filePath == "") {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>104</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException("file Path is null or invalid")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>105</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>106</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (outPath == "") {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>107</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException("out Path is null or invalid")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>108</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>109</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var fileInfo = FileInfo(filePath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>110</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (!fileInfo.exist()) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>111</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>            throw RuntimeException("file not exist!")</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>112</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>113</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>114</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>115</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Extract all decompressed data</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>116</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>117</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>118</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>119</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func extractAll(): ArrayList<LocalFileHeader> {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>120</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        checkFile()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>121</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var dirInfo = io.DirectoryInfo(outPath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>122</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        if (!dirInfo.exist()) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>123</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount uncoveredLine"><pre>N</pre></td>

<td align="left" class="src uncoveredLine"><pre>            dirInfo.create()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>124</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>        }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>125</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        return unzip()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>126</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>127</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    private func unzip(): ArrayList<LocalFileHeader>  {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>128</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        checkFile()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>129</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser.setOutPath(outPath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>130</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var buff = FileUtils.readFile(filePath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>131</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var eocd = headerParser.parseEndOfCentralDirectory(buff)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>132</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var cdrs = headerParser.parseCentralDirectoryRecord(buff, eocd)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>133</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        return headerParser.parseLocalFileHeader(buff, cdrs)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>134</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>135</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>136</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>137</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *  Gets the directory inside the compressed package</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>138</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>139</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>140</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>141</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func nameList(): Array<String> {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>142</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        checkFile()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>143</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        headerParser.setOutPath(outPath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>144</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var buff = FileUtils.readFile(filePath)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>145</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var eocd = headerParser.parseEndOfCentralDirectory(buff)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>146</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        var cdrs = headerParser.parseCentralDirectoryRecord(buff, eocd)</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>147</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        return cdrs.keys().toArray()</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>148</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>149</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>150</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /**</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>151</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * The Function is setOutPath</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>152</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>153</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param The param is outPath of String</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>154</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>155</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>156</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>157</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func setOutPath(outPath: String) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>158</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        this.outPath = outPath</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>159</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>160</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>161</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>162</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Set password for compressed files</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>163</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>164</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param passwd Compress password</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>165</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>166</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>167</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>168</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount uncoveredLine"><pre>N</pre></td>

<td align="left" class="src uncoveredLine"><pre>    public func setOutPasswd(passwd: String) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>169</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount uncoveredLine"><pre>N</pre></td>

<td align="left" class="src uncoveredLine"><pre>        this.passwd = passwd</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>170</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>171</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre></pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>172</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    /*</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>173</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * Set compression parameters</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>174</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>175</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @param zipParam compression parameters</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>176</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     *</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>177</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     * @since 0.28.4</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>178</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>     */</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>179</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>    public func setZipParams(zipParam: ZipParams) {</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>180</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount coveredLine"><pre>Y</pre></td>

<td align="left" class="src coveredLine"><pre>        this.zipParam = zipParam</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>181</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>    }</pre></td>

</tr>

<tr>

<td align="right" class="lineno"><pre>182</pre></td>

<td align="right" class="linebranch"></td>

<td align="center" class="linecount "><pre></pre></td>

<td align="left" class="src "><pre>}</pre></td>

</tr>



  </table>

  <br>



  <table width="100%" border="0" cellspacing="0" cellpadding="0">

    <tr><td class="hr"><td></tr>

    <tr><td class="footer">Generated by: cjcov (Version 1.0.0)</a></td></tr>

  </table>

  <br>



</body>



</html>