@Override public WriteBehindProvider create(ServiceCreationConfiguration<WriteBehindProvider> configuration) { if (configuration == null) { return new Provider(); } else if (configuration instanceof WriteBehindProviderConfiguration) { return new Provider(((WriteBehindProviderConfiguration) configuration).getThreadPoolAlias()); } else { throw new IllegalArgumentException("WriteBehind configuration must not be provided at CacheManager level"); } }
@Test public void parseServiceCreationConfiguration() throws SAXException, JAXBException, ParserConfigurationException, IOException, ClassNotFoundException { Configuration xmlConfig = new XmlConfiguration(getClass().getResource("/configs/writebehind-cache.xml")); assertThat(xmlConfig.getServiceCreationConfigurations()).hasSize(1); ServiceCreationConfiguration<?> configuration = xmlConfig.getServiceCreationConfigurations().iterator().next(); assertThat(configuration).isExactlyInstanceOf(WriteBehindProviderConfiguration.class); WriteBehindProviderConfiguration providerConfiguration = (WriteBehindProviderConfiguration) configuration; assertThat(providerConfiguration.getThreadPoolAlias()).isEqualTo("write-behind-pool"); }
@Override public WriteBehindProvider create(ServiceCreationConfiguration<WriteBehindProvider> configuration) { if (configuration == null) { return new Provider(); } else if (configuration instanceof WriteBehindProviderConfiguration) { return new Provider(((WriteBehindProviderConfiguration) configuration).getThreadPoolAlias()); } else { throw new IllegalArgumentException("WriteBehind configuration must not be provided at CacheManager level"); } }