// Mono.Util.CorCompare.MissingEvent // // Author(s): // Nick Drochak (ndrochak@gol.com) // // (C) 2001-2002 Nick Drochak using System; using System.Reflection; using System.Xml; namespace Mono.Util.CorCompare { /// /// Represents a class event that is completely missing /// /// /// created by - Nick /// created on - 2/24/2002 10:43:57 PM /// class MissingEvent : MissingProperty { // e.g. public MissingEvent (MemberInfo infoMono, MemberInfo infoMS) : base (infoMono, infoMS) {} MissingMethod mmRaise; public override string Type { get { return "event"; } } /// /// a place holder for the method used to set the value of this property /// public virtual MissingMethod RaiseMethod { get { return mmRaise; } set { if (mmRaise != null) m_nodeStatus.SubChildren (mmRaise.Status); mmRaise = value; if (mmRaise != null) m_nodeStatus.AddChildren (mmRaise.Status); } } public override XmlElement CreateXML (XmlDocument doc) { XmlElement eltMember = base.CreateXML (doc); if (mInfoMono != null && mmRaise != null) { XmlElement eltAccessors = (XmlElement) eltMember.SelectSingleNode ("accessors"); if (eltAccessors == null) { eltAccessors = doc.CreateElement ("accessors"); eltMember.AppendChild (eltAccessors); } if (mmRaise != null) { XmlElement eltRaise = mmRaise.CreateXML (doc); eltAccessors.AppendChild (eltRaise); } } return eltMember; } } }