Asterisk-Java завершает работу после подключения

Я использую Asterisk с asterisk-java библиотека для обнаружения событий. Следующая выдержка из кода показывает мое использование. Соединение должно оставаться открытым, но оно просто закрывается после инициализации, когда я не использую бесконечный цикл. Как я могу сохранить соединение, пока приложение не закроется?

[...]
public AsteriskManager(AsteriskAccountData asteriskAccountData) 
throws ManagerCommunicationException {
    this.asteriskAccountData = asteriskAccountData;
    this.asteriskStateModel = new AsteriskStateModel();
    new Thread(() -> {
        asteriskServer = new DefaultAsteriskServer(
                asteriskAccountData.getHost(),
                asteriskAccountData.getUser(),
                asteriskAccountData.getPassword()
        );
        ManagerConnectionFactory factory = new ManagerConnectionFactory(
                asteriskAccountData.getHost(),
                asteriskAccountData.getUser(),
                asteriskAccountData.getPassword()
        );
        this.managerConnection = factory.createManagerConnection();
        try {
            asteriskServer.addAsteriskServerListener(this);
            managerConnection.addEventListener(this);
            registerListener();
            //FIXME endless thread
            while (true) {
                try {
                    Thread.sleep(10);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        } catch (ManagerCommunicationException ex) {
            //FIXME error handling
        }
    }, "AsteriskManagerThread").start();
}
[...]

0 ответов

Другие вопросы по тегам