/// <summary>
        /// Processes HTTP request.
        /// </summary>
        /// <param name="context">An <see cref="T:System.Web.HttpContext"/> object that provides references to the intrinsic server objects (for example, <see langword="Request"/>, <see langword="Response"/>, <see langword="Session"/>, and <see langword="Server"/>)<see langword=""/> used to service HTTP requests.</param>
        public void ProcessRequest(HttpContext context)
        {
            HttpResponse res = context.Response;

            res.BufferOutput = true;

            RenderHeader(res.Output, context.Request.ApplicationPath);


            IConfigurableApplicationContext appContext =
                WebApplicationContext.Current as IConfigurableApplicationContext;

            if (appContext == null)
            {
                throw new InvalidOperationException(
                          "Implementations of IApplicationContext must also implement IConfigurableApplicationContext");
            }

            IList <string> names = appContext.GetObjectDefinitionNames();

            foreach (string name in names)
            {
                RenderObjectDefinition(res.Output, name, appContext.ObjectFactory.GetObjectDefinition(name));
            }

            RenderFooter(res.Output);
        }