public void Build()
        {
            try
            {
                ClassInfo[] classInfos = GetClassInfos();
                EnumInfo[]  enumInfos  = GetEnumInfos();

                // copy files
                CopyGlobalFiles();

                // generate files like NavigationTabs.cs.ascx, Web.config, etc.
                BuildGlobalFiles(classInfos, enumInfos);

                // generate .asxc, .aspx and code files
                BuildClassFiles(classInfos);

                // generate .resx, .Designer.cs files
                BuildEnumFiles(enumInfos);

                _warnings.PrintWarnings(new CodeGeneratorWarnings.OutputMethod(_output));
            }
            catch (CodeGeneratorException e)
            {
                _warnings.PrintWarnings(new CodeGeneratorWarnings.OutputMethod(_output));
                throw e;
            }
        }