@Override public MailRepository provide(MailRepositoryUrl url) { return new MemoryMailRepository(); } }
public void init() throws Exception { LOGGER.info("JamesMailStore init... {}", this); List<HierarchicalConfiguration> registeredClasses = retrieveRegisteredClassConfiguration(); for (HierarchicalConfiguration registeredClass : registeredClasses) { readConfigurationEntry(registeredClass); } }
@Override public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException { return new MemoryMailRepositoryUrlStore(); } }
@Test public void configureShouldNotThrowOnEmptyConfiguration() throws Exception { repositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet( new MemoryMailRepositoryProvider())); repositoryStore.configure(new HierarchicalConfiguration()); repositoryStore.init(); }
@Override public Optional<MailRepository> get(MailRepositoryUrl url) { if (urlStore.contains(url)) { return Optional.of(select(url)); } return Optional.empty(); }
@Test public void selectShouldNotAddUrlWhenProtocolDoNotExist() { assertThatThrownBy(() -> repositoryStore.select(UNKNOWN_PROTOCOL_REPO)); assertThat(urlStore.listDistinct()).isEmpty(); }
@Test public void getUrlsShouldBeEmptyIfNoSelectWerePerformed() { assertThat(repositoryStore.getUrls()).isEmpty(); }
@Test public void configureShouldThrowWhenNonValidClassesAreProvided() throws Exception { repositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet( new MemoryMailRepositoryProvider())); repositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration).getConfiguration("fakemailrepositorystore")); assertThatThrownBy(() -> repositoryStore.init()) .isInstanceOf(ConfigurationException.class); }
@Test(expected = MailRepositoryStore.MailRepositoryStoreException.class) public void selectingANonRegisteredProtocolShouldFail() { repositoryStore.select(MailRepositoryUrl.from("proto://repo")); }
protected void createMailRepositoryStore() throws Exception { configuration = Configuration.builder() .workingDirectory("../") .configurationFromClasspath() .build(); fileSystem = new FileSystemImpl(configuration.directories()); MemoryMailRepositoryUrlStore urlStore = new MemoryMailRepositoryUrlStore(); mailRepositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet(new MemoryMailRepositoryProvider())); mailRepositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration) .getConfiguration("mailrepositorystore")); mailRepositoryStore.init(); }
private void createMailRepositoryStore() throws Exception { configuration = Configuration.builder() .workingDirectory("../") .configurationFromClasspath() .build(); fileSystem = new FileSystemImpl(configuration.directories()); MemoryMailRepositoryUrlStore urlStore = new MemoryMailRepositoryUrlStore(); mailRepositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet(new MemoryMailRepositoryProvider())); mailRepositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration) .getConfiguration("mailrepositorystore")); mailRepositoryStore.init(); }
@Before public void setUp() throws Exception { configuration = Configuration.builder() .workingDirectory("../") .configurationFromClasspath() .build(); fileSystem = new FileSystemImpl(configuration.directories()); urlStore = new MemoryMailRepositoryUrlStore(); repositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet( new MemoryMailRepositoryProvider(), new MemoryMailRepositoryProvider())); repositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration) .getConfiguration("mailrepositorystore")); repositoryStore.init(); }
private MemoryMailRepositoryStore createMemoryMailRepositoryStore() throws Exception { Configuration configuration = Configuration.builder() .workingDirectory("../") .configurationFromClasspath() .build(); FileSystem fileSystem = new FileSystemImpl(configuration.directories()); MemoryMailRepositoryUrlStore urlStore = new MemoryMailRepositoryUrlStore(); MemoryMailRepositoryStore mailRepositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet(new MemoryMailRepositoryProvider())); mailRepositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration) .getConfiguration("mailrepositorystore")); mailRepositoryStore.init(); return mailRepositoryStore; }
private void createMailRepositoryStore() throws Exception { configuration = Configuration.builder() .workingDirectory("../") .configurationFromClasspath() .build(); fileSystem = new FileSystemImpl(configuration.directories()); MemoryMailRepositoryUrlStore urlStore = new MemoryMailRepositoryUrlStore(); mailRepositoryStore = new MemoryMailRepositoryStore(urlStore, Sets.newHashSet(new MemoryMailRepositoryProvider())); mailRepositoryStore.configure(new FileConfigurationProvider(fileSystem, configuration) .getConfiguration("mailrepositorystore")); mailRepositoryStore.init(); } }