'If a tombstone is present it means the object is considered
deleted. We just need to pull the metadata from the tombstone file
which has the timestamp to construct the deleted exception. If there
was no tombstone, just report it does not exist.
:param ts_file: the tombstone file name found on disk
:returns: DiskFileDeleted if the ts_file was provided, else
DiskFileNotExist'

def _construct_exception_from_ts_file(self, ts_file, **kwargs):

    if (not ts_file):
        exc = DiskFileNotExist()
    else:
        try:
            metadata = self._failsafe_read_metadata(ts_file, ts_file)
        except DiskFileQuarantined:
            exc = DiskFileNotExist()
        else:
            exc = DiskFileDeleted(metadata=metadata)
    return exc
