DependencyCollection ISoapTransactionLinkExecutor.UpdateDependencies() { ISoapTransactionLinkExecutor executor = (ISoapTransactionLinkExecutor)this; foreach (KeyValuePair <Proxy.ConnectionType, Proxy.INode> nodePairs in ProxyNodeConnections) { Proxy.IFacade iFacadeNode = nodePairs.Value as Proxy.IFacade; if (iFacadeNode != null) { if (!iFacadeNode.IsConcrete) { FacadeNode facadeNode = iFacadeNode as FacadeNode; InProcess.InProcessNode inProcessNode = facadeNode.BaseNode as InProcess.InProcessNode; if (inProcessNode != null && inProcessNode.OriginLink != null && inProcessNode.OriginLink.OriginChain != OriginChain) { executor.Dependencies.AddFacade(iFacadeNode); } } } } return(executor.Dependencies); }
public void AddFacade(Proxy.IFacade facade) { if (!facade.IsConcrete && !RegisteredFacades.ContainsKey(facade)) { RegisteredFacades[facade] = false; if (_dependencyCount == null) { _dependencyCount = 1; } else { _dependencyCount++; } facade.BaseCured += OnFacadeCured; } }
private void OnFacadeCured(object sender, EventArgs e) { Proxy.IFacade facade = sender as Proxy.IFacade; if (facade != null) { if (RegisteredFacades.ContainsKey(facade)) { RegisteredFacades[facade] = true; _dependencyCount--; if (_dependencyCount == 0) { if (FacadesCompleted != null) { FacadesCompleted(this, new EventArgs()); } } } } }
DependencyCollection ISoapTransactionLinkExecutor.UpdateDependencies() { ISoapTransactionLinkExecutor executor = (ISoapTransactionLinkExecutor)this; Proxy.IFacade iFacadeNode = Node as Proxy.IFacade; if (iFacadeNode != null) { if (!iFacadeNode.IsConcrete) { FacadeNode facadeNode = iFacadeNode as FacadeNode; InProcess.InProcessNode inProcessNode = facadeNode.BaseNode as InProcess.InProcessNode; if (inProcessNode != null && inProcessNode.OriginLink != null && inProcessNode.OriginLink.OriginChain != OriginChain) { executor.Dependencies.AddFacade(iFacadeNode); } } } return(executor.Dependencies); }
DependencyCollection ISoapTransactionLinkExecutor.UpdateDependencies() { ISoapTransactionLinkExecutor executor = (ISoapTransactionLinkExecutor)this; Proxy.IFacade iFacadeMetadata = Metadata as Proxy.IFacade; if (iFacadeMetadata != null) { if (!iFacadeMetadata.IsConcrete) { Proxy.FacadeMetadataSet facadeMetadata = iFacadeMetadata as Proxy.FacadeMetadataSet; InProcess.InProcessMetadata inProcessMetadata = facadeMetadata.BaseMetadata as InProcess.InProcessMetadata; if (inProcessMetadata != null && inProcessMetadata.OriginLink != null && inProcessMetadata.OriginLink.OriginChain != OriginChain) { executor.Dependencies.AddFacade(iFacadeMetadata); } } } return(executor.Dependencies); }
DependencyCollection ISoapTransactionLinkExecutor.UpdateDependencies() { ISoapTransactionLinkExecutor executor = (ISoapTransactionLinkExecutor)this; Proxy.IFacade iFacadeRelationship = Relationship as Proxy.IFacade; if (iFacadeRelationship != null) { if (!iFacadeRelationship.IsConcrete) { FacadeRelationship facadeRelationship = iFacadeRelationship as FacadeRelationship; InProcess.InProcessRelationship inProcessRelationship = facadeRelationship.BaseRelationship as InProcess.InProcessRelationship; if (inProcessRelationship != null && inProcessRelationship.OriginLink != null && inProcessRelationship.OriginLink.OriginChain != OriginChain) { executor.Dependencies.AddFacade(iFacadeRelationship); } } } return(executor.Dependencies); }