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
- DataObjectSettingDataEventArgs.cs
- DataGridViewAutoSizeModeEventArgs.cs
- Assert.cs
- InputScopeAttribute.cs
- OutputCacheProfileCollection.cs
- SymDocumentType.cs
- MetadataSource.cs
- DataGridViewColumnHeaderCell.cs
- SubstitutionList.cs
- SigningCredentials.cs
- ComponentRenameEvent.cs
- SafeArrayTypeMismatchException.cs
- FormConverter.cs
- ServiceEndpointElementCollection.cs
- CreateUserErrorEventArgs.cs
- DbProviderFactory.cs
- CuspData.cs
- Rotation3DAnimationUsingKeyFrames.cs
- Deflater.cs
- DataError.cs
- TdsParserSafeHandles.cs
- XmlCharCheckingWriter.cs
- HandlerFactoryCache.cs
- PersonalizationProviderHelper.cs
- Update.cs
- UserNamePasswordValidator.cs
- UserControlDocumentDesigner.cs
- ThreadExceptionDialog.cs
- iisPickupDirectory.cs
- MethodBody.cs
- SourceFileBuildProvider.cs
- TransformValueSerializer.cs
- Decoder.cs
- TemplateBindingExtensionConverter.cs
- xmlformatgeneratorstatics.cs
- WrappedReader.cs
- ConnectionStringsExpressionBuilder.cs
- LoadItemsEventArgs.cs
- MsmqInputSessionChannel.cs
- COMException.cs
- ExecutionEngineException.cs
- printdlgexmarshaler.cs
- ProcessHostFactoryHelper.cs
- ArgIterator.cs
- MetafileHeaderWmf.cs
- ColorConvertedBitmapExtension.cs
- DynamicMethod.cs
- SqlMethodAttribute.cs
- _Events.cs
- UnicastIPAddressInformationCollection.cs
- ApplicationGesture.cs
- TemplateBindingExtension.cs
- NameSpaceEvent.cs
- MemberAssignment.cs
- DisplayMemberTemplateSelector.cs
- StyleSelector.cs
- _LazyAsyncResult.cs
- ConfigPathUtility.cs
- TreeNodeStyleCollectionEditor.cs
- XPathArrayIterator.cs
- ConfigXmlText.cs
- StrokeFIndices.cs
- MetadataException.cs
- Closure.cs
- DataDocumentXPathNavigator.cs
- UniqueSet.cs
- UserMapPath.cs
- XmlAttributeCache.cs
- WinFormsUtils.cs
- WebReferencesBuildProvider.cs
- DataReceivedEventArgs.cs
- StaticContext.cs
- WebPartConnectionsEventArgs.cs
- __TransparentProxy.cs
- CommandBinding.cs
- StateItem.cs
- CompilerWrapper.cs
- OfTypeExpression.cs
- FixUp.cs
- CodeTypeDelegate.cs
- AssemblyEvidenceFactory.cs
- BackStopAuthenticationModule.cs
- FontFamilyConverter.cs
- UserControlDocumentDesigner.cs
- SqlInternalConnectionSmi.cs
- SqlTypeSystemProvider.cs
- WizardStepBase.cs
- ContentElementAutomationPeer.cs
- wgx_render.cs
- ExceptionValidationRule.cs
- CompleteWizardStep.cs
- DynamicUpdateCommand.cs
- WebPartEditVerb.cs
- GPPOINTF.cs
- CellPartitioner.cs
- ClientFormsIdentity.cs
- PathGeometry.cs
- NativeMethods.cs
- ImageSource.cs
- ResourceSetExpression.cs