public void CreateTransactions(ref TransactionFramework.TransactionChain chain) { foreach (DelayedMetadataAction action in QueuedActions) { switch (action.Action) { case Proxy.TransactionActionType.Deleted: // As this is metadata that hasn't yet been created, we don't need to delete it, we just do nothing with it. return; case Proxy.TransactionActionType.Updated: { TransactionFramework.UpdateMetadataTransactionLink updateMetadataTransaction = CreateMetadataUpdateTransaction(action); if (updateMetadataTransaction != null) { chain.AddTransaction(updateMetadataTransaction); } break; } default: break; } } }
private TransactionFramework.UpdateMetadataTransactionLink CreateMetadataUpdateTransaction(DelayedMetadataAction action) { TransactionFramework.UpdateMetadataTransactionLink updateMetadataTransaction = null; if (MetadataContext.Facade != null && MetadataContext.Facade.IsConcrete) { updateMetadataTransaction = new TransactionFramework.UpdateMetadataTransactionLink(); updateMetadataTransaction.DomainId = action.DomainId; updateMetadataTransaction.MapManager = MetadataContext.MapManager; updateMetadataTransaction.Metadata = MetadataContext.Facade; updateMetadataTransaction.Name = action.Name; updateMetadataTransaction.Value = action.Value; } return(updateMetadataTransaction); }
private TransactionFramework.UpdateMetadataTransactionLink CreateMetadataUpdateTransaction(DelayedMetadataAction action) { TransactionFramework.UpdateMetadataTransactionLink updateMetadataTransaction = null; if (MetadataContext.Facade != null && MetadataContext.Facade.IsConcrete) { updateMetadataTransaction = new TransactionFramework.UpdateMetadataTransactionLink(); updateMetadataTransaction.DomainId = action.DomainId; updateMetadataTransaction.MapManager = MetadataContext.MapManager; updateMetadataTransaction.Metadata = MetadataContext.Facade; updateMetadataTransaction.Name = action.Name; updateMetadataTransaction.Value = action.Value; } return updateMetadataTransaction; }
public override void Update(string name, string value, Proxy.INode node, Proxy.IRelationship relationship, Proxy.ConnectionType connectionType, ref TransactionFramework.TransactionChain chain) { base.Update(name, value, node, relationship, connectionType, ref chain); TransactionFramework.UpdateMetadataTransactionLink updateMetadataTransaction = new TransactionFramework.UpdateMetadataTransactionLink(); if (Node != null) { updateMetadataTransaction.DomainId = Node.DomainId; } else if (Relationship != null) { updateMetadataTransaction.DomainId = Relationship.DomainId; } updateMetadataTransaction.MapManager = MapManager; updateMetadataTransaction.Metadata = this; updateMetadataTransaction.Name = name; updateMetadataTransaction.Value = value; chain.AddTransaction(updateMetadataTransaction); }