src = $src; $this->dest = $dest; } public function unpack() : bool { if(!Zip::unpack($this->src, $this->dest)) { return false; } return true; } public function validated() : bool { if(!$this->validateSignature()) { throw new InvalidSignatureException(); } if(!$this->validateVersion()) { throw new InvalidVersionException(); } return true; } private function validateSignature() : bool { return true; } private function validateVersion() : bool { return true; } }