5 // Ben Maurer (bmaurer@users.sourceforge.net)
11 using System.Collections;
12 using System.Collections.Specialized;
14 using System.Configuration.Provider;
16 namespace System.Web {
17 public sealed class SiteMap {
18 [MonoTODO ("Get everything from the config")]
19 private static void Init ()
21 if (provider == null) {
22 lock (typeof (SiteMap)) {
23 if (provider == null) {
24 providers = new SiteMapProviderCollection ();
25 provider = new XmlSiteMapProvider ();
26 NameValueCollection attributes = new NameValueCollection ();
27 attributes.Add ("siteMapFile", "app.sitemap");
28 ((IProvider)provider).Initialize ("AspNetXmlSiteMapProvider", attributes);
29 providers.Add ((IProvider)provider);
35 public static SiteMapNode CurrentNode {
36 get { return Provider.CurrentNode; }
38 public static SiteMapNode RootNode {
39 get { return Provider.RootNode; }
42 public static ISiteMapProvider Provider {
48 public static SiteMapProviderCollection Providers {
55 static ISiteMapProvider provider;
56 static SiteMapProviderCollection providers;