namespace Xsd2Code.Library.Helpers
{
///
/// Result class represents result of execution
/// flag represents result of the operation
/// property contains a list of messages generated during execution
///
///
/// Revision history:
///
/// Created 2009-02-20 by Ruslan Urban
///
///
public class Result
{
#region Result Default constructor
///
/// Result class constructor
///
public Result() : this(false)
{}
///
/// Result class constructor
///
/// parameter value
public Result(bool success)
{
this.Success = success;
}
///
/// Result class constructor
///
/// parameter value
/// parameter value
/// parameter value
public Result(bool success, MessageType MessageType, string message) : this(success)
{
var messageItem = new Message(MessageType, message);
this.Messages.Add(messageItem);
}
///
/// Result class constructor
///
/// parameter value
/// parameter value
public Result(bool success, MessageCollection messages) : this(success)
{
this.messages = messages;
}
#endregion
#region Property : Success
///
/// Success
///
public bool Success { get; set; }
#endregion
#region Property : Messages
///
/// Member field messages
///
private MessageCollection messages;
///
/// Messages
///
public MessageCollection Messages
{
get
{
if (this.messages == null)
this.messages = new MessageCollection();
return this.messages;
}
}
#endregion
}
///
/// Generic class represents result of execution
/// that returns an object of type
/// in the property
///
///
/// Revision history:
///
/// Modified 2009-02-20 by Ruslan Urban
///
///
///
public class Result : Result
{
///
/// Default constructor
///
public Result()
{}
///
/// Result class constructor
///
/// parameter value
/// parameter value
public Result(TEntity entity, bool success)
: this(entity, success, null)
{}
///
/// Result class constructor
///
/// parameter value
/// parameter value
/// parameter value
public Result(TEntity entity, bool success, MessageCollection messages)
: base(success, messages)
{
this.Entity = entity;
}
///
/// Result class constructor
///
/// parameter value
/// parameter value
/// parameter value
/// parameter value
public Result(TEntity entity, bool success, string message, MessageType MessageType)
: this(entity, success)
{
var messageItem = new Message(MessageType, message);
this.Messages.Add(messageItem);
}
///
/// Resulting Entity
///
public TEntity Entity { get; set; }
}
}