public VcsManager() { for (VcsSupportFactory factory : ServiceLoader.load(VcsSupportFactory.class)) { vcss.put(factory.getType(), factory); } // Make sure file support is always the last VCS tried VcsSupportFactory fileSupport = new FileVcsSupportFactory(); vcss.put(fileSupport.getType(), fileSupport); }
public Vcs findSupportingVcs(File directory, Configuration configuration) { for (VcsSupportFactory factory : vcss.values()) { if (factory.canSupport(directory)) { return new Vcs(factory.getType(), factory.createVcsSupport(configuration)); } } throw new PrideException("No VCS support found for local repository in directory \"" + directory + "\""); }