public function deploy(Asset $asset)
    {
        $outputBasename = $this->computeOutputBasename($asset);
        $fullPath = $this->destinationPath . DIRECTORY_SEPARATOR . $outputBasename;

        $saving = file_put_contents($fullPath, $asset->getContents());

        if($saving === false) {
            throw new PhassetsInternalException(
                'file_put_contents() could not write to ' . $fullPath .
                '. It is writable?'
            );
        }

        $objectUrl = $this->baseUrl . '/' . $outputBasename;

        $asset->setOutputUrl($objectUrl);
    }