'Validate if the arguments passed in match the expected arguments in
the callback_dict. We expect this to be a frame passed in to *args for
process or passed in as a list from remove.
:param dict callback_dict: The callback dictionary to evaluate against
:param list args: The arguments passed in as a list'

def _arguments_match(self, callback_dict, args):

    if (callback_dict[self.ARGUMENTS] is None):
        return True
    if (not args):
        return False
    if isinstance(args[0], dict):
        return self._dict_arguments_match(args[0], callback_dict[self.ARGUMENTS])
    return self._obj_arguments_match((args[0].method if hasattr(args[0], 'method') else args[0]), callback_dict[self.ARGUMENTS])
