...
Блок кода | ||||
---|---|---|---|---|
| ||||
# После выполнения команд создания сервиса вызываем команды включения сервиса (serv.enable=) и опций (inetOption.x.enable=), если сервис должен быть включен # или команды выключения сервиса (serv.disable=), если сервис должен быть отключен sa.terminal.serv.create.after=${(newState()==1)?(serviceEnable()+optionsEnable()):serviceDisable()} # Перед выполнением команд изменения сервиса (serv.modify=), если произошло включение сервиса - вызываем команды включения сервиса (serv.modify.enable=) и опций (inetOption.x.enable=) sa.terminal.serv.modify.before=${(newState()==1&&oldState()!=1)?(serviceEnable()+optionsEnable()):''} # после (serv.modify=), если произошло отключение сервиса - сначала отключаем опции (inetOption.x.disable=), затем - сервис (serv.modify.disable=); # иначе, если переключения состояния нет - вызываем переключение опций (inetOption.x.disable= и (inetOption.x.enable=)) sa.terminal.serv.modify.after=${(newState()!=1)?(optionsDisable()+serviceDisable()):''};${(newState()==1&&oldState()==1)?(optionsSwitch()):''} # Перед удалением сервиса вызываем команды отключения опций и отключения сервиса sa.terminal.serv.cancel.before=${optionsDisable()+serviceDisable()} # Перед выполнением команд изменения соединения, если произошло включение сервиса - вызываем команды включения сервиса и опций sa.terminal.connection.modify.before=${(newState()==1&&oldState()!=1)?(connectionEnable()+optionsEnable()):''} # после, если произошло отключение соединения - сначала отключаем опции, затем - соединение; иначе, если переключения состояния нет - вызываем переключение опций для соединения sa.terminal.connection.modify.after=${(newState()!=1)?(optionsDisable()+connectionDisable()):''};${(newState()==1&&oldState()==1)?(optionsSwitch()):''} # Перед выполнением команд старта соединения (sa.terminal.connection.onAccountingStart), если соединение должно быть отключено - выполняем команды # отключения (sa.terminal.connection.modify.disable), иначе - выполняем команды включения (sa.terminal.connection.modify.enable) sa.terminal.connection.onAccountingStart.before=${(newState()!=1)?(connectionDisable()):(connectionEnable())} # После выполнения команд старта соединения, если соединени включено - вызываем команды включения опций соединения sa.terminal.connection.onAccountingStart.after=${(newState()==1)?(optionsEnable()):''} # Перед выполнением команд стопа соединения (sa.terminal.connection.onAccountingStop), если соединение было включено - вызываем команды отключения опций sa.terminal.connection.onAccountingStop.before=${(oldState()==1)?(optionsDisable()):''} |
Макросы serviceEnable(), serviceDisable(), connectionEnable(), connectionDisable(), connectionClose(), optionsEnable(), optionsDisable() вызывают соответствующие наборы команд. optionsSwitch() - вызывает наборы команд на отключение для старых опций и включение для новых. newState() и oldState() возвращают текущее и новое состояние сервиса или соединения, значения -1 - удален (для сервиса), 0 - отключен, 1 - включен.
...