Example #1
0
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
     return new MvcCSharpRazorCodeGenerator(incomingCodeGenerator.ClassName,
                                                incomingCodeGenerator.RootNamespaceName,
                                                incomingCodeGenerator.SourceFileName,
                                                incomingCodeGenerator.Host);
 }
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
     if (incomingCodeGenerator is CSharpRazorCodeGenerator)
     {
         return new SimpleCSharpRazorCodeGenerator(incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, this);
     }
     return base.DecorateCodeGenerator(incomingCodeGenerator);
 }
        public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
        {
            if (incomingCodeGenerator is CSharpRazorCodeGenerator && ConfigHelper.HtmlMinificationEnabled())
            {
                return new MinifyHtmlCodeGenerator(incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, incomingCodeGenerator.Host);
            }

            return base.DecorateCodeGenerator(incomingCodeGenerator);
        }
        /// <summary>
        /// Decorates the code generator.
        /// </summary>
        /// <param name="incomingCodeGenerator">The incoming code generator.</param>
        /// <returns></returns>
        public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
        {
            if (incomingCodeGenerator is CSharpRazorCodeGenerator)
                return new CSharp.NancyCSharpRazorCodeGenerator(incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, incomingCodeGenerator.Host);
            if (incomingCodeGenerator is VBRazorCodeGenerator)
                return new VisualBasic.NancyVisualBasicRazorCodeGenerator(incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, incomingCodeGenerator.Host);

            return base.DecorateCodeGenerator(incomingCodeGenerator);
        }
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
     if (incomingCodeGenerator is Compilation.CSharp.CSharpRazorCodeGenerator)
     {
         return new Compilation.CSharp.CSharpRazorCodeGenerator(incomingCodeGenerator.ClassName,
             incomingCodeGenerator.RootNamespaceName,
             incomingCodeGenerator.SourceFileName,
             incomingCodeGenerator.Host);
     }
     return base.DecorateCodeGenerator(incomingCodeGenerator);
 }
        public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
        {
            if (incomingCodeGenerator is CSharpRazorCodeGenerator)
            {
                return new HtmlMinifierMvcCSharpRazorCodeGenerator(incomingCodeGenerator.ClassName,
                    incomingCodeGenerator.RootNamespaceName,
                    incomingCodeGenerator.SourceFileName,
                    incomingCodeGenerator.Host,
                    m_HtmlPageMinifier,
                    m_DebugStatusReader);
            }

            return base.DecorateCodeGenerator(incomingCodeGenerator);
        }
        public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
        {
            if (incomingCodeGenerator is CSharpRazorCodeGenerator)
              {
            var minifier = MinifierFactory.GetMinifier();

            return new HtmlOptimizerMvc4CSharpRazorCodeGenerator(
                      incomingCodeGenerator.ClassName,
                      incomingCodeGenerator.RootNamespaceName,
                      incomingCodeGenerator.SourceFileName,
                      incomingCodeGenerator.Host,
                      minifier);
              }

              return base.DecorateCodeGenerator(incomingCodeGenerator);
        }
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
     if (!incomingCodeGenerator.Host.DesignTimeMode)
     {
         var generator = new MinifyHtmlCodeGenerator(_minifier);
         if (incomingCodeGenerator is CSharpRazorCodeGenerator)
         {
             return new MinifyHtmlCSharpCodeGenerator(generator, incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, incomingCodeGenerator.Host);
         }
         if (incomingCodeGenerator is VBRazorCodeGenerator)
         {
             return new MinifyHtmlVBCodeGenerator(generator, incomingCodeGenerator.ClassName, incomingCodeGenerator.RootNamespaceName, incomingCodeGenerator.SourceFileName, incomingCodeGenerator.Host);
         }
     }
     return base.DecorateCodeGenerator(incomingCodeGenerator);
 }
        public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
        {
            if (incomingCodeGenerator is CSharpRazorCodeGenerator)
            {
                return new MinifiedCSharpRazorCodeGenerator(
                            incomingCodeGenerator.ClassName,
                            incomingCodeGenerator.RootNamespaceName,
                            incomingCodeGenerator.SourceFileName,
                            incomingCodeGenerator.Host);
            }

            if (incomingCodeGenerator is VBRazorCodeGenerator)
            {
                return new MinifiedVBRazorCodeGenerator(
                            incomingCodeGenerator.ClassName,
                            incomingCodeGenerator.RootNamespaceName,
                            incomingCodeGenerator.SourceFileName,
                            incomingCodeGenerator.Host);
            }

            return base.DecorateCodeGenerator(incomingCodeGenerator);
        }
		public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
		{
			var codeGenerator = CodeGenerator ?? base.DecorateCodeGenerator(incomingCodeGenerator);
			codeGenerator.GenerateLinePragmas = EnableLinePragmas;
			return codeGenerator;
		}
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
    return decorateCodeGenerator(incomingCodeGenerator);
 }
 public override RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator)
 {
     if (incomingCodeGenerator is CSharpRazorCodeGenerator)
     {
         return new OpenRastaCSharpRazorCodeGenerator(incomingCodeGenerator.ClassName,
                                                incomingCodeGenerator.RootNamespaceName,
                                                incomingCodeGenerator.SourceFileName,
                                                incomingCodeGenerator.Host);
     }
     if (incomingCodeGenerator is VBRazorCodeGenerator)
     {
         throw new InvalidOperationException("VB not supported yet.");
     }
     return base.DecorateCodeGenerator(incomingCodeGenerator);
 }
 /// <summary>
 /// Gets an instance of the code generator and is provided an opportunity to decorate or replace it
 /// </summary>
 /// <param name="incomingCodeGenerator">The code generator</param>
 /// <returns>Either the same code generator, after modifications, or a different code generator</returns>
 public virtual RazorCodeGenerator DecorateCodeGenerator(RazorCodeGenerator incomingCodeGenerator) {
     if (incomingCodeGenerator == null) { throw new ArgumentNullException("incomingCodeGenerator"); }
     return incomingCodeGenerator;
 }
Example #14
0
        /// <summary>
        /// Generates the required code using the specified compile unit.
        /// </summary>
        /// <param name="codeDom">The code DOM provider.</param>
        /// <param name="codeGenerator">The code generator.</param>
        /// <param name="builder">The string builder used to write the code.</param>
        private static void GenerateCode(CodeDomProvider codeDom, RazorCodeGenerator codeGenerator, StringBuilder builder)
        {
            // removed so the output is compatible with standard WebViewPage
            //            var statement = new CodeMethodInvokeExpression(new CodeThisReferenceExpression(), "Clear");
            //            codeGenerator.GeneratedExecuteMethod.Statements.Insert(0, new CodeExpressionStatement(statement));

            using (var writer = new StringWriter(builder))
            {
                codeDom.GenerateCodeFromCompileUnit(codeGenerator.GeneratedCode, writer, new CodeGeneratorOptions());
            }
        }