private EfiTransaction(EFArtifact artifact, string originatorId, bool createdXmlTxn, EfiTransactionContext context)
 {
     _artifact              = artifact;
     _changes               = new EfiChangeGroup(this);
     _createdXmlTxn         = createdXmlTxn;
     _originatorId          = originatorId;
     _efiTransactionContext = context != null ? context : new EfiTransactionContext();
 }
 internal EfiTransaction(EFArtifact artifact, string originatorId, XmlTransaction xmltxn, EfiTransactionContext context)
     : this(artifact, originatorId, false, context)
 {
     Debug.Assert(xmltxn != null, "Can't pass null in as XmlTransaction");
     _xmlTx = xmltxn;
 }
 internal EfiTransaction(EFArtifact artifact, string originatorId, string txName, EfiTransactionContext context)
     : this(artifact, originatorId, true, context)
 {
     _xmlTx = artifact.XmlModelProvider.BeginTransaction(txName, this);
 }