ServiceNamespacesContext(NodeEngineImpl nodeEngine, PartitionReplicationEvent event) { Collection<ServiceInfo> services = nodeEngine.getServiceInfos(FragmentedMigrationAwareService.class); for (ServiceInfo serviceInfo : services) { FragmentedMigrationAwareService service = serviceInfo.getService(); Collection<ServiceNamespace> namespaces = service.getAllServiceNamespaces(event); if (namespaces != null) { String serviceName = serviceInfo.getName(); allNamespaces.addAll(namespaces); addNamespaceToServiceMappings(namespaces, serviceName); } } allNamespaces.add(NonFragmentedServiceNamespace.INSTANCE); namespaceIterator = allNamespaces.iterator(); }
ServiceNamespacesContext(NodeEngineImpl nodeEngine, PartitionReplicationEvent event) { Collection<ServiceInfo> services = nodeEngine.getServiceInfos(FragmentedMigrationAwareService.class); for (ServiceInfo serviceInfo : services) { FragmentedMigrationAwareService service = serviceInfo.getService(); Collection<ServiceNamespace> namespaces = service.getAllServiceNamespaces(event); if (namespaces != null) { String serviceName = serviceInfo.getName(); allNamespaces.addAll(namespaces); addNamespaceToServiceMappings(namespaces, serviceName); } } allNamespaces.add(NonFragmentedServiceNamespace.INSTANCE); namespaceIterator = allNamespaces.iterator(); }
private Collection<Operation> createReplicationOperations(PartitionReplicationEvent event, boolean nonFragmentedOnly) { Collection<Operation> operations = new ArrayList<Operation>(); NodeEngineImpl nodeEngine = (NodeEngineImpl) getNodeEngine(); Collection<ServiceInfo> services = nodeEngine.getServiceInfos(MigrationAwareService.class); for (ServiceInfo serviceInfo : services) { MigrationAwareService service = serviceInfo.getService(); if (nonFragmentedOnly && service instanceof FragmentedMigrationAwareService) { // skip fragmented services continue; } Operation op = service.prepareReplicationOperation(event); if (op != null) { op.setServiceName(serviceInfo.getName()); operations.add(op); } } return operations; }
final Collection<Operation> createFragmentReplicationOperations(PartitionReplicationEvent event, ServiceNamespace ns) { assert !(ns instanceof NonFragmentedServiceNamespace) : ns + " should be used only for non-fragmented services!"; Collection<Operation> operations = emptySet(); NodeEngineImpl nodeEngine = (NodeEngineImpl) getNodeEngine(); Collection<ServiceInfo> services = nodeEngine.getServiceInfos(FragmentedMigrationAwareService.class); for (ServiceInfo serviceInfo : services) { FragmentedMigrationAwareService service = serviceInfo.getService(); if (!service.isKnownServiceNamespace(ns)) { continue; } operations = prepareAndAppendReplicationOperation(event, ns, service, serviceInfo.getName(), operations); } return operations; }
private Collection<Operation> createReplicationOperations(PartitionReplicationEvent event, boolean nonFragmentedOnly) { Collection<Operation> operations = new ArrayList<Operation>(); NodeEngineImpl nodeEngine = (NodeEngineImpl) getNodeEngine(); Collection<ServiceInfo> services = nodeEngine.getServiceInfos(MigrationAwareService.class); for (ServiceInfo serviceInfo : services) { MigrationAwareService service = serviceInfo.getService(); if (nonFragmentedOnly && service instanceof FragmentedMigrationAwareService) { // skip fragmented services continue; } Operation op = service.prepareReplicationOperation(event); if (op != null) { op.setServiceName(serviceInfo.getName()); operations.add(op); } } return operations; }
final Collection<Operation> createFragmentReplicationOperations(PartitionReplicationEvent event, ServiceNamespace ns) { assert !(ns instanceof NonFragmentedServiceNamespace) : ns + " should be used only for non-fragmented services!"; Collection<Operation> operations = emptySet(); NodeEngineImpl nodeEngine = (NodeEngineImpl) getNodeEngine(); Collection<ServiceInfo> services = nodeEngine.getServiceInfos(FragmentedMigrationAwareService.class); for (ServiceInfo serviceInfo : services) { FragmentedMigrationAwareService service = serviceInfo.getService(); if (!service.isKnownServiceNamespace(ns)) { continue; } operations = prepareAndAppendReplicationOperation(event, ns, service, serviceInfo.getName(), operations); } return operations; }
private void initService(Map<String, Properties> serviceProps, Map<String, Object> serviceConfigObjects, ServiceInfo serviceInfo) { final Object service = serviceInfo.getService(); if (serviceInfo.isConfigurableService()) { try { if (logger.isFinestEnabled()) { logger.finest("Configuring service -> " + service); } final Object configObject = serviceConfigObjects.get(serviceInfo.getName()); ((ConfigurableService) service).configure(configObject); } catch (Throwable t) { logger.severe("Error while configuring service: " + t.getMessage(), t); } } if (serviceInfo.isManagedService()) { try { if (logger.isFinestEnabled()) { logger.finest("Initializing service -> " + service); } final Properties props = serviceProps.get(serviceInfo.getName()); ((ManagedService) service).init(nodeEngine, props != null ? props : new Properties()); } catch (Throwable t) { logger.severe("Error while initializing service: " + t.getMessage(), t); } } }
private void initService(Map<String, Properties> serviceProps, Map<String, Object> serviceConfigObjects, ServiceInfo serviceInfo) { final Object service = serviceInfo.getService(); if (serviceInfo.isConfigurableService()) { try { if (logger.isFinestEnabled()) { logger.finest("Configuring service -> " + service); } final Object configObject = serviceConfigObjects.get(serviceInfo.getName()); ((ConfigurableService) service).configure(configObject); } catch (Throwable t) { logger.severe("Error while configuring service: " + t.getMessage(), t); } } if (serviceInfo.isManagedService()) { try { if (logger.isFinestEnabled()) { logger.finest("Initializing service -> " + service); } final Properties props = serviceProps.get(serviceInfo.getName()); ((ManagedService) service).init(nodeEngine, props != null ? props : new Properties()); } catch (Throwable t) { logger.severe("Error while initializing service: " + t.getMessage(), t); } } }