ArchiveTrait   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 1 Features 1
Metric Value
eloc 5
c 1
b 1
f 1
dl 0
loc 31
ccs 5
cts 5
cp 1
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A setArchive() 0 4 1
A getArchive() 0 3 1
1
<?php
2
3
namespace Comodojo\Zip\Traits;
4
5
use \Comodojo\Zip\Interfaces\ZipInterface;
6
use \ZipArchive;
7
8
/**
9
 * Archive helper trait.
10
 *
11
 * @package     Comodojo Zip
12
 * @author      Marco Giovinazzi <[email protected]>
13
 * @license     MIT
14
 *
15
 * LICENSE:
16
 *
17
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
 * THE SOFTWARE.
24
 */
25
26
trait ArchiveTrait
27
{
28
29
    /**
30
     * ZipArchive internal pointer
31
     *
32
     * @var ZipArchive
33
     */
34
    private ?ZipArchive $zip_archive = null;
35
36
    /**
37
     * Set the current ZipArchive object
38
     *
39
     * @param ZipArchive $zip
40
     *
41
     * @return ZipInterface
42
     */
43 26
    public function setArchive(ZipArchive $zip): ZipInterface
44
    {
45 26
        $this->zip_archive = $zip;
46 26
        return $this;
47
    }
48
49
    /**
50
     * Get current ZipArchive object
51
     *
52
     * @return ZipArchive|null
53
     */
54 25
    public function getArchive(): ?ZipArchive
55
    {
56 25
        return $this->zip_archive;
57
    }
58
}
59