Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Metadata / MetadataArtifactLoaderComposite.cs / 1305376 / MetadataArtifactLoaderComposite.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Collections.Generic; using System.Collections; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Text; using System.Xml; using System.Data.Mapping; using System.IO; using System.Security; using System.Security.Permissions; using System.Collections.ObjectModel; namespace System.Data.Metadata.Edm { ////// This class represents a super-collection (a collection of collections) /// of artifact resources. Typically, this "meta-collection" would contain /// artifacts represented as individual files, directories (which are in /// turn collections of files), and embedded resources. /// ///This is the root class for access to all loader objects. internal class MetadataArtifactLoaderComposite : MetadataArtifactLoader, IEnumerable{ /// /// The list of loaders aggregated by the composite. /// private readonly ReadOnlyCollection_children; /// /// Constructor - loads all resources into the _children collection /// /// A list of collections to aggregate public MetadataArtifactLoaderComposite(Listchildren) { Debug.Assert(children != null); _children = new List (children).AsReadOnly(); } public override string Path { get { return string.Empty; } } public override void CollectFilePermissionPaths(List paths, DataSpace spaceToGet) { foreach (MetadataArtifactLoader loader in _children) { loader.CollectFilePermissionPaths(paths, spaceToGet); } } public override bool IsComposite { get { return true; } } /// /// Get the list of paths to all artifacts in the original, unexpanded form /// ///A List of strings identifying paths to all resources public override ListGetOriginalPaths() { List list = new List (); foreach (MetadataArtifactLoader loader in _children) { list.AddRange(loader.GetOriginalPaths()); } return list; } /// /// Get paths to artifacts for a specific DataSpace, in the original, unexpanded /// form /// /// The DataSpace for the artifacts of interest ///A List of strings identifying paths to all artifacts for a specific DataSpace public override ListGetOriginalPaths(DataSpace spaceToGet) { List list = new List (); foreach (MetadataArtifactLoader loader in _children) { list.AddRange(loader.GetOriginalPaths(spaceToGet)); } return list; } /// /// Get paths to artifacts for a specific DataSpace. /// /// The DataSpace for the artifacts of interest ///A List of strings identifying paths to all artifacts for a specific DataSpace public override ListGetPaths(DataSpace spaceToGet) { List list = new List (); foreach (MetadataArtifactLoader loader in _children) { list.AddRange(loader.GetPaths(spaceToGet)); } return list; } /// /// Get paths to all artifacts /// ///A List of strings identifying paths to all resources public override ListGetPaths() { List list = new List (); foreach (MetadataArtifactLoader resource in _children) { list.AddRange(resource.GetPaths()); } return list; } /// /// Aggregates all resource streams from the _children collection /// ///A List of XmlReader objects; cannot be null public override ListGetReaders(Dictionary sourceDictionary) { List list = new List (); foreach (MetadataArtifactLoader resource in _children) { list.AddRange(resource.GetReaders(sourceDictionary)); } return list; } /// /// Get XmlReaders for a specific DataSpace. /// /// The DataSpace corresponding to the requested artifacts ///A List of XmlReader objects public override ListCreateReaders(DataSpace spaceToGet) { List list = new List (); foreach (MetadataArtifactLoader resource in _children) { list.AddRange(resource.CreateReaders(spaceToGet)); } return list; } #region IEnumerable Members public IEnumerator GetEnumerator() { return this._children.GetEnumerator(); } #endregion #region IEnumerable Members IEnumerator IEnumerable.GetEnumerator() { return this._children.GetEnumerator(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Scanner.cs
- DesignerContextDescriptor.cs
- connectionpool.cs
- FixedSOMGroup.cs
- ApplicationHost.cs
- COM2PropertyBuilderUITypeEditor.cs
- DataRelationPropertyDescriptor.cs
- UniqueEventHelper.cs
- SpinWait.cs
- CapabilitiesPattern.cs
- NetMsmqBindingCollectionElement.cs
- DBNull.cs
- KnownBoxes.cs
- OperationResponse.cs
- HostingPreferredMapPath.cs
- GridViewHeaderRowPresenter.cs
- SpecularMaterial.cs
- FileBasedResourceGroveler.cs
- CommandID.cs
- InstanceDataCollection.cs
- RectangleF.cs
- StorageComplexTypeMapping.cs
- PeerHelpers.cs
- OutputCacheModule.cs
- __Error.cs
- SaveFileDialogDesigner.cs
- GuidConverter.cs
- DataMemberFieldConverter.cs
- DependencyPropertyHelper.cs
- ObjectMemberMapping.cs
- OptimizedTemplateContent.cs
- SqlDataSourceStatusEventArgs.cs
- InstanceDataCollectionCollection.cs
- DeclarativeCatalogPart.cs
- MustUnderstandBehavior.cs
- processwaithandle.cs
- SafeArrayRankMismatchException.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- AttributeCallbackBuilder.cs
- PixelFormatConverter.cs
- ResXBuildProvider.cs
- StateDesigner.LayoutSelectionGlyph.cs
- Lease.cs
- TextFindEngine.cs
- ResourcePermissionBaseEntry.cs
- Certificate.cs
- SymbolUsageManager.cs
- ButtonField.cs
- XmlBinaryWriter.cs
- Exception.cs
- FixedTextContainer.cs
- AllMembershipCondition.cs
- ListViewUpdatedEventArgs.cs
- InstancePersistenceCommandException.cs
- DiagnosticsConfiguration.cs
- TypeListConverter.cs
- bidPrivateBase.cs
- OpenFileDialog.cs
- TextEndOfSegment.cs
- OperationContext.cs
- DropDownHolder.cs
- CounterCreationDataCollection.cs
- XmlDeclaration.cs
- Form.cs
- LineMetrics.cs
- ProjectionCamera.cs
- SafeNativeMethods.cs
- CustomErrorsSection.cs
- SpellerError.cs
- NativeWindow.cs
- QilPatternVisitor.cs
- MdImport.cs
- ChannelManager.cs
- XmlDataContract.cs
- AnimationTimeline.cs
- StylusEventArgs.cs
- PropertyPushdownHelper.cs
- ObjectDataSource.cs
- ListItemCollection.cs
- AnnotationComponentChooser.cs
- DynamicValidatorEventArgs.cs
- odbcmetadatacollectionnames.cs
- BinaryWriter.cs
- QilInvokeLateBound.cs
- DropSourceBehavior.cs
- TabControlDesigner.cs
- AtomServiceDocumentSerializer.cs
- DataGridPageChangedEventArgs.cs
- GridView.cs
- HostAdapter.cs
- XmlSchemaComplexType.cs
- RegexMatchCollection.cs
- BindingExpressionUncommonField.cs
- DeclaredTypeValidator.cs
- ObjectCloneHelper.cs
- FolderLevelBuildProvider.cs
- WeakHashtable.cs
- DeviceContext.cs
- Table.cs
- JsonFormatReaderGenerator.cs