コード例 #1
0
        private static void RegisterHostComponents(ContainerBuilder builder, IVisualStudioServices visualStudioServices)
        {
            var softVisPackage = new TypedParameter(typeof(IVisualStudioServices), visualStudioServices);

            builder.RegisterType <HostWorkspaceGateway>().WithParameter(softVisPackage).As <IRoslynWorkspaceProvider>().SingleInstance();
            builder.RegisterType <HostUiGateway>().WithParameter(softVisPackage).As <IHostUiService>().SingleInstance();

            builder.RegisterInstance(visualStudioServices).As <IVisualStudioServices>();
        }
コード例 #2
0
        public static IContainer CreateDependencyContainer(IVisualStudioServices visualStudioServices)
        {
            var builder = new ContainerBuilder();

            RegisterModelComponents(builder);
            RegisterDiagramComponents(builder);
            RegisterDiagramUiComponents(builder);
            RegisterDiagramPlugins(builder);

            RegisterHostComponents(builder, visualStudioServices);

            builder.RegisterType <VisualizationService>().As <IVisualizationService>().SingleInstance();
            builder.RegisterType <DiagramToolApplication>().SingleInstance();

            return(builder.Build());
        }
コード例 #3
0
 public HostWorkspaceGateway(IVisualStudioServices visualStudioServices)
 {
     _visualStudioServices = visualStudioServices;
 }
コード例 #4
0
 public HostUiGateway(IVisualStudioServices visualStudioServices)
 {
     _visualStudioServices = visualStudioServices;
 }