def _acquire(self, key=None, value=None):
        self._session_id = self._session.create()
        self._item = '/'.join([self._prefix, (key and str(uuid.uuid4()))])
        LOGGER.debug('Acquiring a lock of %s for session %s',
                     self._item, self._session_id)
        response = self._put_response_body([self._item],
                                           {'acquire': self._session_id},
                                           value)
        if not response:
            self._session.destroy(self._session_id)
            raise exceptions.LockFailure()
dataset/ETHPy150Open gmr/consulate/consulate/api/lock.py/Lock._acquire/operator `or` -> `and`