Example #1
0
        internal static void Initialize(SiteSettings settings)
        {
            Settings = settings;
            RegisterMiddlewares();
            RegisterContextProcessors();
            CreateOrmManagers();
            LoadUrls();

            Views = new ViewManager();
        }
Example #2
0
 static void ResolveUnknownElement(SiteSettings siteSettings, XmlElement element, Dictionary<string, string> typePrefixes)
 {
     if (element.Name == "context_processors")
         siteSettings.ContextProcessors = DeserializeTypes (element, "type", typePrefixes);
     else if (element.Name == "middleware_classes")
         siteSettings.MiddlewareClasses = DeserializeTypes (element, "type", typePrefixes);
     else if (element.Name == "urls")
         siteSettings.Urls = DeserializeTypes (element, "type", typePrefixes);
     else if (element.Name == "installed_apps")
         siteSettings.InstalledApps = DeserializeTypes (element, "type", typePrefixes);
     else if (element.Name == "secure_proxy_ssl_header")
     {
         siteSettings.SecureProxySslHeader = new string[]
         {
             element.Attributes["header"].Value,
             element.Attributes["value"].Value
         };
     }
 }
        public object Create(object parent, object configContext, XmlNode section)
        {
            XmlNodeList list = section.SelectNodes("endpoint");
            if (list.Count > 0)
            {

                EndPoint = new ServerEndPoint()
                {
                    IPAddress = list[0].Attributes["ipaddress"].Value,
                    Port = int.Parse(list[0].Attributes["port"].Value)
                };

                XmlAttribute modeAttr = list[0].Attributes["mode"];
                if(modeAttr != null)
                    EndPoint.Mode = (ServerMode)Enum.Parse(typeof(ServerMode), modeAttr.Value, true);
                else
                    EndPoint.Mode = ServerMode.Standalone;
            }

            list = section.SelectNodes("typeprefixes/prefix");
            if (list.Count > 0)
            {
                TypePrefixes = new Dictionary<string, string>();
                foreach (XmlElement elem in list)
                {
                    TypePrefixes.Add(elem.Attributes["name"].Value, elem.Attributes["value"].Value);
                }
            }

            list = section.SelectNodes("website");
            if(list.Count > 0)
                Website = SiteSettings.Deserialize(list[0].OuterXml, TypePrefixes);

            return this;
        }