BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Создание нового устройства в Inet
СообщениеДобавлено: 25 июн 2012, 11:18 
Не в сети

Зарегистрирован: 20 апр 2011, 09:56
Сообщения: 346
Карма: 19
Нужно создать новое устройство в модуле инет. Натыкал примерно так

Код:
package ru.rta.bgbilling.inet;

import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;


import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDevice;
import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDeviceType;
import ru.bitel.bgbilling.modules.inet.api.server.bean.InetDeviceDao;
import ru.bitel.oss.systems.inventory.resource.common.bean.Device;
import ru.bitel.oss.systems.inventory.resource.common.bean.DeviceType;
import ru.bitel.oss.systems.inventory.resource.server.bean.DeviceDao;

import java.sql.*;

public class test
   extends GlobalScriptBase
{
Connection con;
   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
con = connectionSet.getConnection();

InetDevice inetd = new InetDevice();
InetDeviceType inetdt = new InetDeviceType(5, "DGS 3627G");
InetDeviceDao idd = new InetDeviceDao (con, 2);
print (inetdt);
inetd.setParentId(2);
inetd.setDeviceTypeId(5);
inetd.setHost("10.147.2.254");
inetd.setTitle(Device.generateTitle(inetd, inetdt));
inetd.setIdentifier("50let40-1p-9et-DGS-3627G-M");

//idd.updateImpl(inetd);// уг
print (inetd);

   }

}


правильно ли я "собрал" InetDevice() и как теперь его засунуть в бд? эти абстрактные классы выжали меня )


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 июн 2012, 13:22 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Код:
package ru;

import ru.bitel.bgbilling.kernel.container.managed.ServerContext;
import ru.bitel.bgbilling.kernel.event.EventProcessor;
import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDevice;
import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDeviceType;
import ru.bitel.bgbilling.modules.inet.api.common.service.InetDeviceService;
import ru.bitel.bgbilling.modules.inet.api.server.event.InetReloadEvent;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import ru.bitel.oss.systems.inventory.resource.common.bean.Device;

public class test
   extends GlobalScriptBase
{
   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
      ServerContext context = ServerContext.get();
      InetDeviceService deviceService = context.newService( InetDeviceService.class, 2 );

      // получение типа устройства по id                           
      InetDeviceType deviceType = deviceService.deviceTypeGet( 5 );

      InetDevice device = new InetDevice();
      device.setDeviceTypeId( 5 );
      ....
      device.setTitle( Device.generateTitle( device, deviceType ) );

      // обновление в базе
      deviceService.deviceUpdate( device );
      
      // перезагрузка конфигурации на всех приложениях (access/accounting)
      EventProcessor.getInstance().publish( new InetReloadEvent( moduleId, userId ) );
   }
}


Но InetDeviceService еще не попал в API, т.к. может измениться класс InetDevice viewtopic.php?f=44&t=6870


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 июн 2012, 15:34 
Не в сети

Зарегистрирован: 20 апр 2011, 09:56
Сообщения: 346
Карма: 19
Спасибо большое!
Вот так все заработало, может пригодится кому нибудь.

Код:
package ru.rta.bgbilling.inet;

import ru.bitel.bgbilling.kernel.container.managed.ServerContext;
import ru.bitel.bgbilling.kernel.event.EventProcessor;
import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDevice;
import ru.bitel.bgbilling.modules.inet.api.common.bean.InetDeviceType;
import ru.bitel.bgbilling.modules.inet.api.common.service.InetDeviceService;
import ru.bitel.bgbilling.modules.inet.api.server.event.InetReloadEvent;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import ru.bitel.oss.systems.inventory.resource.common.bean.Device;

import java.util.*;

public class test
   extends GlobalScriptBase
{
   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
      HashSet groupd = new HashSet( 1, 1 ); //сэт с id групп устройств
      groupd.add(new Integer(1));

      ServerContext context = ServerContext.get();
      InetDeviceService deviceService = context.newService( InetDeviceService.class, 2 ); //(Class, int moduleId)

      // получение типа устройства по id                           
      InetDeviceType deviceType = deviceService.deviceTypeGet( 5 );

      InetDevice device = new InetDevice();
      device.setDeviceTypeId( 5 );      
      device.setParentId(2);
      device.setHost("10.147.2.254");
      device.setIdentifier("50let40-1p-9et-DGS-3627G-M");
      device.setUsername("");
      device.setPassword("");
      device.setSecret("");
      device.setConfig("");      
      device.setComment("");
      device.setDeviceGroupIds(groupd);
      device.setTitle( Device.generateTitle( device, deviceType ) );
      print(device);

      // обновление в базе
      deviceService.deviceUpdate( device );
      // перезагрузка конфигурации на всех приложениях (access/accounting)
      EventProcessor.getInstance().publish( new InetReloadEvent( 2, 0 )); //( moduleId, userId )
   }
}



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

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


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

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


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

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