Пример #1
0
        internal IEnumerable <object> GetExtensions(string extensionTypeAssemblyQualifiedName)
        {
            using (ExtensionAssemblyResolvingScope scope = new ExtensionAssemblyResolvingScope(this.logger, this.ExtensionsDirectory))
            {
                Type hostServiceType = Type.GetType(extensionTypeAssemblyQualifiedName);
                if (hostServiceType == null)
                {
                    return(null);
                }

                return(this.GetExtensions(hostServiceType));
            }
        }
Пример #2
0
        internal object GetExtension(string extensionTypeAssemblyQualifiedName)
        {
            VSDesignerPerfEventProvider perfEventProvider = new VSDesignerPerfEventProvider();

            perfEventProvider.WriteEvent(VSDesignerPerfEvents.WorkflowDesignerExtensionManagerGetExtensionStart);
            try
            {
                using (ExtensionAssemblyResolvingScope scope = new ExtensionAssemblyResolvingScope(this.logger, this.ExtensionsDirectory))
                {
                    Type hostServiceType = Type.GetType(extensionTypeAssemblyQualifiedName);
                    if (hostServiceType == null)
                    {
                        return(null);
                    }

                    return(this.GetExtension(hostServiceType));
                }
            }
            finally
            {
                perfEventProvider.WriteEvent(VSDesignerPerfEvents.WorkflowDesignerExtensionManagerGetExtensionEnd);
            }
        }