public void UpgradeFacade(TransactionFramework.ISoapTransactionLink transactionLink, ServerObjects.Node serviceNode) { if (InProcessNodes.ContainsKey(transactionLink)) { FacadeNode facadeNode = InProcessNodes[transactionLink]; InProcess.InProcessNode inProcessNode = facadeNode.BaseNode as InProcess.InProcessNode; if (inProcessNode != null) { SoapNode soapNode = new SoapNode(inProcessNode, serviceNode); facadeNode.BaseNode = soapNode; InProcessNodes.Remove(transactionLink); ProxyNodes[facadeNode.Id] = facadeNode; /// TODO: Need to consider a better way to do this. I don't like that there is a need to call this afterwards and maybe it should be done when creating the SoapNode. I don't like it because it doesn't have to be done everytime a new SoapNode is created e.g. if the SoapNode is created from a Service.NO as opposed to a returned call like here. soapNode.ProcessDelayedActions(); } } }