forum.bitel.ru http://forum.bitel.ru/ |
|
как считать конф. устройства или один из его параметров? http://forum.bitel.ru/viewtopic.php?f=19&t=8811 |
Страница 1 из 1 |
Автор: | Dog [ 02 янв 2014, 14:31 ] |
Заголовок сообщения: | как считать конф. устройства или один из его параметров? |
есть объект Device: Код: ServerContext context = ServerContext.get(); DeviceService wsDevice = context.getService( InetDeviceService.class, 20 ); Utils utils = new Utils(); Device device = wsDevice.deviceGet(deviceId); Map<String,String> deviceConfigMap = utils.stringToPairsHash(device.getConfig()); если разобрать его конфиг как выше, то вот такой конфиг: Код: ip.resource.categoryId=8,18,24,3,2,58,77 w.gate.address=91.ххх.ххх.ххх w.groupResId=77 w.resId=102 он не разберет, изза первой строчки ip.resource.categoryId=8,18,24,3,2,58,77 и того, что там столько запятых. а если например добавить в конец каждой строки ";" то все будет хорошо (ну за исключением того, что он отрежет все категории ресурсов после 8, но мне впринципе эта строчка не нужна". и вот вопрос, может быть есть какой то более верный путь? или на что можно напороться если добавить к каждой строке конфига устройства ";" |
Автор: | Cromeshnic [ 03 янв 2014, 15:25 ] |
Заголовок сообщения: | Re: как считать конф. устройства или один из его параметров? |
Тоже часто сталкивался. Можно получить только из DeviceRuntime, который есть в DeviceMap (или DeviceRuntimeMap, не помню), которые есть в объектах Access и Accounting. А вот как получить эти объекты - хз ![]() |
Автор: | Dog [ 03 янв 2014, 19:02 ] |
Заголовок сообщения: | Re: как считать конф. устройства или один из его параметров? |
сделал пока как то так: Код: private Map<String,String> getParamMap ( String stringParam ) { try{ Map<String,String> paramMap = new HashMap<String,String>(); String[] pairs = stringParam.split("\n"); for (int i=0;i<pairs.length;i++) { String pair = pairs[i]; String[] keyValue = pair.split("="); paramMap.put(keyValue[0],keyValue[1]); } return paramMap; } catch (Exception e){ String message = "Ошибка при подключении услуги на устройстве: " + e.getMessage() ; logger.error( message, e ); return null; } } вроде работает. |
Автор: | Cromeshnic [ 03 янв 2014, 19:47 ] |
Заголовок сообщения: | Re: как считать конф. устройства или один из его параметров? |
Так прлзе тогда стандартными Бителовскими Preferences или ParameterMap воспользоваться. Тут проблема не в парсинге в любом случае. Проблема в том, что наследование конфигурации не происходит. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |