BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 20 июн 2025, 20:12

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: [FYI] Собственные синглтоны в BGBilling
СообщениеДобавлено: 20 янв 2011, 12:24 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Задача: создать объект в контексте биллинга, доступный из любого скрипта.

Singleton

Например, у нас используется собственный брокер ActiveMQ для взаимодействия с внешней CRM и т.п.
Устанавливать коннект к брокеру в каждом скрипте, где он нужен - долго. Потому поступаем так:

Код:
      Setup setup = Setup.getSetup();
      Connection connection = (Connection) setup.getObject("myJMSConnection");
      if(connection==null){//Если объект ещё не создан (первое обращение) - создаём его
         String url = setup.get("custom.activemq.url","");
         String user = setup.get("custom.activemq.user","");
         String password = setup.get("custom.activemq.password","");
         ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(user, password, url);
         connection = connectionFactory.createConnection();
         connection.start();
         setup.putObject("myJMSConnection", connection);
      }


В общем виде любой объект можно запихать в глобальный контекст:
Код:
Setup setup = Setup.getSetup();
MySingleton s = (MySingleton)setup.getObject("mySingleton");


В радиус-сервере будет:
Код:
RadiusSetup setup = RadiusSetup.getSetup();
MySingleton s = (MySingleton)setup.getObject("mySingletone");


Если вы ничего не поняли, значит оно вам ещё не нужно :)


Последний раз редактировалось Cromeshnic 23 янв 2011, 11:36, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 янв 2011, 17:53 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 16 сен 2010, 11:53
Сообщения: 501
Карма: 15
Cromeshnic писал(а):
Если вы ничего не поняли, значит оно вам ещё не нужно :)

после таких слов авторы топика обычно закрывают темы)

_________________
Клиент: вер. 7.0.806 / 29.04.2016 13:18:28 os: Windows 7; java: Java HotSpot(TM) Client VM, v.1.8.0_66
Сервер: вер. 7.0.1035 / 29.04.2016 13:17:38 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_92


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 янв 2011, 12:54 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
забавно, но недавно мы как раз обсуждали зачем нужен putObject и предлагали даже его убить :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 янв 2011, 13:46 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Вывод для пользователей: выкладывайте свои скрипты на форум и в вики, чтобы ловить меньше граблей при апдейтах.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.039s | 23 Queries | GZIP : On ]