public Folder[] GetSubFolders() { if (!subfoldersLoaded) { TrackPreExistingChildren(Constants.NID_TYPE_HIERARCHY_TABLE, ObjectTypes.Folder); subfoldersLoaded = true; } return (objectTracker .GetChildObjects( objectPath: objectPath, childType: ObjectTypes.Folder, childStatePredicate: s => s == ObjectStates.New || s == ObjectStates.Loaded) .Select( childNodePath => new Folder( childNodePath, objectTracker, recipientTracker, stringEncoder, propertyNameToIdMap, propertyContextBasedPropertyReader, nodeEntryFinder, rowIndexReader, tableContextBasedPropertyReader, nodeIdAllocator)) .ToArray()); }
public Attachment[] GetAttachments() { if (!preExistingAttachmentsLoaded) { LoadPreExistingAttachments(); preExistingAttachmentsLoaded = true; } return (objectTracker .GetChildObjects( objectPath: objectPath, childType: ObjectTypes.Attachment, childStatePredicate: s => s == ObjectStates.New || s == ObjectStates.Loaded) .Select( path => new Attachment( path, objectTracker, recipientTracker, propertyNameToIdMap, propertyContextBasedPropertyReader, nodeEntryFinder, rowIndexReader, tableContextBasedPropertyReader)) .ToArray()); }