* ToolTask.cs (ProcessOuputTool): Move logging of tool
[mono.git] / mcs / class / System.Web / System.Web.Configuration_2.0 / PassportAuthentication.cs
index e4c8738bada9636d476d6a49bb2f4002f7da42ee..5345d55ad6727d925f155ee86b96ff0589f7c897 100644 (file)
@@ -3,8 +3,9 @@
 //
 // Authors:
 //     Lluis Sanchez Gual (lluis@novell.com)
+//     Chris Toshok (toshok@ximian.com)
 //
-// (C) 2004 Novell, Inc (http://www.novell.com)
+// (C) 2004,2005 Novell, Inc (http://www.novell.com)
 //
 
 //
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-#if NET_2_0
-
 using System;
 using System.Configuration;
 
-namespace System.Web.Configuration
-{
-       public sealed class PassportAuthentication: ConfigurationElement
+#if NET_2_0
+
+namespace System.Web.Configuration {
+
+       public sealed class PassportAuthentication : ConfigurationElement
        {
+               static ConfigurationProperty redirectUrlProp;
+               static ConfigurationPropertyCollection properties;
+
+               static ConfigurationElementProperty elementProperty;
+
+               static PassportAuthentication ()
+               {
+                       redirectUrlProp = new ConfigurationProperty ("redirectUrl", typeof (string), "internal");
+                       properties = new ConfigurationPropertyCollection ();
+
+                       properties.Add (redirectUrlProp);
+
+                       elementProperty = new ConfigurationElementProperty (new CallbackValidator (typeof (PassportAuthentication), ValidateElement));
+               }
+
+               static void ValidateElement (object o)
+               {
+                       /* XXX do some sort of element validation here? */
+               }
+
+               protected override ConfigurationElementProperty ElementProperty {
+                       get { return elementProperty; }
+               }
+
+               [StringValidator] /* why is this here? */
+               [ConfigurationProperty ("redirectUrl", DefaultValue = "internal")]
+               public string RedirectUrl {
+                       get { return (string) base [redirectUrlProp];}
+                       set { base[redirectUrlProp] = value; }
+               }
+
+               protected override ConfigurationPropertyCollection Properties {
+                       get { return properties; }
+               }
        }
 }