public static object ResolveMefDependency(System.IServiceProvider serviceProvider, Type typeToResolve) { IComponentModel componentModel = (IComponentModel)serviceProvider.GetService(typeof(SComponentModel)); var getServiceMethod = typeof(IComponentModel).GetMethod("GetService").MakeGenericMethod(typeToResolve); return(getServiceMethod.Invoke(componentModel, null)); }
private static ProjectItem GetDestinationFolderItem(string wszInputFilePath, System.IServiceProvider globalProvider) { var destFolderName = Path.GetFileNameWithoutExtension(wszInputFilePath); var dte = globalProvider.GetService(typeof(SDTE)) as DTE; var proj = VisualStudioAutomationHelper.GetActiveProject(dte); var apiRefsFolderItem = proj.ProjectItems.Cast <ProjectItem>().First(i => i.Name == RamlReferenceService.ApiReferencesFolderName); var destFolderItem = apiRefsFolderItem.ProjectItems.Cast <ProjectItem>().First(i => i.Name == destFolderName); return(destFolderItem); }
public static IVsHierarchy GetHierarchy(System.IServiceProvider serviceProvider, Project project) { var solution = serviceProvider.GetService(typeof(SVsSolution)) as IVsSolution; if (solution == null) { return(null); } IVsHierarchy hierarchy; solution.GetProjectOfUniqueName(project.FullName, out hierarchy); return(hierarchy); }
/// <summary> /// Instantiates and sites a new VsTextBuffer. /// </summary> internal static T CreateInstance <T>(System.IServiceProvider serviceProvider, ILocalRegistry localRegistry) where T : IVsTextBuffer { ArgumentValidation.CheckForNullReference(serviceProvider, "serviceProvider"); ArgumentValidation.CheckForNullReference(localRegistry, "localRegistry"); var obj = CreateObject <T>(localRegistry); var objectWithSite = obj as IObjectWithSite; if (objectWithSite != null) { objectWithSite.SetSite(serviceProvider); } return(obj); }
private Result GenerateCodeUsingTemplate(string wszInputFilePath, RamlInfo ramlInfo, System.IServiceProvider globalProvider, string refFilePath, string clientRootClassName) { var targetNamespace = RamlReferenceReader.GetRamlNamespace(refFilePath); var model = GetGeneratorModel(clientRootClassName, ramlInfo, targetNamespace); var templateFolder = GetTemplateFolder(wszInputFilePath); var templateFilePath = Path.Combine(templateFolder, ClientT4TemplateName); var extensionPath = Path.GetDirectoryName(GetType().Assembly.Location) + Path.DirectorySeparatorChar; var t4Service = new T4Service(globalProvider); var res = t4Service.TransformText(templateFilePath, model, extensionPath, wszInputFilePath, targetNamespace); return(res); }
private Result GenerateCodeUsingTemplate(string wszInputFilePath, RamlInfo ramlInfo, System.IServiceProvider globalProvider, string refFilePath) { var model = GetGeneratorModel(wszInputFilePath, ramlInfo); var vsixPath = Path.GetDirectoryName(GetType().Assembly.Location) + Path.DirectorySeparatorChar; var templateFileName = Path.Combine(vsixPath, "GeneratedModel.t4"); var t4Service = new T4Service(globalProvider); var targetNamespace = RamlReferenceReader.GetRamlNamespace(refFilePath); var res = t4Service.TransformText(templateFileName, model, vsixPath, wszInputFilePath, targetNamespace); return(res); }
public static T ResolveMefDependency <T>(System.IServiceProvider serviceProvider) where T : class { IComponentModel componentModel = (IComponentModel)serviceProvider.GetService(typeof(SComponentModel)); return(componentModel.GetService <T>()); }