1.1 --- a/SharpLibEar/Manager.cs Tue Aug 16 12:25:20 2016 +0200
1.2 +++ b/SharpLibEar/Manager.cs Tue Aug 16 12:59:32 2016 +0200
1.3 @@ -7,22 +7,18 @@
1.4 using System.Runtime.Serialization;
1.5 using SharpLib.Utils;
1.6
1.7 +
1.8 namespace SharpLib.Ear
1.9 {
1.10 /// <summary>
1.11 /// Event Action Router (Ear) is a generic and extensible framework allowing users to execute actions in response to events.
1.12 /// Users can implement their own events and actions.
1.13 /// </summary>
1.14 - [TypeConverter(typeof(TypeConverterJson<Manager>))]
1.15 [DataContract]
1.16 + [KnownType("DerivedTypes")]
1.17 public class Manager
1.18 {
1.19 /// <summary>
1.20 - /// Access the currently installed EAR manager.
1.21 - /// </summary>
1.22 - public static Manager Current = null;
1.23 -
1.24 - /// <summary>
1.25 /// Our events instances.
1.26 /// </summary>
1.27 [DataMember]
1.28 @@ -77,5 +73,15 @@
1.29 }
1.30 }
1.31 }
1.32 +
1.33 + /// <summary>
1.34 + /// Allow extending our data contract.
1.35 + /// See KnownType above.
1.36 + /// </summary>
1.37 + /// <returns></returns>
1.38 + private static IEnumerable<Type> DerivedTypes()
1.39 + {
1.40 + return SharpLib.Utils.Reflection.GetDerivedTypes<Manager>();
1.41 + }
1.42 }
1.43 }
1.44 \ No newline at end of file