/// <summary> /// Creating message /// </summary> /// <param name="number">Number of the message</param> /// <param name="description">Description of the message</param> /// <param name="openObject">Affected object</param> /// <param name="propertyName">Affected property</param> /// <param name="innerMessage">Inner message</param> /// <returns>The created message or null if the number is not supported</returns> public static OpenMessage Create(MessageNumber number, OpenObject openObject, string propertyName, string description, OpenMessage innerMessage = null) { OpenMessage msg = null; if ((number & MessageNumber.Information) != 0) { msg = new InformationMessage(number, openObject, propertyName, description, innerMessage); } else if ((number & MessageNumber.Warning) != 0) { msg = new WarningMessage(number, openObject, propertyName, description, innerMessage); } else if ((number & MessageNumber.Error) != 0) { msg = new ErrorMessage(number, openObject, propertyName, description, innerMessage); } else if ((number & MessageNumber.Reserved) != 0) { Debug.Assert(false, "Not supported message", "Number {0}", number); } else { Debug.Assert(false, "Not supported message", "Number {0}", number); } return(msg); }
/// <summary> /// Constructor /// </summary> /// <param name="number">Number of the message</param> /// <param name="description">Description of the message</param> /// <param name="openObject">Affected object</param> /// <param name="propertyName">Affected property</param> /// <param name="innerMessage">Inner message</param> internal OpenMessage(MessageNumber number, OpenObject openObject, string propertyName, string description, OpenMessage innerMessage = null) { Number = number; InnerMessage = innerMessage; Description = description; Object = openObject; PropertyName = propertyName; }
/// <summary> /// Constructor /// </summary> /// <param name="number">Number of the message</param> /// <param name="description">Description of the message</param> /// <param name="openObject">Affected object</param> /// <param name="propertyName">Affected property</param> /// <param name="innerMessage">Inner message</param> internal InformationMessage(MessageNumber number, OpenObject openObject, string propertyName, string description, OpenMessage innerMessage = null) : base(number, openObject, propertyName, description, innerMessage) { Debug.Assert((number & MessageNumber.Information) != 0, "No information Message number in Information message"); }
/// <summary> /// Constructor /// </summary> /// <param name="number">Number of the message</param> /// <param name="description">Description of the message</param> /// <param name="openObject">Affected object</param> /// <param name="propertyName">Affected property</param> /// <param name="innerMessage">Inner message</param> internal ErrorMessage(MessageNumber number, OpenObject openObject, string propertyName, string description, OpenMessage innerMessage = null) : base(number, openObject, propertyName, description, innerMessage) { Debug.Assert((number & MessageNumber.Error) != 0, "No error Message number in Error message"); }
/// <summary> /// Constructor /// </summary> /// <param name="number">Number of the message</param> /// <param name="description">Description of the message</param> /// <param name="openObject">Affected object</param> /// <param name="propertyName">Affected property</param> /// <param name="innerMessage">Inner message</param> public WarningMessage(MessageNumber number, OpenObject openObject, string propertyName, string description, OpenMessage innerMessage = null) : base(number, openObject, propertyName, description, innerMessage) { Debug.Assert((number & MessageNumber.Warning) != 0, "No warning Message number in Warning message"); }