2 // System.Web.Compilation.PageCompiler
5 // Gonzalo Paniagua Javier (gonzalo@ximian.com)
7 // (C) 2002 Ximian, Inc (http://www.ximian.com)
12 namespace System.Web.Compilation
16 private PageParser pageParser;
18 internal PageCompiler (PageParser pageParser)
20 this.pageParser = pageParser;
23 public static Type CompilePageType (PageParser pageParser)
25 string sourceFile = GenerateSourceFile (pageParser.InputFile);
26 return TemplateFactory.GetTypeFromSource (sourceFile);
29 private static string GenerateSourceFile (string inputFile)
31 Stream input = File.OpenRead (inputFile);
32 AspParser parser = new AspParser (inputFile, input);
34 AspGenerator generator = new Generator (args [i], parser.Elements);
35 //FIXME: set properties here -> base type, interfaces,...
36 generator.ProcessElements ();
37 string code = generator.GetCode ().ReadToEnd ();
38 //FIXME: should get Tmp dir for this application
39 string csName = Path.GetTempFileName ();
40 StreamWriter output = File.OpenWrite (csName);