public SvnAuthenticationManager getAuthenticationManager(final SvnVcs svnVcs) { if (myAuthManager == null) { // reloaded when configuration directory changes myAuthManager = new SvnAuthenticationManager(svnVcs.getProject(), new File(getConfigurationDirectory())); Disposer.register( svnVcs.getProject(), new Disposable() { @Override public void dispose() { myAuthManager = null; } }); getInteractiveManager(svnVcs); // to init myAuthManager.setAuthenticationProvider( new SvnAuthenticationProvider(svnVcs, myInteractiveProvider, RUNTIME_AUTH_CACHE)); myAuthManager.setRuntimeStorage(RUNTIME_AUTH_CACHE); } return myAuthManager; }