'Process the one-shot callback, decrementing the use counter and
removing it from the stack if it\'s now been fully used.
:param str or int prefix: The prefix for keeping track of callbacks with
:param str key: The callback key
:param dict callback_dict: The callback dict to process'

def _use_one_shot_callback(self, prefix, key, callback_dict):

    LOGGER.debug('Processing    use    of    oneshot    callback')
    callback_dict[self.CALLS] -= 1
    LOGGER.debug('%i    registered    uses    left', callback_dict[self.CALLS])
    if (callback_dict[self.CALLS] <= 0):
        self.remove(prefix, key, callback_dict[self.CALLBACK], callback_dict[self.ARGUMENTS])
