public double Calculate(string operation, double number1, double number2)
{
//Find the plug-in according to operation
foreach (var plugIn in _plugInManager.PlugIns)
{
if (plugIn.PlugInProxy.OperationSign == operation)
{
//Calculate result using plug-in
return plugIn.PlugInProxy.DoOperation(number1, number2);
}
}
throw new ApplicationException("Can not found any plug-in for operation " + operation);
}