public GlobalProductSyncSource(Lifetime lifetime, GlobalPerProductStorage globalPerProductStorage)
 {
     FilesToSync = new CollectionEvents<IProperty<FileSystemPath>>(lifetime, "GlobalProductSyncSource")
       {
     globalPerProductStorage.XmlFileStorage.Path
       };
 }
 public ExtensionsSyncSource(Lifetime lifetime, ExtensionLocations extensionLocations, IProductNameAndVersion product, AnyProductSettingsLocation anyProductSettingsLocation)
 {
     FilesToSync = new CollectionEvents<IProperty<FileSystemPath>>(lifetime, "ExtensionsSyncSource")
       {
     new Property<FileSystemPath>(lifetime, "ExtensionsSyncSource::ExtensionsSettings1", extensionLocations.UserExtensionSettingsFilePath),
     new Property<FileSystemPath>(lifetime, "ExtensionsSyncSource::ExtensionsSettings2", extensionLocations.UserExtensionSettingsFilePath.ChangeExtension(".xml")),
     new Property<FileSystemPath>(lifetime, "ExtensionsSyncSource::NuGetPackages.config",
       extensionLocations.GetBaseLocation(Environment.SpecialFolder.ApplicationData, anyProductSettingsLocation, product).Combine("packages.config"))
       };
 }
 public VsixExtensionProvider(Lifetime lifetime, ExtensionLocations extensionLocations)
 {
     this.extensionLocations = extensionLocations;
       extensions = new CollectionEvents<IExtension>(lifetime, "VsixExtensionProvider");
 }