/** * Checks if a given persistence configuration entry has a certain strategy for the given service * * @param serviceName the service to check the configuration for * @param itemConfig the persistence configuration entry * @param strategy the strategy to check for * @return true, if it has the given strategy */ private boolean hasStrategy(String serviceName, SimpleItemConfiguration itemConfig, SimpleStrategy strategy) { final PersistenceServiceConfiguration config = persistenceServiceConfigs.get(serviceName); if (config.getDefaults().contains(strategy) && itemConfig.getStrategies().isEmpty()) { return true; } else { for (SimpleStrategy s : itemConfig.getStrategies()) { if (s.equals(strategy)) { return true; } } return false; } }
/** * Checks if a given persistence configuration entry has a certain strategy for the given service * * @param serviceName the service to check the configuration for * @param itemConfig the persistence configuration entry * @param strategy the strategy to check for * @return true, if it has the given strategy */ private boolean hasStrategy(String serviceName, SimpleItemConfiguration itemConfig, SimpleStrategy strategy) { final PersistenceServiceConfiguration config = persistenceServiceConfigs.get(serviceName); if (config.getDefaults().contains(strategy) && itemConfig.getStrategies().isEmpty()) { return true; } else { for (SimpleStrategy s : itemConfig.getStrategies()) { if (s.equals(strategy)) { return true; } } return false; } }
@Override public void run() { synchronized (manager.persistenceServiceConfigs) { final PersistenceService persistenceService = manager.persistenceServices.get(dbId); final PersistenceServiceConfiguration config = manager.persistenceServiceConfigs.get(dbId); if (persistenceService != null) { for (SimpleItemConfiguration itemConfig : config.getConfigs()) { if (hasStrategy(config.getDefaults(), itemConfig, strategyName)) { for (Item item : manager.getAllItems(itemConfig)) { long startTime = System.nanoTime(); persistenceService.store(item, itemConfig.getAlias()); logger.trace("Storing item '{}' with persistence service '{}' took {}ms", item.getName(), dbId, TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime)); } } } } } }
@Override public void run() { synchronized (manager.persistenceServiceConfigs) { final PersistenceService persistenceService = manager.persistenceServices.get(dbId); final PersistenceServiceConfiguration config = manager.persistenceServiceConfigs.get(dbId); if (persistenceService != null) { for (SimpleItemConfiguration itemConfig : config.getConfigs()) { if (hasStrategy(config.getDefaults(), itemConfig, strategyName)) { for (Item item : manager.getAllItems(itemConfig)) { long startTime = System.nanoTime(); persistenceService.store(item, itemConfig.getAlias()); logger.trace("Storing item '{}' with persistence service '{}' took {}ms", item.getName(), dbId, TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime)); } } } } } }