mirror of
https://github.com/iio612/DEFENDER.git
synced 2026-02-13 11:14:23 +00:00
Refactoring the code, create new folder modules.
This commit is contained in:
@@ -1,16 +1,12 @@
|
|||||||
import importlib
|
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import json
|
import json
|
||||||
import sys
|
|
||||||
import time
|
import time
|
||||||
import socket
|
import socket
|
||||||
import threading
|
import threading
|
||||||
import ipaddress
|
import ipaddress
|
||||||
import ast
|
import ast
|
||||||
import requests
|
import requests
|
||||||
from pathlib import Path
|
|
||||||
from types import ModuleType
|
|
||||||
from dataclasses import fields
|
from dataclasses import fields
|
||||||
from typing import Any, Optional, TYPE_CHECKING
|
from typing import Any, Optional, TYPE_CHECKING
|
||||||
from base64 import b64decode, b64encode
|
from base64 import b64decode, b64encode
|
||||||
|
|||||||
@@ -11,10 +11,11 @@ if TYPE_CHECKING:
|
|||||||
REHASH_MODULES = [
|
REHASH_MODULES = [
|
||||||
'core.definition',
|
'core.definition',
|
||||||
'core.utils',
|
'core.utils',
|
||||||
'core.classes.config',
|
'core.classes.modules.config',
|
||||||
'core.base',
|
'core.base',
|
||||||
'core.classes.commands',
|
'core.classes.modules.commands',
|
||||||
'core.classes.protocols.interface',
|
'core.classes.interfaces.iprotocol',
|
||||||
|
'core.classes.protocols.command_handler',
|
||||||
'core.classes.protocols.factory',
|
'core.classes.protocols.factory',
|
||||||
'core.classes.protocols.unreal6',
|
'core.classes.protocols.unreal6',
|
||||||
'core.classes.protocols.inspircd'
|
'core.classes.protocols.inspircd'
|
||||||
@@ -32,10 +33,6 @@ def restart_service(uplink: 'Irc', reason: str = "Restarting with no reason!") -
|
|||||||
for module in uplink.ModuleUtils.model_get_loaded_modules().copy():
|
for module in uplink.ModuleUtils.model_get_loaded_modules().copy():
|
||||||
uplink.ModuleUtils.unload_one_module(uplink, module.module_name)
|
uplink.ModuleUtils.unload_one_module(uplink, module.module_name)
|
||||||
|
|
||||||
uplink.ModuleUtils.model_clear() # Clear loaded modules.
|
|
||||||
uplink.User.UID_DB.clear() # Clear User Object
|
|
||||||
uplink.Channel.UID_CHANNEL_DB.clear() # Clear Channel Object
|
|
||||||
uplink.Client.CLIENT_DB.clear() # Clear Client object
|
|
||||||
uplink.Base.garbage_collector_thread()
|
uplink.Base.garbage_collector_thread()
|
||||||
|
|
||||||
uplink.Logs.debug(f'[{uplink.Config.SERVICE_NICKNAME} RESTART]: Reloading configuration!')
|
uplink.Logs.debug(f'[{uplink.Config.SERVICE_NICKNAME} RESTART]: Reloading configuration!')
|
||||||
@@ -58,6 +55,11 @@ def restart_service(uplink: 'Irc', reason: str = "Restarting with no reason!") -
|
|||||||
uplink.Protocol = uplink.Loader.PFactory.get()
|
uplink.Protocol = uplink.Loader.PFactory.get()
|
||||||
uplink.Protocol.register_command()
|
uplink.Protocol.register_command()
|
||||||
|
|
||||||
|
uplink.ModuleUtils.model_clear() # Clear loaded modules.
|
||||||
|
uplink.User.UID_DB.clear() # Clear User Object
|
||||||
|
uplink.Channel.UID_CHANNEL_DB.clear() # Clear Channel Object
|
||||||
|
uplink.Client.CLIENT_DB.clear() # Clear Client object
|
||||||
|
|
||||||
uplink.init_service_user()
|
uplink.init_service_user()
|
||||||
uplink.Utils.create_socket(uplink)
|
uplink.Utils.create_socket(uplink)
|
||||||
uplink.Protocol.send_link()
|
uplink.Protocol.send_link()
|
||||||
@@ -8,7 +8,7 @@ from core.classes.interfaces.iprotocol import IProtocol
|
|||||||
from core.utils import tr
|
from core.utils import tr
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from core.classes.sasl import Sasl
|
from core.classes.modules.sasl import Sasl
|
||||||
from core.definition import MClient, MSasl, MUser, MChannel
|
from core.definition import MClient, MSasl, MUser, MChannel
|
||||||
from core.loader import Loader
|
from core.loader import Loader
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import time
|
|||||||
from ssl import SSLSocket
|
from ssl import SSLSocket
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from typing import TYPE_CHECKING, Any, Optional, Union
|
from typing import TYPE_CHECKING, Any, Optional, Union
|
||||||
from core.classes import rehash
|
from core.classes.modules import rehash
|
||||||
from core.classes.interfaces.iprotocol import IProtocol
|
from core.classes.interfaces.iprotocol import IProtocol
|
||||||
from core.utils import tr
|
from core.utils import tr
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
from logging import Logger
|
from logging import Logger
|
||||||
from core.classes.settings import global_settings
|
from core.classes.modules.settings import global_settings
|
||||||
from core.classes import translation, user, admin, client, channel, reputation, settings, sasl
|
from core.classes.modules import translation, user, admin, client, channel, reputation, settings, sasl
|
||||||
import core.logs as logs
|
import core.logs as logs
|
||||||
import core.definition as df
|
import core.definition as df
|
||||||
import core.utils as utils
|
import core.utils as utils
|
||||||
import core.base as base_mod
|
import core.base as base_mod
|
||||||
import core.module as module_mod
|
import core.module as module_mod
|
||||||
import core.classes.commands as commands_mod
|
import core.classes.modules.commands as commands_mod
|
||||||
import core.classes.config as conf_mod
|
import core.classes.modules.config as conf_mod
|
||||||
import core.irc as irc
|
import core.irc as irc
|
||||||
import core.classes.protocols.factory as factory
|
import core.classes.protocols.factory as factory
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ from datetime import datetime, timedelta, timezone
|
|||||||
from time import time
|
from time import time
|
||||||
from random import choice
|
from random import choice
|
||||||
from hashlib import md5, sha3_512
|
from hashlib import md5, sha3_512
|
||||||
from core.classes.settings import global_settings
|
from core.classes.modules.settings import global_settings
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from core.irc import Irc
|
from core.irc import Irc
|
||||||
|
|||||||
Reference in New Issue
Block a user