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
- HtmlDocument.cs
- ReturnValue.cs
- GridSplitter.cs
- UntypedNullExpression.cs
- ToolboxItemCollection.cs
- TextServicesProperty.cs
- UInt64Converter.cs
- invalidudtexception.cs
- Ipv6Element.cs
- CriticalExceptions.cs
- KerberosRequestorSecurityToken.cs
- RichTextBox.cs
- SpellerStatusTable.cs
- ControlBindingsCollection.cs
- SmiConnection.cs
- SimpleBitVector32.cs
- UrlMapping.cs
- _AutoWebProxyScriptHelper.cs
- ToolboxDataAttribute.cs
- SortDescriptionCollection.cs
- ObjectViewQueryResultData.cs
- IdnMapping.cs
- DocumentCollection.cs
- Span.cs
- Unit.cs
- ExpressionBindingCollection.cs
- EpmSyndicationContentSerializer.cs
- Resources.Designer.cs
- CallbackBehaviorAttribute.cs
- httpapplicationstate.cs
- XmlWrappingReader.cs
- ExtendedProperty.cs
- AuthenticationException.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- CapabilitiesUse.cs
- Scene3D.cs
- FunctionGenerator.cs
- SoapFault.cs
- WhereaboutsReader.cs
- DiscreteKeyFrames.cs
- TaskFormBase.cs
- BaseTreeIterator.cs
- Codec.cs
- StorageMappingItemLoader.cs
- ParserStack.cs
- CellConstant.cs
- XPathDocumentIterator.cs
- RawStylusInputReport.cs
- QilParameter.cs
- TextParaClient.cs
- SqlGatherConsumedAliases.cs
- ModuleBuilderData.cs
- UnauthorizedWebPart.cs
- DetailsViewRow.cs
- SetterBaseCollection.cs
- DynamicILGenerator.cs
- ItemList.cs
- EmissiveMaterial.cs
- MetadataException.cs
- DesignTimeVisibleAttribute.cs
- Propagator.JoinPropagator.SubstitutingCloneVisitor.cs
- ArgumentNullException.cs
- ConfigurationSection.cs
- SpellerInterop.cs
- DropSource.cs
- DebugView.cs
- oledbmetadatacolumnnames.cs
- PreloadHost.cs
- VarRefManager.cs
- SafeWaitHandle.cs
- TrackingValidationObjectDictionary.cs
- StylusButtonEventArgs.cs
- log.cs
- Publisher.cs
- XmlSchemaCompilationSettings.cs
- DataMisalignedException.cs
- Perspective.cs
- CompressionTracing.cs
- ADConnectionHelper.cs
- PageParserFilter.cs
- ConnectionOrientedTransportChannelFactory.cs
- WindowsScroll.cs
- CodeDomDesignerLoader.cs
- WebSysDefaultValueAttribute.cs
- View.cs
- MenuEventArgs.cs
- SafeFileMappingHandle.cs
- ErrorItem.cs
- _ListenerResponseStream.cs
- BlockUIContainer.cs
- OutputScope.cs
- TreeNodeStyle.cs
- PageCodeDomTreeGenerator.cs
- MergeEnumerator.cs
- TemplateContent.cs
- Int16Storage.cs
- CheckBoxList.cs
- TextClipboardData.cs
- KeyboardNavigation.cs
- MenuItemStyleCollection.cs