127
|
1 using System;
|
|
2 using System.Collections.Generic;
|
|
3 using System.Configuration;
|
|
4 using System.Linq;
|
|
5 using System.Web;
|
|
6 using System.Reflection;
|
|
7
|
|
8 namespace AltNetHispano.Agendas.Web
|
|
9 {
|
|
10 public class PublicadorConfigurationElement : ConfigurationElement
|
|
11 {
|
|
12 [ConfigurationProperty("name", IsRequired = true)]
|
|
13 public string Name
|
|
14 {
|
|
15 get { return (string)this["name"]; }
|
|
16 }
|
|
17
|
|
18 [ConfigurationProperty("type", IsRequired = true)]
|
|
19 public string Type
|
|
20 {
|
|
21 get
|
|
22 {
|
|
23 return (string)this["type"];
|
|
24 }
|
|
25 }
|
|
26
|
|
27 public Type GetPublicadorType()
|
|
28 {
|
|
29 return System.Type.GetType((string) this["type"]);
|
|
30 }
|
|
31
|
|
32 [ConfigurationProperty("enabled", IsRequired = true)]
|
|
33 public bool Enabled
|
|
34 {
|
|
35 get { return (bool)this["enabled"]; }
|
|
36 }
|
|
37 }
|
|
38
|
|
39 [ConfigurationCollection(typeof(PublicadorConfigurationElement))]
|
|
40 public class PublicadorConfigurationCollection : ConfigurationElementCollection
|
|
41 {
|
|
42 protected override ConfigurationElement CreateNewElement()
|
|
43 {
|
|
44 return new PublicadorConfigurationElement();
|
|
45 }
|
|
46
|
|
47 protected override object GetElementKey(ConfigurationElement element)
|
|
48 {
|
|
49 var value = element as PublicadorConfigurationElement;
|
|
50 return value != null ? value.Name : null;
|
|
51 }
|
|
52
|
|
53 public PublicadorConfigurationElement this[int index]
|
|
54 {
|
|
55 get
|
|
56 {
|
|
57 return BaseGet(index) as PublicadorConfigurationElement;
|
|
58 }
|
|
59 set
|
|
60 {
|
|
61 if (BaseGet(index) != null)
|
|
62 BaseRemoveAt(index);
|
|
63 BaseAdd(index, value);
|
|
64 }
|
|
65 }
|
|
66
|
|
67 public new PublicadorConfigurationElement this[string name]
|
|
68 {
|
|
69 get
|
|
70 {
|
|
71 return BaseGet(name) as PublicadorConfigurationElement;
|
|
72 }
|
|
73 }
|
|
74 }
|
|
75
|
|
76 public class PublicadorConfigurationSection : ConfigurationSection
|
|
77 {
|
|
78 [ConfigurationProperty("publicadores", IsRequired = true)]
|
|
79 public PublicadorConfigurationCollection Publicadores
|
|
80 {
|
|
81 get
|
|
82 {
|
|
83 return this["publicadores"]
|
|
84 as PublicadorConfigurationCollection;
|
|
85 }
|
|
86 }
|
|
87 }
|
|
88 } |