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

Как узнать свободный ли интерфейс?
http://forum.bitel.ru/viewtopic.php?f=44&t=7375
Страница 1 из 1

Автор:  aiwbend [ 01 ноя 2012, 16:31 ]
Заголовок сообщения:  Как узнать свободный ли интерфейс?

Как узнать занятость или отсутствие интерфейса на определенном устройстве? не нашел ни где.
Подскажите пожалуйста.

Автор:  borisk [ 01 ноя 2012, 16:46 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

Пользуясь чем? SQL или клиентом?

Автор:  stark [ 01 ноя 2012, 19:03 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

Правой кнопкой на устройстве в дереве устройств. Там Интерфейсы. Далее правой кнопкой на нужном интерфейсе - "Использование".

Автор:  aiwbend [ 01 ноя 2012, 19:18 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

динкод, не уточнил...
перед созданием сервиса из динкода мне нужно проверить занят ли определенный интерфейс и есть ли он на этом устройстве, чтобы не поймать exception.

Автор:  aiwbend [ 01 ноя 2012, 20:38 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

Сделал так, разово пойдет, всем спасибо)

Код:
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.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import java.sql.*;
import java.util.*;
import ru.bitel.oss.systems.inventory.resource.server.bean.DevicePortSubscriptionDao;
import bitel.billing.common.TimeUtils;

public class test2
   extends GlobalScriptBase
{
int device_type_id_bill;

   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
Calendar date = Calendar.getInstance();
java.sql.Date sqldate = TimeUtils.convertCalendarToSqlDate(date);

Connection con = connectionSet.getConnection();
DevicePortSubscriptionDao dpsd = new DevicePortSubscriptionDao(con, 15);
if(dpsd.list(558, 2, sqldate, sqldate).size() > 0){print("занят");} //(int deivceid, int port, sqldateFrom, sqldateTo)
else{print("свободен");}

   }
}


Автор:  stark [ 02 ноя 2012, 11:59 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

Вообще в 5.2 лучше уже отходить от использования менеджеров и переходить на сервисы. При операциях получения как тут еще можно, но при обновлении чего-нибудь лучше ползлваться сервисами (чтобы обновились зависимости, послались нужные события и т.п. )

Код:
ServerContext context = ServerContext.get();   
DeviceInterfaceService deviceService =  context.getService( DeviceInterfaceService.class, INET_MODULE_ID );
if ( deviceService.devicePortSubscriptionList( ... ).size() > 0 )
{
   print("занят")
}

 

Автор:  aiwbend [ 02 ноя 2012, 16:19 ]
Заголовок сообщения:  Re: Как узнать свободный ли интерфейс?

спасибо, учту.

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