public VisualStudioCodeGenerator(IVisualStudioWriter visualStudioWriter, IPartialCodeGenerator codeGenerator, ICodeGeneratorContextFactory codeGeneratorContextFactory, IVisualStudioEventProxy visualStudioEventProxy) { _visualStudioWriter = visualStudioWriter; _codeGenerator = codeGenerator; _codeGeneratorContextFactory = codeGeneratorContextFactory; _visualStudioEventProxy = visualStudioEventProxy; }
public SolutionFactory(ISolutionFileReader solutionFileReader, ICSharpProjectFactory cSharpProjectFactory, ISolutionContext solutionContext, IVisualStudioWriter visualStudioWriter) { _solutionFileReader = solutionFileReader; _cSharpProjectFactory = cSharpProjectFactory; _solutionContext = solutionContext; _visualStudioWriter = visualStudioWriter; }
public LoggingActivity(string activityName, IVisualStudioWriter visualStudioWriter = null) { _activityName = activityName; _visualStudioWriter = visualStudioWriter ?? _staticVisualStudioWriter; if (null == _visualStudioWriter) { throw new Exception("Both _staticVisualStudioWriter and visualStudioWriter are null. Call LoggingActivity.Initialize when creating the Kernel."); } _visualStudioWriter.OutputString("\r\n\r\n --- [" + activityName + "] BEGIN --- \r\n"); }
// ReSharper restore NotAccessedField.Local protected override void Initialize() { var sw = Stopwatch.StartNew(); base.Initialize(); //Get copy of current DTE var dte = (DTE)GetService(typeof(DTE)); var dte2 = dte as DTE2; //Create a Visual Studio Writer _visualStudioWriter = new VisualStudioWriter(dte, this); _visualStudioWriter.WriteToStatusBar("Initializing pMixins Code Generator Plug-In"); //Initialize Logging Log4NetInitializer.Initialize(_visualStudioWriter, this); //Get a logger for this class _log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); _log.Info("Initialized Logging"); //create Visual Studio Event Proxy _visualStudioEventProxy = new VisualStudioEventProxy(dte2); //Create CodeBehindFileHelper _codeBehindFileHelper = new CodeBehindFileHelper(dte2, typeof(pMixinsEmptySingleFileCodeGenerator).Name); _dteSolutionFileReader = new SolutionDTEReader(dte2); //Initialize the IoC Kernel ServiceLocator.Initialize(_visualStudioWriter, _visualStudioEventProxy, _codeBehindFileHelper, _dteSolutionFileReader); _log.Info("Initialized Kernel"); InitializeSolutionContext(dte); InitializeFileGenerators(); #if DEBUG _eventProxyLogger = ServiceLocator.Kernel.Get <VisualStudioEventProxyLogger>(); #endif _visualStudioWriter.WriteToStatusBar("Initializing pMixins Code Generator Plug-In ... Complete"); _log.InfoFormat("Initialization Complete in [{0}] ms", sw.ElapsedMilliseconds); }
public static void Initialize(IVisualStudioWriter visualStudioWriter, IVisualStudioEventProxy visualStudioEventProxy, ICodeBehindFileHelper codeBehindFileHelper, ISolutionFileReader dteSolutionFileReader) { Kernel = new StandardKernel( new StandardModule(), new pMixinsStandardModule()); Kernel.Bind<IVisualStudioWriter>().ToMethod(c => visualStudioWriter).InSingletonScope(); Kernel.Bind<IVisualStudioEventProxy>().ToMethod(c => visualStudioEventProxy).InSingletonScope(); Kernel.Bind<ICodeBehindFileHelper>().ToMethod(c => codeBehindFileHelper); Kernel.Rebind<ISolutionFileReader>().ToMethod(c => dteSolutionFileReader); LoggingActivity.Initialize(visualStudioWriter); //Make sure the VisualStudioOpenDocumentManager loads early Kernel.Get<IVisualStudioOpenDocumentManager>(); }
public static void Initialize(IVisualStudioWriter visualStudioWriter, IVisualStudioEventProxy visualStudioEventProxy, ICodeBehindFileHelper codeBehindFileHelper, ISolutionFileReader dteSolutionFileReader) { Kernel = new StandardKernel( new StandardModule(), new pMixinsStandardModule()); Kernel.Bind <IVisualStudioWriter>().ToMethod(c => visualStudioWriter).InSingletonScope(); Kernel.Bind <IVisualStudioEventProxy>().ToMethod(c => visualStudioEventProxy).InSingletonScope(); Kernel.Bind <ICodeBehindFileHelper>().ToMethod(c => codeBehindFileHelper); Kernel.Rebind <ISolutionFileReader>().ToMethod(c => dteSolutionFileReader); LoggingActivity.Initialize(visualStudioWriter); //Make sure the VisualStudioOpenDocumentManager loads early Kernel.Get <IVisualStudioOpenDocumentManager>(); }
public static void Initialize(IVisualStudioWriter visualStudioWriter, IServiceProvider serviceProvider) { if (_isInitialized) return; lock (_lock) { if (_isInitialized) return; //http://stackoverflow.com/questions/650694/changing-the-log-level-programmaticaly-in-log4net var outputWindowAppender = new VisualStudioOutputWindowAppender(visualStudioWriter) { Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), Threshold = #if DEBUG Level.Debug #else Level.Info #endif }; outputWindowAppender.AddFilter( new LevelAndLoggerFilter { LevelMax = Level.Fatal, LevelMin = Level.Warn, LoggerToMatch = typeof(IPipelineStep<>).Namespace }); var activityLogAppender = new VisualStudioActivityLogAppender(serviceProvider) { Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), Threshold = Level.Info }; #if DEBUG var debugFileAppender = new RollingFileAppender { AppendToFile = true, Threshold = Level.All, Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), File = @"c:\temp\pMixinsCodeGenerator.log", DatePattern = "yyyyMMdd'.log'", RollingStyle = RollingFileAppender.RollingMode.Date }; #endif log4net.Config.BasicConfigurator.Configure( outputWindowAppender, #if DEBUG debugFileAppender, #endif activityLogAppender); _isInitialized = true; } } #endregion Methods }
public static void Initialize(IVisualStudioWriter visualStudioWriter, IServiceProvider serviceProvider) { if (_isInitialized) { return; } lock (_lock) { if (_isInitialized) { return; } //http://stackoverflow.com/questions/650694/changing-the-log-level-programmaticaly-in-log4net var outputWindowAppender = new VisualStudioOutputWindowAppender(visualStudioWriter) { Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), Threshold = #if DEBUG Level.Debug #else Level.Info #endif }; outputWindowAppender.AddFilter( new LevelAndLoggerFilter { LevelMax = Level.Fatal, LevelMin = Level.Warn, LoggerToMatch = typeof(IPipelineStep <>).Namespace }); var activityLogAppender = new VisualStudioActivityLogAppender(serviceProvider) { Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), Threshold = Level.Info }; #if DEBUG var debugFileAppender = new RollingFileAppender { AppendToFile = true, Threshold = Level.All, Layout = new PatternLayout(@"%date{HH:mm:ss,fff} %thread% %-5level [%logger{2}] %message%newline"), File = @"c:\temp\pMixinsCodeGenerator.log", DatePattern = "yyyyMMdd'.log'", RollingStyle = RollingFileAppender.RollingMode.Date }; #endif log4net.Config.BasicConfigurator.Configure( outputWindowAppender, #if DEBUG debugFileAppender, #endif activityLogAppender); _isInitialized = true; } }
public VisualStudioOutputWindowAppender(IVisualStudioWriter outputWindow) { OutputWindow = outputWindow; Layout = new PatternLayout("%-5level %logger - %message%newline"); }
public static void Initialize(IVisualStudioWriter visualStudioWriter) { _staticVisualStudioWriter = visualStudioWriter; }