public Proxy.IRelationship CreateRelationship(TransactionFramework.ISoapTransactionLink transactionLink, Guid domainId, Guid rootMapId, Dictionary <Proxy.ConnectionType, Proxy.INode> nodes, Proxy.RelationshipType relationshipType, string originalId) { FacadeRelationship facadeRelationship = new FacadeRelationship(); InProcess.InProcessRelationship relationship = new InProcess.InProcessRelationship(MapManager); relationship.OriginLink = transactionLink; relationship.Facade = facadeRelationship; relationship.Id = Guid.NewGuid(); relationship.DomainId = domainId; relationship.RootMapId = rootMapId; relationship.RelationshipType = relationshipType; relationship.OriginalId = originalId; relationship.Status = Proxy.LoadState.Full; facadeRelationship.BaseRelationship = relationship; foreach (KeyValuePair <Proxy.ConnectionType, Proxy.INode> relationshipContext in nodes) { Proxy.ConnectionSet connection = Proxy.ConnectionSetFactory.Instance.GetConnection(relationshipContext.Value, facadeRelationship, relationshipContext.Key); Proxy.INodeManager newRelationshipNodes = relationship.Nodes; newRelationshipNodes.Load(connection); Proxy.IRelationshipManager nodeRelationships = relationshipContext.Value.Relationships; nodeRelationships.Load(connection); } InProcessRelationships.Add(transactionLink, facadeRelationship); return(facadeRelationship); }
public void Update(Proxy.RelationshipType relationshipType, ref TransactionFramework.TransactionChain chain) { BaseRelationship.Update(relationshipType, ref chain); }