NetworkRelease


Используется при моделировании транспортных сетей. Освобождает все или какие-то определенные сетевые ресурсы (ранее захваченные заявкой с помощью объекта NetworkSeize). В случае освобождения каких-то определенных ресурсов, они выбираются из общего числа захваченных ресурсов согласно заданному Списку ресурсов. Если заявка обладает, скажем, двумя ресурсами, заданными объектом hauler и тремя, заданными объектом loader, и пользователь задает список освобождаемых ресурсов {hauler, hauler, loader}, то будут освобождены оба захваченных заявкой ресурса типа hauler и первый ресурс loader из списка захваченных ресурсов.

Вся операция занимает нулевое время. 

Если освобождается движущийся ресурс, Вы можете как оставить его в текущем узле сети, так и вернуть его в его базовое местоположение. Сразу после освобождения сеть проверит, не были ли только что освобожденные ресурсы запрошены другими заявками, и если да, то движущийся ресурс будет тут же захвачен другой заявкой и не отправится в свое базовое местоположение, даже если у объекта будет выбрана соответствующая опция.

Переносной ресурс после освобождения остается в том же узле сети. Если Вы хотите вернуть его в его базовое местоположение, Вы можете переместить его туда в сопровождении либо заявки, либо движущегося ресурса.

При освобождении присоединенных к заявке ресурсы, само собой, они автоматически будут отсоединены от этой заявки, так что в этом случае добавлять в диаграмму объект NetworkDetach не нужно.

Параметры класса

Класс заявки
Класс заявок, проходящих через объект, должен быть подклассом Entity. Указав класс заявки, Вы можете напрямую обращаться к полям этого класса в коде динамических параметров, таких, как onEnter.
Синтаксис: T extends Entity
Значение по умолчанию: Entity

Порты

InPort in
Входной порт.
OutPortPush out
Выходной порт.

Параметры

Освобождать
Определяет, будет ли данный объект освобождать Все захваченные ресурсы или только определенные Заданные ресурсы, указанные ниже в Списке ресурсов.
Синтаксис boolean releaseAll
Значение по умолчанию Заданные ресурсы (false)
Список ресурсов { pool1, ... } [динамический]
Список имен объектов NetworkResourcePool, задающих те сетевые ресурсы, которые будут освобождаться данным объектом. Указав имя объекта один раз, заявка освободит один ресурс того типа, который задается этим объектом. Поэтому, например, если Вы хотите освободить два ресурса одного и того же типа, напишите имя соответствующего объекта дважды: { doctor, nurse, nurse }.
Синтаксис: NetworkResourcePool[] resources
Локальная переменная: T entity - заявка.
Движущиеся ресурсы
Определяет, должны ли освобождаемые движущиеся ресурсы возвращаться в базовое местоположение или продолжать оставаться в том месте, где они были освобождены.
Синтаксис boolean movingGoHome
Значение по умолчанию Возвращаются в базовое местоположение (true)
Действие при входе [динамический]
Код, выполняемый, когда заявка поступает в объект.
Синтаксис: void onEnter
Локальная переменная: T entity - заявка.
Действие при выходе [динамический]
Код, выполняемый, когда заявка покидает объект.
Синтаксис: void onExit
Локальная переменная: T entity - заявка.