Tekvel Magic
|
Класс Subnetwork для моделирования подключения имитируемого сервера (или клиента) к подсети. Подробнее...
Открытые члены | |
def | get_by_name (cls, name) |
Найти экземпляр Subnetwork по имени. Подробнее... | |
def | __new__ (cls, *args, **kwargs) |
Создание объекта для Subnetwork. Подробнее... | |
def | __init__ (self, nif=None, name=None) |
Инициализация экземпляра Subnetwork. Подробнее... | |
def | attach (self, simulator) |
Присоединяет симулятор к сети. Подробнее... | |
def | detach (self, simulator) |
Отключает симулятор от сети. Подробнее... | |
def | attached_simulators (self) |
Возвращает список подключенных симуляторов. Подробнее... | |
def | nif (self) |
Получить сетевой интерфейс (NIF). Подробнее... | |
def | nif (self, NIF nif) |
Установка сетевого интрефейса для подсети. Подробнее... | |
def | name (self) |
Получить имя. Подробнее... | |
def | name (self, str name) |
Установить имя подсети. Подробнее... | |
Открытые атрибуты | |
name | |
nif | |
Статические открытые данные | |
list | instances = [] |
int | numbers = 1 |
Класс Subnetwork для моделирования подключения имитируемого сервера (или клиента) к подсети.
Класс Subnetwork используется для моделирования подключения имитируемого сервера (или клиента) к определенной подсети через ethernet-адаптер ПК. Он предотвращает дублирование подсетей, возвращая существующие экземпляры, если сеть с таким же именем уже существует. Класс позволяет подключать и отключать симуляторы к/от подсети и управлять сетевыми интерфейсами.
Пример использования:
Каждая сеть идентифицируется по имени. Если запрашивается сеть с таким же именем, возвращается существующий экземпляр.
nif | (необязательно) Сетевой интерфейс NIF, который будет назначен сети. |
name | (необязательно) Имя сети. Если не указано, будет присвоено имя по умолчанию. |
def __init__ | ( | self, | |
nif = None , |
|||
name = None |
|||
) |
Инициализация экземпляра Subnetwork.
Этот метод инициализирует новый экземпляр класса Subnetwork. Если указано имя, проверяется, существует ли сеть с таким именем. Если сеть найдена, инициализация пропускается. В противном случае создается новая сеть. Если имя не указано, присваивается имя по умолчанию в формате Subnetwork{number}
. Интерфейс сети (nif
) либо предоставляется, либо запрашивается у пользователя.
nif | Необязательный сетевой интерфейс, который будет использоваться для сети. Если не указан, пользователю будет предложено выбрать интерфейс. |
name | Необязательное имя для сети. Если не указано, будет сгенерировано имя по умолчанию. |
Exception | Выбрасывается в случае ошибки при добавлении сети в список экземпляров. |
def __new__ | ( | cls, | |
* | args, | ||
** | kwargs | ||
) |
Создание объекта для Subnetwork.
Этот метод переопределяет стандартный метод __new__
для управления созданием объекта. Если в kwargs
указано имя сети (name
), метод пытается найти существующий экземпляр по имени с помощью метода get_by_name
. Если сеть с таким именем не найдена, создаётся новый объект. Если имя не указано, создается новый экземпляр по умолчанию.
*args | Позиционные аргументы. |
**kwargs | Именованные аргументы, ожидается наличие ключа "name" для сетей с именем. |
def attach | ( | self, | |
simulator | |||
) |
Присоединяет симулятор к сети.
Этот метод присоединяет указанный симулятор к сети. Если симулятор уже подключен, вызывается исключение.
simulator | Симулятор, который нужно присоединить к сети. |
ValueError | Выбрасывается, если симулятор уже присоединен к сети. |
def attached_simulators | ( | self | ) |
Возвращает список подключенных симуляторов.
Это свойство возвращает список симуляторов, подключенных к сети.
def detach | ( | self, | |
simulator | |||
) |
Отключает симулятор от сети.
Этот метод удаляет указанный симулятор из сети.
simulator | Симулятор, который нужно отключить от сети. |
def get_by_name | ( | cls, | |
name | |||
) |
Найти экземпляр Subnetwork по имени.
Этот метод класса ищет в списке экземпляров сетей объект с указанным именем и возвращает его. Если совпадающий экземпляр не найден, выбрасывается исключение ObjectNotFound
.
name | Имя сети для поиска. |
ObjectNotFound | Возбуждается, если сеть с заданным именем не найдена. |
def name | ( | self | ) |
def name | ( | self, | |
str | name | ||
) |
Установить имя подсети.
Устанавливает имя для этого Subnetwork. Вызывает ValueError, если Subnetwork с таким же именем уже существует.
name | Имя для установки. |
ValueError | Вызывается, если Subnetwork с таким именем уже существует. |
def nif | ( | self | ) |
Получить сетевой интерфейс (NIF).
Возвращает текущий экземпляр NIF, связанный с этим Subnetwork.
def nif | ( | self, | |
NIF | nif | ||
) |
Установка сетевого интрефейса для подсети.
Устанавливает сетевой интерйейс (экземпляр NIF) для этого Subnetwork. Вызывает ValueError, если параметр не является экземпляром класса NIF.
nif | Экземпляр NIF для установки. |
ValueError | Вызывается, если параметр не является экземпляром класса NIF. |
|
static |
name |
nif |
|
static |