/// <summary> /// Initializes a new instance of the <see cref="CrossReferenceTreeMutableCore"/> class. /// </summary> /// <param name="crossReferencingTree"> /// The cross referencing tree. /// </param> /// <param name="serviceRetrievalManager"> /// The service retrieval manager. /// </param> public CrossReferenceTreeMutableCore( ICrossReferencingTree crossReferencingTree, IServiceRetrievalManager serviceRetrievalManager) { this._referencingObjects = new List<ICrossReferenceTreeMutable>(); if (serviceRetrievalManager != null) { this._maintainableMutableObject = serviceRetrievalManager.CreateStub(crossReferencingTree.Maintainable).MutableInstance; } else { this._maintainableMutableObject = crossReferencingTree.Maintainable.MutableInstance; } foreach (ICrossReferencingTree currentChildReference in crossReferencingTree.ReferencingStructures) { this._referencingObjects.Add(new CrossReferenceTreeMutableCore(currentChildReference)); } }
/// <summary> /// Initializes a new instance of the <see cref="CrossReferenceTreeMutableCore"/> class. /// </summary> /// <param name="crossReferencingTree"> /// The cross referencing tree. /// </param> public CrossReferenceTreeMutableCore(ICrossReferencingTree crossReferencingTree) : this(crossReferencingTree, null) { }