def get(self):
        """Gets a single item from the queue and returns it. If the queue is empty, this method will return None.

        Returns:
            :class:`contracts.Envelope`. a telemetry envelope object or None if the queue is empty.
        """
        try:
            item = self._queue.get_nowait()
        except (Empty, PersistEmpty):
            return None

        if self._persistence_path:
            self._queue.task_done()

        return item