Cleanup usage of InitialRepositoryLocationResolver and RepositoryLocationResolver

This commit is contained in:
René Pfeuffer
2018-11-22 17:06:29 +01:00
parent d329ca56f8
commit 20f5e7be1f
16 changed files with 71 additions and 83 deletions

View File

@@ -44,19 +44,13 @@ import sonia.scm.ConfigurationException;
import sonia.scm.SCMContextProvider;
import sonia.scm.installer.HgInstaller;
import sonia.scm.installer.HgInstallerFactory;
import sonia.scm.io.DirectoryFileFilter;
import sonia.scm.io.ExtendedCommand;
import sonia.scm.io.FileSystem;
import sonia.scm.io.INIConfiguration;
import sonia.scm.io.INIConfigurationReader;
import sonia.scm.io.INIConfigurationWriter;
import sonia.scm.io.INISection;
import sonia.scm.plugin.Extension;
import sonia.scm.repository.spi.HgRepositoryServiceProvider;
import sonia.scm.store.ConfigurationStoreFactory;
import sonia.scm.util.IOUtil;
import sonia.scm.util.SystemUtil;
import sonia.scm.util.Util;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
@@ -117,10 +111,13 @@ public class HgRepositoryHandler
* @param repositoryLocationResolver
*/
@Inject
public HgRepositoryHandler(ConfigurationStoreFactory storeFactory, FileSystem fileSystem,
Provider<HgContext> hgContextProvider, RepositoryLocationResolver repositoryLocationResolver)
public HgRepositoryHandler(ConfigurationStoreFactory storeFactory,
FileSystem fileSystem,
Provider<HgContext> hgContextProvider,
RepositoryLocationResolver repositoryLocationResolver,
InitialRepositoryLocationResolver initialRepositoryLocationResolver)
{
super(storeFactory, fileSystem, repositoryLocationResolver);
super(storeFactory, fileSystem, repositoryLocationResolver, initialRepositoryLocationResolver);
this.hgContextProvider = hgContextProvider;
try

View File

@@ -60,7 +60,8 @@ public class HgRepositoryHandlerTest extends SimpleRepositoryHandlerTestBase {
@Mock
private com.google.inject.Provider<HgContext> provider;
RepositoryLocationResolver repositoryLocationResolver;
private RepositoryLocationResolver repositoryLocationResolver;
private InitialRepositoryLocationResolver initialRepositoryLocationResolver;
@Override
protected void checkDirectory(File directory) {
@@ -73,11 +74,11 @@ public class HgRepositoryHandlerTest extends SimpleRepositoryHandlerTestBase {
@Override
protected RepositoryHandler createRepositoryHandler(ConfigurationStoreFactory factory,
File directory) {
DefaultFileSystem fileSystem = new DefaultFileSystem();
repositoryLocationResolver = new RepositoryLocationResolver(repoDao, new InitialRepositoryLocationResolver(contextProvider, fileSystem));
initialRepositoryLocationResolver = new InitialRepositoryLocationResolver(contextProvider);
repositoryLocationResolver = new RepositoryLocationResolver(repoDao, initialRepositoryLocationResolver);
HgRepositoryHandler handler = new HgRepositoryHandler(factory,
new DefaultFileSystem(),
new HgContextProvider(), repositoryLocationResolver);
new HgContextProvider(), repositoryLocationResolver, initialRepositoryLocationResolver);
handler.init(contextProvider);
HgTestUtil.checkForSkip(handler);
@@ -88,7 +89,7 @@ public class HgRepositoryHandlerTest extends SimpleRepositoryHandlerTestBase {
@Test
public void getDirectory() {
HgRepositoryHandler repositoryHandler = new HgRepositoryHandler(factory,
new DefaultFileSystem(), provider, repositoryLocationResolver);
new DefaultFileSystem(), provider, repositoryLocationResolver, initialRepositoryLocationResolver);
HgConfig hgConfig = new HgConfig();
hgConfig.setHgBinary("hg");
@@ -97,6 +98,6 @@ public class HgRepositoryHandlerTest extends SimpleRepositoryHandlerTestBase {
initRepository();
File path = repositoryHandler.getDirectory(repository);
assertEquals(repoPath.toString() + File.separator + InitialRepositoryLocationResolver.REPOSITORIES_NATIVE_DIRECTORY, path.getAbsolutePath());
assertEquals(repoPath.toString() + File.separator + RepositoryLocationResolver.REPOSITORIES_NATIVE_DIRECTORY, path.getAbsolutePath());
}
}

View File

@@ -105,10 +105,11 @@ public final class HgTestUtil
FileSystem fileSystem = mock(FileSystem.class);
PathBasedRepositoryDAO repoDao = mock(PathBasedRepositoryDAO.class);
RepositoryLocationResolver repositoryLocationResolver = new RepositoryLocationResolver(repoDao, new InitialRepositoryLocationResolver(context,fileSystem));
InitialRepositoryLocationResolver initialRepositoryLocationResolver = new InitialRepositoryLocationResolver(context);
RepositoryLocationResolver repositoryLocationResolver = new RepositoryLocationResolver(repoDao, initialRepositoryLocationResolver);
HgRepositoryHandler handler =
new HgRepositoryHandler(new InMemoryConfigurationStoreFactory(), fileSystem,
new HgContextProvider(), repositoryLocationResolver);
new HgContextProvider(), repositoryLocationResolver, initialRepositoryLocationResolver);
Path repoDir = directory.toPath();
when(repoDao.getPath(any())).thenReturn(repoDir);
handler.init(context);