public IEnumerable <object> GetChildObjects(ISaveContext context) { List <object> collectedObjects = new List <object>(); ContainerSaveData.GetChildObjects(context, this._typeDefinition, this._containerType, this.Target, collectedObjects); return((IEnumerable <object>)collectedObjects); }
private void CollectContainerObjects(ContainerType containerType, object parent) { if (this._idsOfChildContainers.ContainsKey(parent)) { return; } int count = this._childContainers.Count; this._childContainers.Add(parent); this._idsOfChildContainers.Add(parent, count); ContainerSaveData.GetChildObjects((ISaveContext)this, this.DefinitionContext.GetContainerDefinition(parent.GetType()), containerType, parent, this._temporaryCollectedObjects); for (int index = 0; index < this._temporaryCollectedObjects.Count; ++index) { object temporaryCollectedObject = this._temporaryCollectedObjects[index]; if (temporaryCollectedObject != null) { this._objectsToIterate.Enqueue(temporaryCollectedObject); } } this._temporaryCollectedObjects.Clear(); }