public UnityPluginInstaller( ProjectReferenceChangeTracker changeTracker, ILogger logger, RdNotificationsModel notifications) { myLogger = logger; myNotifications = notifications; #if RIDER changeTracker.RegisterProjectChangeHandler(InstallPluginIfRequired); #endif }
public PerProjectSettings(ISolution solution, ChangeManager changeManager, ISettingsSchema settingsSchema, SettingsStorageProvidersCollection settingsStorageProviders, IShellLocks locks, ILogger logger, InternKeyPathComponent interned, UnityProjectFileCacheProvider unityProjectFileCache, ProjectReferenceChangeTracker changeTracker) { mySolution = solution; myChangeManager = changeManager; mySettingsSchema = settingsSchema; mySettingsStorageProviders = settingsStorageProviders; myLocks = locks; myLogger = logger; myInterned = interned; myUnityProjectFileCache = unityProjectFileCache; myProjectMountPoints = new Dictionary <IProject, SettingsStorageMountPoint>(); myProjectLifetimes = new Dictionary <IProject, Lifetime>(); changeTracker.RegisterProjectChangeHandler(InitialiseProjectSettings); }
public UnityPluginInstaller( Lifetime lifetime, ILogger logger, ISolution solution, IShellLocks shellLocks, UnityPluginDetector detector, RdNotificationsModel notifications, ISettingsStore settingsStore, ProjectReferenceChangeTracker changeTracker) { myPluginInstallations = new JetHashSet <FileSystemPath>(); myLifetime = lifetime; myLogger = logger; mySolution = solution; myShellLocks = shellLocks; myDetector = detector; myNotifications = notifications; myBoundSettingsStore = settingsStore.BindToContextLive(myLifetime, ContextRange.Smart(solution.ToDataContext())); BindToInstallationSettingChange(); changeTracker.RegisterProjectChangeHandler(InstallPluginIfRequired); }