public VisualStudioCodeGenerator(IVisualStudioWriter visualStudioWriter, IPartialCodeGenerator codeGenerator, ICodeGeneratorContextFactory codeGeneratorContextFactory, IVisualStudioEventProxy visualStudioEventProxy)
 {
     _visualStudioWriter          = visualStudioWriter;
     _codeGenerator               = codeGenerator;
     _codeGeneratorContextFactory = codeGeneratorContextFactory;
     _visualStudioEventProxy      = visualStudioEventProxy;
 }
 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;
 }
Example #4
0
        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");
        }
Example #5
0
        // 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);
        }
Example #6
0
        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>();
        }
Example #7
0
        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");
 }
Example #11
0
 public static void Initialize(IVisualStudioWriter visualStudioWriter)
 {
     _staticVisualStudioWriter = visualStudioWriter;
 }
        public VisualStudioOutputWindowAppender(IVisualStudioWriter outputWindow)
        {
            OutputWindow = outputWindow;

            Layout = new PatternLayout("%-5level %logger - %message%newline");
        }