private static bool DeliverResponse(ITradeSharpServerCallback callback, TradeSharpClientResponse resp, out Exception exception) { exception = null; try { switch (resp.responseType) { case TradeSharpClientResponseType.NewOrder: callback.NewOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.NewPendingOrder: callback.NewPendingOrderResponse((PendingOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.CloseOrder: callback.NewCloseOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.EditOrder: callback.EditOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.EditPendingOrder: callback.EditPendingOrderResponse((PendingOrder)resp.ticket, resp.status, resp.detailMessage); break; //case TradeSharpClientResponseType.TradeSignalAction : // callback.ProcessTradeSignalAction((TradeSignalAction)resp.ticket); // break; default: break; } } catch (TimeoutException ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse TimeoutException", ex); exception = ex; return(false); } catch (CommunicationObjectAbortedException ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse CommunicationObjectAbortedException", ex); exception = ex; return(false); } catch (Exception ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse exception: " + ex.Message); exception = ex; return(false); } return(true); }
private static bool DeliverResponse(ITradeSharpServerCallback callback, TradeSharpClientResponse resp, out Exception exception) { exception = null; try { switch (resp.responseType) { case TradeSharpClientResponseType.NewOrder: callback.NewOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.NewPendingOrder: callback.NewPendingOrderResponse((PendingOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.CloseOrder: callback.NewCloseOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.EditOrder: callback.EditOrderResponse((MarketOrder)resp.ticket, resp.status, resp.detailMessage); break; case TradeSharpClientResponseType.EditPendingOrder: callback.EditPendingOrderResponse((PendingOrder)resp.ticket, resp.status, resp.detailMessage); break; //case TradeSharpClientResponseType.TradeSignalAction : // callback.ProcessTradeSignalAction((TradeSignalAction)resp.ticket); // break; default: break; } } catch (TimeoutException ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse TimeoutException", ex); exception = ex; return false; } catch (CommunicationObjectAbortedException ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse CommunicationObjectAbortedException", ex); exception = ex; return false; } catch (Exception ex) { Logger.Error("ServiceManagerClientManagerProxy.DeliverResponse exception: " + ex.Message); exception = ex; return false; } return true; }