def reload_handler(self, c, e):
        """This handles reloads."""
        cmd = self.is_reload(e)
        cmdchar = self.config['core']['cmdchar']
        if cmd is not None:
            # If we're in a minimal reload state, only the owner can do stuff, as we can't rely on the db working.
            if self.reload_event.set():
                admins = [self.config['auth']['owner']]
            else:
                with self.handler.db.session_scope() as session:
                    admins = [x.nick for x in session.query(orm.Permissions).all()]
            if e.source.nick not in admins:
                c.privmsg(self.get_target(e), "Nope, not gonna do it.")
                return
            importlib.reload(reloader)
            self.reload_event.set()
            cmdargs = cmd[len('%sreload' % cmdchar) + 1:]
            try:
                if reloader.do_reload(self, e, cmdargs):
                    if self.config.getboolean('feature', 'server'):
                        self.server = server.init_server(self)
                    self.reload_event.clear()
                logging.info("Successfully reloaded")
            except Exception as ex:
                backtrace.handle_traceback(ex, c, self.get_target(e), self.config)