diff -r 0c75dec19d39 -r ba14a29944c4 SharpLibEar/Manager.cs --- a/SharpLibEar/Manager.cs Tue Aug 16 12:25:20 2016 +0200 +++ b/SharpLibEar/Manager.cs Tue Aug 16 12:59:32 2016 +0200 @@ -7,22 +7,18 @@ using System.Runtime.Serialization; using SharpLib.Utils; + namespace SharpLib.Ear { /// /// Event Action Router (Ear) is a generic and extensible framework allowing users to execute actions in response to events. /// Users can implement their own events and actions. /// - [TypeConverter(typeof(TypeConverterJson))] [DataContract] + [KnownType("DerivedTypes")] public class Manager { /// - /// Access the currently installed EAR manager. - /// - public static Manager Current = null; - - /// /// Our events instances. /// [DataMember] @@ -77,5 +73,15 @@ } } } + + /// + /// Allow extending our data contract. + /// See KnownType above. + /// + /// + private static IEnumerable DerivedTypes() + { + return SharpLib.Utils.Reflection.GetDerivedTypes(); + } } } \ No newline at end of file