if ( service.checkHasInfo() && ( (directoryServiceFilter & Directory.ServiceFilterFlags.INFO) == Directory.ServiceFilterFlags.INFO ) ) respService.applyHasInfo(); respService.info(service.info()); respService.info().action(FilterEntryActions.SET); if ( service.checkHasState() && ( (directoryServiceFilter & Directory.ServiceFilterFlags.STATE) == Directory.ServiceFilterFlags.STATE ) ) respService.applyHasState(); respService.state(service.state()); respService.state().action(FilterEntryActions.SET); if ( service.checkHasLoad() && ( (directoryServiceFilter & Directory.ServiceFilterFlags.LOAD) == Directory.ServiceFilterFlags.LOAD ) ) respService.applyHasLoad(); respService.load(service.load()); respService.load().action(FilterEntryActions.SET); if ( service.checkHasLink() && ( (directoryServiceFilter & Directory.ServiceFilterFlags.LINK) == Directory.ServiceFilterFlags.LINK ) ) respService.applyHasLink(); respService.link(service.link()); respService.link().action(FilterEntryActions.SET); if ( service.checkHasData() && ( (directoryServiceFilter & Directory.ServiceFilterFlags.DATA) == Directory.ServiceFilterFlags.DATA ) )
private void buildRDMService(Service rdmService, int flags, int serviceAddOrDeleteAction, int filterAddOrClearAction) { rdmService.clear(); rdmService.action(serviceAddOrDeleteAction); rdmService.flags(flags); // checking only set action for the filters // other filter unit tests cover other filter actions if (rdmService.checkHasInfo()) buildRDMServiceInfo(rdmService.info(), filterAddOrClearAction); if (rdmService.checkHasLink()) buildRDMServiceLink(rdmService.link(), filterAddOrClearAction); if (rdmService.checkHasState()) buildRDMServiceState(rdmService.state(), filterAddOrClearAction); if (rdmService.checkHasLoad()) buildRDMServiceLoad(rdmService.load(), filterAddOrClearAction); if (rdmService.checkHasData()) buildRDMServiceData(rdmService.data(), filterAddOrClearAction); buildRDMServiceGroup(rdmService.groupStateList(), filterAddOrClearAction); }
private void processServiceUpdate(List<Service> serviceList, Error error) { for (Service rdmService : serviceList) { if (rdmService.action() == MapEntryActions.DELETE && rdmService.serviceId() == service.serviceId() ) { service.action(MapEntryActions.DELETE); } if(rdmService.info().serviceName().toString() != null) { System.out.println("Received serviceName: " + rdmService.info().serviceName()); } // update service cache - assume cache is built with previous refresh message if (rdmService.serviceId() == service.serviceId()) { rdmService.copy(service); } } }
void notifyOnServiceGroupChange(ClientSession clientSession, Service service) { if ( _directoryServiceStoreClient != null ) { if ( !service.groupStateList().isEmpty() ) { _directoryServiceStoreClient.onServiceGroupChange(clientSession, service.serviceId(), service.groupStateList()); } } }
if (service.checkHasInfo() == true && ((filter & Directory.ServiceFilterFlags.INFO) == 0)) service.flags(service.flags() & ~ServiceFlags.HAS_INFO); if (service.checkHasData() == true && ((filter & Directory.ServiceFilterFlags.DATA) == 0)) service.flags(service.flags() & ~ServiceFlags.HAS_DATA); if ((service.groupStateList().size() > 0) && ((filter & Directory.ServiceFilterFlags.GROUP) == 0)) service.groupStateList().clear(); // Remove group if (service.checkHasLink() == true && ((filter & Directory.ServiceFilterFlags.LINK) == 0)) service.flags(service.flags() & ~ServiceFlags.HAS_LINK); if (service.checkHasLoad() == true && ((filter & Directory.ServiceFilterFlags.LOAD) == 0)) service.flags(service.flags() & ~ServiceFlags.HAS_LOAD); if (service.checkHasState() == true && ((filter & Directory.ServiceFilterFlags.STATE) == 0)) service.flags(service.flags() & ~ServiceFlags.HAS_STATE);
if (serviceReceived.checkHasInfo() && ((filter & Directory.ServiceFilterFlags.INFO) != 0)) // Apply flag service.applyHasInfo(); retNumFilters++; if (serviceReceived.checkHasData() && ((filter & Directory.ServiceFilterFlags.DATA) != 0)) service.applyHasData(); retNumFilters++; if ((serviceReceived.groupStateList().size() > 0) && ((filter & Directory.ServiceFilterFlags.GROUP) != 0)) retNumFilters++; if (serviceReceived.checkHasLink() && ((filter & Directory.ServiceFilterFlags.LINK) != 0)) service.applyHasLink(); retNumFilters++; if (serviceReceived.checkHasLoad() && ((filter & Directory.ServiceFilterFlags.LOAD) != 0)) service.applyHasLoad(); retNumFilters++; if (serviceReceived.checkHasState() &&
_service.clear(); _service.action(MapEntryActions.ADD); _service.serviceId(serviceId); _service.applyHasInfo(); _service.info().action(FilterEntryActions.SET); _service.info().applyHasVendor(); _service.info().vendor().data(VENDOR); _service.info().serviceName().data(serviceName); _service.info().applyHasSupportsQosRange(); _service.info().supportsQosRange(0); _service.info().capabilitiesList().add((long)DomainTypes.MARKET_PRICE); _service.info().capabilitiesList().add((long)DomainTypes.MARKET_BY_ORDER); _service.info().applyHasQos(); Qos qos = CodecFactory.createQos(); qos.rate(QosRates.TICK_BY_TICK); qos.timeliness(QosTimeliness.REALTIME); _service.info().qosList().add(qos); _service.info().applyHasDictionariesUsed(); _service.info().dictionariesUsedList().add(FIELD_DICTIONARY_NAME); _service.info().dictionariesUsedList().add(ENUM_TYPE_DICTIONARY_NAME);
destService.clear(); destService.action(action()); destService.serviceId(serviceId()); if (checkHasInfo()) ret = info().copy(destService.info()); if (ret != CodecReturnCodes.SUCCESS) return ret; destService.applyHasInfo(); ret = data().copy(destService.data()); if (ret != CodecReturnCodes.SUCCESS) return ret; destService.applyHasData(); destService.groupStateList().add(destGroup); ret = group.copy(destGroup); if (ret != CodecReturnCodes.SUCCESS) ret = link().copy(destService.link()); if (ret != CodecReturnCodes.SUCCESS) return ret; destService.applyHasLink(); ret = load().copy(destService.load()); if (ret != CodecReturnCodes.SUCCESS) return ret; destService.applyHasLoad();
if ( submittedService.checkHasState() ) if ( submittedService.state().action() == FilterEntryActions.UPDATE) flags = cacheService.state().flags() | submittedService.state().flags(); retCode = submittedService.state().update(cacheService.state()); cacheService.state().flags(flags); retCode = submittedService.state().update(cacheService.state()); .append(submittedService.serviceId()).append(OmmLoggerClient.CR).append("Reason = ") .append( CodecReturnCodes.toString(retCode) ).append("."); return false; cacheService.applyHasState(); if ( submittedService.checkHasInfo() ) if ( submittedService.info().action() == FilterEntryActions.UPDATE) flags = cacheService.info().flags() | submittedService.info().flags(); retCode = submittedService.info().update(cacheService.info()); cacheService.info().flags(flags); retCode = submittedService.info().update(cacheService.info()); .append(submittedService.serviceId()).append(OmmLoggerClient.CR).append("Reason = ") .append( CodecReturnCodes.toString(retCode) ).append("."); return false;
void addToMap(Service service) { if (service.checkHasInfo()) { addToMap(service.serviceId(),service.info().serviceName().toString()); } }
_service.clear(); _service.flags(Service.ServiceFlags.HAS_INFO | Service.ServiceFlags.HAS_STATE | Service.ServiceFlags.HAS_LOAD); _service.serviceId(_serviceId); _service.action(MapEntryActions.ADD); _service.info().action(FilterEntryActions.SET); _service.info().serviceName().data(_serviceName); _service.info().applyHasVendor(); _service.info().vendor().data(vendor); _service.info().applyHasIsSource(); _service.info().isSource(1); _service.info().capabilitiesList().add((long)DomainTypes.DICTIONARY); if (xmlMsgData.hasMarketPrice()) _service.info().capabilitiesList().add((long)DomainTypes.MARKET_PRICE); _service.info().applyHasDictionariesProvided(); _service.info().dictionariesProvidedList().add(enumTypeDictionaryName); _service.info().dictionariesProvidedList().add(fieldDictionaryName); _service.info().applyHasDictionariesUsed(); _service.info().dictionariesUsedList().add(enumTypeDictionaryName); _service.info().dictionariesUsedList().add(fieldDictionaryName); _service.info().applyHasQos();
switch (oneService.action()) if (!(oneService.checkHasInfo())) String serviceName = oneService.info().serviceName().toString(); if(serviceName == null) if (existService.serviceId() != oneService.serviceId()) _serviceById.remove(existService.serviceId()); existService.serviceId(oneService.serviceId()); _serviceById.put(existService.serviceId(), existDirectory); oneService.copy(newService); _serviceById.put(oneService.serviceId(), directory); _serviceByName.put(serviceName, directory); (newService.state().acceptingRequests() == 1 && newService.state().serviceState() == 1)) _ommBaseImpl.dictionaryCallbackClient().downloadDictionary(directory); existDirectory = _serviceById.get(oneService.serviceId()); existService = existDirectory.service(); .append(oneService.serviceId()); .append("Service name ").append(existService.info().serviceName().toString()).append(OmmLoggerClient.CR) .append("Service id ").append(existService.serviceId());
service.clear(); service.info().serviceName().data(OmmNiProviderActiveConfig.DEFAULT_SERVICE_NAME); service.serviceId(OmmNiProviderActiveConfig.DEFAULT_SERVICE_ID); service.state().applyHasAcceptingRequests(); service.state().acceptingRequests(OmmNiProviderActiveConfig.DEFAULT_ACCEPTING_REQUESTS); service.info().applyHasIsSource(); service.info().isSource(OmmNiProviderActiveConfig.DEFAULT_SERVICE_IS_SOURCE); service.info().applyHasSupportsQosRange(); service.info().supportsQosRange(OmmNiProviderActiveConfig.DEFAULT_SERVICE_SUPPORTS_QOS_RANGE); service.info().serviceName().data(OmmIProviderActiveConfig.DEFAULT_SERVICE_NAME); service.serviceId(OmmIProviderActiveConfig.DEFAULT_SERVICE_ID); service.state().applyHasAcceptingRequests(); service.state().acceptingRequests(OmmIProviderActiveConfig.DEFAULT_ACCEPTING_REQUESTS); service.info().applyHasIsSource(); service.info().isSource(OmmIProviderActiveConfig.DEFAULT_SERVICE_IS_SOURCE); service.info().applyHasSupportsQosRange(); service.info().supportsQosRange(OmmIProviderActiveConfig.DEFAULT_SERVICE_SUPPORTS_QOS_RANGE); service.info().capabilitiesList().add((long)com.thomsonreuters.ema.rdm.EmaRdm.MMT_DICTIONARY); service.info().applyHasDictionariesProvided();
if ( inputServiceList.get(index).serviceId() == serviceId ) if ( service.action() == MapEntry.MapAction.DELETE ) respService.clear(); service.copy(respService); respService.clear(); if ( inputServiceList.get(index).action() == MapEntry.MapAction.DELETE ) respService.clear(); inputServiceList.get(index).copy(respService); respService.clear();
/** * Checks if is requested service up. * * @return true if service requested by application is up, false if not. */ public boolean isRequestedServiceUp() { return service.checkHasState() && service.state().checkHasAcceptingRequests() && service.state().acceptingRequests() == 1 && service.state().serviceState() == 1; }
switch (service.action()) break; case MapEntryActions.UPDATE: _tempWlInteger.value(service.serviceId()); wlService = _servicesByIdTable.get(_tempWlInteger); if (wlService != null) service.applyUpdate(wlService.rdmService()); ret = _watchlist.itemHandler().serviceUpdated(wlService, service.checkHasState()); case MapEntryActions.DELETE: _tempWlInteger.value(service.serviceId()); wlService = _servicesByIdTable.remove(_tempWlInteger); if (wlService != null) if (wlService.rdmService().checkHasInfo()) serviceName = wlService.rdmService().info().serviceName().toString(); _servicesByNameTable.remove(serviceName); ReactorReturnCodes.FAILURE, "WlServiceCache.processServiceList", "Invalid map entry action (" + service.action() + ") received on directory service."); break;
void removeConfigFileService(DirectoryServiceStore dirServiceStore, DirectoryCache directoryCache) { if (_serviceNameList.size() == 0) return; for (int i = 0; i < directoryCache.serviceList().size(); ) { Service service = directoryCache.serviceList().get(i); boolean found = false; for (String serviceName : _serviceNameList) { if (serviceName.equals(service.info().serviceName().toString())) { found = true; break; } } if (!found) { int serviceId = service.serviceId(); directoryCache.removeService(serviceId); dirServiceStore.remove(serviceId); } else i++; } } }
if (service.checkHasInfo() && service.info().serviceName().toString().equals(matchServiceName)) _serviceId = service.serviceId(); if (service.serviceId() == _serviceId) if (service.action() != MapEntryActions.DELETE) _serviceId = service.serviceId(); if (service.checkHasInfo()) for(int i = 0; i < service.info().capabilitiesList().size(); ++i) if (service.info().capabilitiesList().get(i) == _tunnelDomain)
assertEquals(watchlist.directoryHandler().service(460).rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service("IDN_RDF")); assertEquals(watchlist.directoryHandler().service("IDN_RDF").rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service(7191)); assertEquals(watchlist.directoryHandler().service(7191).rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service("ELEKTRON_DD")); assertEquals(watchlist.directoryHandler().service("ELEKTRON_DD").rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service(7001)); assertEquals(watchlist.directoryHandler().service(7001).rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service("QPROV1")); assertEquals(watchlist.directoryHandler().service("QPROV1").rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service(7002)); assertEquals(watchlist.directoryHandler().service(7002).rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service("QPROV2")); assertEquals(watchlist.directoryHandler().service("QPROV2").rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service(37397)); assertEquals(watchlist.directoryHandler().service(37397).rdmService().action(), MapEntryActions.ADD); assertNotNull(watchlist.directoryHandler().service("NI_PUB")); assertEquals(watchlist.directoryHandler().service("NI_PUB").rdmService().action(), MapEntryActions.ADD); watchlist.directoryHandler().service(460).rdmService().copy(serviceByIdBeforeUpdate); Service serviceByNameBeforeUpdate = DirectoryMsgFactory.createService(); watchlist.directoryHandler().service("IDN_RDF").rdmService().copy(serviceByNameBeforeUpdate); testServer.writeMessageToSocket(replay.read()); assertNotNull(serviceByNameAfterUpdate); assertEquals(serviceByIdAfterUpdate, serviceByNameAfterUpdate); assertEquals(serviceByIdAfterUpdate.action(), MapEntryActions.UPDATE); assertFalse(serviceByIdAfterUpdate.state().acceptingRequests() == serviceByIdBeforeUpdate.state().acceptingRequests());
WlService addToCache(Service service) { // add to _serviceList, _servicesByIdTable and _servicesByNameTable WlService wlService = ReactorFactory.createWlService(); service.copy(wlService.rdmService()); _serviceList.add(wlService); WlInteger wlInteger = ReactorFactory.createWlInteger(); wlInteger.value(service.serviceId()); wlService.tableKey(wlInteger); _servicesByIdTable.put(wlInteger, wlService); if (service.checkHasInfo()) { _servicesByNameTable.put(service.info().serviceName().toString(), wlService); } return wlService; }