Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(231)

Unified Diff: obsolete/Microsoft.VisualStudio.Project/SingleFileGeneratorFactory.cs

Issue 10928195: First round of dead file removal (Closed) Base URL: https://github.com/samclegg/nativeclient-sdk.git@master
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: obsolete/Microsoft.VisualStudio.Project/SingleFileGeneratorFactory.cs
diff --git a/obsolete/Microsoft.VisualStudio.Project/SingleFileGeneratorFactory.cs b/obsolete/Microsoft.VisualStudio.Project/SingleFileGeneratorFactory.cs
deleted file mode 100644
index 309198d15bef94710857b8f68421e8fcd6b3de72..0000000000000000000000000000000000000000
--- a/obsolete/Microsoft.VisualStudio.Project/SingleFileGeneratorFactory.cs
+++ /dev/null
@@ -1,352 +0,0 @@
-/// Copyright (c) Microsoft Corporation. All rights reserved.
-
-using System;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-using Microsoft.VisualStudio;
-using Microsoft.VisualStudio.OLE.Interop;
-using Microsoft.VisualStudio.Shell.Interop;
-using Microsoft.Win32;
-using VSRegistry = Microsoft.VisualStudio.Shell.VSRegistry;
-
-namespace Microsoft.VisualStudio.Project
-{
- /// <summary>
- /// Provides implementation IVsSingleFileGeneratorFactory for
- /// </summary>
- public class SingleFileGeneratorFactory : IVsSingleFileGeneratorFactory
- {
- #region nested types
- private class GeneratorMetaData
- {
- #region fields
- private Guid generatorClsid = Guid.Empty;
- private int generatesDesignTimeSource = -1;
- private int generatesSharedDesignTimeSource = -1;
- private int useDesignTimeCompilationFlag = -1;
- object generator;
- #endregion
-
- #region ctor
- /// <summary>
- /// Constructor
- /// </summary>
- public GeneratorMetaData()
- {
- }
- #endregion
-
- #region Public Properties
- /// <summary>
- /// Generator instance
- /// </summary>
- public Object Generator
- {
- get
- {
- return generator;
- }
- set
- {
- generator = value;
- }
- }
-
- /// <summary>
- /// GeneratesDesignTimeSource reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- public int GeneratesDesignTimeSource
- {
- get
- {
- return generatesDesignTimeSource;
- }
- set
- {
- generatesDesignTimeSource = value;
- }
- }
-
- /// <summary>
- /// GeneratesSharedDesignTimeSource reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- public int GeneratesSharedDesignTimeSource
- {
- get
- {
- return generatesSharedDesignTimeSource;
- }
- set
- {
- generatesSharedDesignTimeSource = value;
- }
- }
-
- /// <summary>
- /// UseDesignTimeCompilationFlag reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- public int UseDesignTimeCompilationFlag
- {
- get
- {
- return useDesignTimeCompilationFlag;
- }
- set
- {
- useDesignTimeCompilationFlag = value;
- }
- }
-
- /// <summary>
- /// Generator Class ID.
- /// </summary>
- public Guid GeneratorClsid
- {
- get
- {
- return generatorClsid;
- }
- set
- {
- generatorClsid = value;
- }
- }
- #endregion
- }
- #endregion
-
- #region fields
- /// <summary>
- /// Base generator registry key for MPF based project
- /// </summary>
- private RegistryKey baseGeneratorRegistryKey;
-
- /// <summary>
- /// CLSID reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- private string GeneratorClsid = "CLSID";
-
- /// <summary>
- /// GeneratesDesignTimeSource reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- private string GeneratesDesignTimeSource = "GeneratesDesignTimeSource";
-
- /// <summary>
- /// GeneratesSharedDesignTimeSource reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- private string GeneratesSharedDesignTimeSource = "GeneratesSharedDesignTimeSource";
-
- /// <summary>
- /// UseDesignTimeCompilationFlag reg value name under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[VsVer]\Generators\[ProjFacGuid]\[GeneratorProgId]
- /// </summary>
- private string UseDesignTimeCompilationFlag = "UseDesignTimeCompilationFlag";
-
- /// <summary>
- /// Caches all the generators registered for the project type.
- /// </summary>
- private Dictionary<string, GeneratorMetaData> generatorsMap = new Dictionary<string, GeneratorMetaData>();
-
- /// <summary>
- /// The project type guid of the associated project.
- /// </summary>
- private Guid projectType;
-
- /// <summary>
- /// A service provider
- /// </summary>
- private System.IServiceProvider serviceProvider;
- #endregion
-
- #region ctors
- /// <summary>
- /// Constructor for SingleFileGeneratorFactory
- /// </summary>
- /// <param name="projectGuid">The project type guid of the associated project.</param>
- /// <param name="serviceProvider">A service provider.</param>
- public SingleFileGeneratorFactory(Guid projectType, System.IServiceProvider serviceProvider)
- {
- this.projectType = projectType;
- this.serviceProvider = serviceProvider;
- }
- #endregion
-
- #region properties
- /// <summary>
- /// Defines the project type guid of the associated project.
- /// </summary>
- public Guid ProjectGuid
- {
- get { return this.projectType; }
- set { this.projectType = value; }
- }
-
- /// <summary>
- /// Defines an associated service provider.
- /// </summary>
- public System.IServiceProvider ServiceProvider
- {
- get { return this.serviceProvider; }
- set { this.serviceProvider = value; }
- }
- #endregion
-
- #region IVsSingleFileGeneratorFactory Helpers
- /// <summary>
- /// Returns the project generator key under [VS-ConfigurationRoot]]\Generators
- /// </summary>
- private RegistryKey BaseGeneratorsKey
- {
- get
- {
- if(this.baseGeneratorRegistryKey == null)
- {
- using(RegistryKey root = VSRegistry.RegistryRoot(__VsLocalRegistryType.RegType_Configuration))
- {
- if(null != root)
- {
- string regPath = "Generators\\" + this.ProjectGuid.ToString("B");
- baseGeneratorRegistryKey = root.OpenSubKey(regPath);
- }
- }
- }
-
- return this.baseGeneratorRegistryKey;
- }
- }
-
- /// <summary>
- /// Returns the local registry instance
- /// </summary>
- private ILocalRegistry LocalRegistry
- {
- get
- {
- return this.serviceProvider.GetService(typeof(SLocalRegistry)) as ILocalRegistry;
- }
- }
- #endregion
-
- #region IVsSingleFileGeneratorFactory Members
- /// <summary>
- /// Creates an instance of the single file generator requested
- /// </summary>
- /// <param name="progId">prog id of the generator to be created. For e.g HKLM\SOFTWARE\Microsoft\VisualStudio\9.0Exp\Generators\[prjfacguid]\[wszProgId]</param>
- /// <param name="generatesDesignTimeSource">GeneratesDesignTimeSource key value</param>
- /// <param name="generatesSharedDesignTimeSource">GeneratesSharedDesignTimeSource key value</param>
- /// <param name="useTempPEFlag">UseDesignTimeCompilationFlag key value</param>
- /// <param name="generate">IVsSingleFileGenerator interface</param>
- /// <returns>S_OK if succesful</returns>
- public virtual int CreateGeneratorInstance(string progId, out int generatesDesignTimeSource, out int generatesSharedDesignTimeSource, out int useTempPEFlag, out IVsSingleFileGenerator generate)
- {
- Guid genGuid;
- ErrorHandler.ThrowOnFailure(this.GetGeneratorInformation(progId, out generatesDesignTimeSource, out generatesSharedDesignTimeSource, out useTempPEFlag, out genGuid));
-
- //Create the single file generator and pass it out. Check to see if it is in the cache
- if(!this.generatorsMap.ContainsKey(progId) || ((this.generatorsMap[progId]).Generator == null))
- {
- Guid riid = VSConstants.IID_IUnknown;
- uint dwClsCtx = (uint)CLSCTX.CLSCTX_INPROC_SERVER;
- IntPtr genIUnknown = IntPtr.Zero;
- //create a new one.
- ErrorHandler.ThrowOnFailure(this.LocalRegistry.CreateInstance(genGuid, null, ref riid, dwClsCtx, out genIUnknown));
- if(genIUnknown != IntPtr.Zero)
- {
- try
- {
- object generator = Marshal.GetObjectForIUnknown(genIUnknown);
- //Build the generator meta data object and cache it.
- GeneratorMetaData genData = new GeneratorMetaData();
- genData.GeneratesDesignTimeSource = generatesDesignTimeSource;
- genData.GeneratesSharedDesignTimeSource = generatesSharedDesignTimeSource;
- genData.UseDesignTimeCompilationFlag = useTempPEFlag;
- genData.GeneratorClsid = genGuid;
- genData.Generator = generator;
- this.generatorsMap[progId] = genData;
- }
- finally
- {
- Marshal.Release(genIUnknown);
- }
- }
- }
-
- generate = (this.generatorsMap[progId]).Generator as IVsSingleFileGenerator;
-
- return VSConstants.S_OK;
- }
-
- /// <summary>
- /// Gets the default generator based on the file extension. HKLM\Software\Microsoft\VS\9.0\Generators\[prjfacguid]\.extension
- /// </summary>
- /// <param name="filename">File name with extension</param>
- /// <param name="progID">The generator prog ID</param>
- /// <returns>S_OK if successful</returns>
- public virtual int GetDefaultGenerator(string filename, out string progID)
- {
- progID = "";
- return VSConstants.E_NOTIMPL;
- }
-
- /// <summary>
- /// Gets the generator information.
- /// </summary>
- /// <param name="progId">prog id of the generator to be created. For e.g HKLM\SOFTWARE\Microsoft\VisualStudio\9.0Exp\Generators\[prjfacguid]\[wszProgId]</param>
- /// <param name="generatesDesignTimeSource">GeneratesDesignTimeSource key value</param>
- /// <param name="generatesSharedDesignTimeSource">GeneratesSharedDesignTimeSource key value</param>
- /// <param name="useTempPEFlag">UseDesignTimeCompilationFlag key value</param>
- /// <param name="guiddGenerator">CLSID key value</param>
- /// <returns>S_OK if succesful</returns>
- public virtual int GetGeneratorInformation(string progId, out int generatesDesignTimeSource, out int generatesSharedDesignTimeSource, out int useTempPEFlag, out Guid guidGenerator)
- {
- RegistryKey genKey;
- generatesDesignTimeSource = -1;
- generatesSharedDesignTimeSource = -1;
- useTempPEFlag = -1;
- guidGenerator = Guid.Empty;
- if(string.IsNullOrEmpty(progId))
- return VSConstants.S_FALSE;
-
- //Create the single file generator and pass it out.
- if(!this.generatorsMap.ContainsKey(progId))
- {
- // We have to check whether the BaseGeneratorkey returns null.
- RegistryKey tempBaseGeneratorKey = this.BaseGeneratorsKey;
- if(tempBaseGeneratorKey == null || (genKey = tempBaseGeneratorKey.OpenSubKey(progId)) == null)
- {
- return VSConstants.S_FALSE;
- }
-
- //Get the CLSID
- string guid = (string)genKey.GetValue(GeneratorClsid, "");
- if(string.IsNullOrEmpty(guid))
- return VSConstants.S_FALSE;
-
- GeneratorMetaData genData = new GeneratorMetaData();
-
- genData.GeneratorClsid = guidGenerator = new Guid(guid);
- //Get the GeneratesDesignTimeSource flag. Assume 0 if not present.
- genData.GeneratesDesignTimeSource = generatesDesignTimeSource = (int)genKey.GetValue(this.GeneratesDesignTimeSource, 0);
- //Get the GeneratesSharedDesignTimeSource flag. Assume 0 if not present.
- genData.GeneratesSharedDesignTimeSource = generatesSharedDesignTimeSource = (int)genKey.GetValue(GeneratesSharedDesignTimeSource, 0);
- //Get the UseDesignTimeCompilationFlag flag. Assume 0 if not present.
- genData.UseDesignTimeCompilationFlag = useTempPEFlag = (int)genKey.GetValue(UseDesignTimeCompilationFlag, 0);
- this.generatorsMap.Add(progId, genData);
- }
- else
- {
- GeneratorMetaData genData = this.generatorsMap[progId];
- generatesDesignTimeSource = genData.GeneratesDesignTimeSource;
- //Get the GeneratesSharedDesignTimeSource flag. Assume 0 if not present.
- generatesSharedDesignTimeSource = genData.GeneratesSharedDesignTimeSource;
- //Get the UseDesignTimeCompilationFlag flag. Assume 0 if not present.
- useTempPEFlag = genData.UseDesignTimeCompilationFlag;
- //Get the CLSID
- guidGenerator = genData.GeneratorClsid;
- }
-
- return VSConstants.S_OK;
- }
- #endregion
-
- }
-}

Powered by Google App Engine
This is Rietveld 408576698