public static void Initialise(IVisualStudioApi visualStudioApi, Version resharperVersion, Func<Version, IReSharperApi> resharperApiFactory, Func<IReSharperApi, IVisualStudioApi, IExtensionManager> extensionManagerFactory) { IExtensionManager extensionManager = null; var resharperApi = resharperApiFactory(resharperVersion); resharperApi.Initialise(() => { extensionManager = extensionManagerFactory(resharperApi, visualStudioApi); extensionManager.InitialiseEnvironment(); }, () => { if (extensionManager != null) extensionManager.Dispose(); } ); }
public ExtensionManager(IReSharperApi resharperApi, IVisualStudioApi visualStudioApi, IPackageManager packageManager) { this.resharperApi = resharperApi; this.visualStudioApi = visualStudioApi; this.packageManager = packageManager; }
public static void Initialise(IVisualStudioApi visualStudioApi, Version resharperVersion) { Initialise(visualStudioApi, resharperVersion, version => new ReSharperApi60(version), ExtensionManagerFactory.Create); }
public static IExtensionManager Create(IReSharperApi resharperApi, IVisualStudioApi visualStudioApi) { var dummySourceRepository = new LocalPackageRepository(@"C:\rsrepo"); return new ExtensionManager(resharperApi, visualStudioApi, new PackageManager(dummySourceRepository, Paths.LocalRepositoryRoot)); }