forum.bitel.ru
http://forum.bitel.ru/

radiusClient.destroy() не в ServiceActivator`ах
http://forum.bitel.ru/viewtopic.php?f=44&t=11480
Страница 1 из 1

Автор:  vdd [ 30 мар 2016, 12:25 ]
Заголовок сообщения:  radiusClient.destroy() не в ServiceActivator`ах

1. Что будет плохого, если radiusClient.destroy() не вызывать?
2. Что будет плохого, если radiusClient.destroy() вызвать в рядовом методе, типа postprocessAccessRequest

Автор:  vdd [ 30 мар 2016, 16:19 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Сами спрашивали, сами и отвечаем.

1. Если не вызывать radiusClient.destroy() в методе postprocessAccessRequest RadiusProcessor'a, то у процесса BGInetAccess добавляется по два pipe на каждый Access-Request;
2. Если вызывать radiusClient.destroy() в том же методе, то появление pipe не связанно напрямую с Access-Request запросом, но, к сожалению, все равно происходит.

Автор:  Amir [ 30 мар 2016, 17:49 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Для чего вызывать?

Автор:  vdd [ 30 мар 2016, 17:55 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Amir писал(а):
Для чего вызывать?

Если не вызывать radiusClient.destroy() в методе postprocessAccessRequest RadiusProcessor'a, то у процесса BGInetAccess добавляется по два pipe на каждый Access-Request

Автор:  Amir [ 30 мар 2016, 17:55 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Имел ввиду - для чего RadiusClient там вообще использовать?

Автор:  Amir [ 30 мар 2016, 17:56 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Можно сделать
Код:
import ru.bitel.common.worker.Destroyable;

public class MyProtocolHandler
    extends ProtocolHandlerAdapter
    implements RadiusProtocolHandler,
                     [b]Destroyable[/b] {

  @Override
  public void destroy() throws Exception
  {
 
  }
}

Тогда при перечитывании конфигурации будет вызываться destroy, также как и в ServiceActivator.
Соответственно RadiusClient можно использовать также как в ru.bitel.bgbilling.modules.inet.dyn.device.radius.AbstractRadiusServiceActivator.

Автор:  vdd [ 30 мар 2016, 18:00 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Amir писал(а):
Имел ввиду - для чего RadiusClient там вообще использовать?

Что бы отправить Accounting-Update, что бы поднять сессию (https://forum.bitel.ru/viewtopic.php?f=44&t=11484)

Автор:  vdd [ 30 мар 2016, 18:04 ]
Заголовок сообщения:  Re: radiusClient.destroy() не в ServiceActivator`ах

Amir писал(а):
Можно сделать
Код:
import ru.bitel.common.worker.Destroyable;

public class MyProtocolHandler
    extends ProtocolHandlerAdapter
    implements RadiusProtocolHandler,
                     [b]Destroyable[/b] {

  @Override
  public void destroy() throws Exception
  {
 
  }
}

Тогда при перечитывании конфигурации будет вызываться destroy, также как и в ServiceActivator.
Соответственно RadiusClient можно использовать также как в ru.bitel.bgbilling.modules.inet.dyn.device.radius.AbstractRadiusServiceActivator.


Тогда и sendAsync можно будет использовать?! Большое спасибо за подсказку.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/