|
using System;
namespace Sample.Tests
{
public abstract class BaseCommandTemplate
{
#region Constructors
public BaseCommandTemplate(ThreadContext c)
{
context = c;
}
#endregion
#region Properties
protected TimeSpan TimeProcessing
{
get
{
return end.Subtract(start);
}
}
#endregion
#region Methods
public void Execute()
{
Start();
string response = ProcessCommand();
Stop();
ProcessResults(response);
}
protected abstract string ProcessCommand();
private void Start()
{
start = DateTime.Now;
}
private void Stop()
{
end = DateTime.Now;
}
private void ProcessResults(string response)
{
CommandResult result = new CommandResult(TimeProcessing);
context.CommandResults.Add(result);
Console.Write("command completed: ");
Console.Write(result.TimeProcessing.TotalSeconds);
Console.Write(" sec - ");
Console.WriteLine(response);
}
#endregion
#region Members
private ThreadContext context;
private DateTime start;
private DateTime end;
#endregion
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Independent contract developer for .NET data-oriented systems.
not much to say about myself but feel free to contact me for any inquiries and comments!