'Called by user to unset the session variables'

def unset(self, module_argument):

    action_name = ('action_%s' % module_argument.replace('.', '_'))
    if hasattr(self, action_name):
        action_func = getattr(self, action_name)
        if hasattr(action_func, '__call__'):
            action_func(module_argument, None)
    if (module_argument.count('.') == 1):
        (module_name, arg_name) = module_argument.split('.')
        if (arg_name not in self[module_name]['stored_args']):
            log.warn((messages.sessions.error_session_s_not_modified % ('%s.%s' % (module_name, arg_name))))
        else:
            del self[module_name]['stored_args'][arg_name]
            log.info((messages.sessions.unset_module_s_s % (module_name, arg_name)))
    else:
        module_name = module_argument
        if ((module_name not in self) and (module_name not in set_filters)):
            log.warn((messages.sessions.error_session_s_not_modified % module_name))
        else:
            self[module_name] = None
            log.info((messages.sessions.unset_s % module_name))
