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
- IResourceProvider.cs
- TextComposition.cs
- RuntimeResourceSet.cs
- AssemblyCollection.cs
- ConnectionProviderAttribute.cs
- SafeFindHandle.cs
- HMACSHA384.cs
- CharacterHit.cs
- LayoutTableCell.cs
- ClientSettings.cs
- WizardPanel.cs
- DBPropSet.cs
- PolicyConversionContext.cs
- ChangeConflicts.cs
- Deflater.cs
- TypeConstant.cs
- ImageInfo.cs
- Dictionary.cs
- SatelliteContractVersionAttribute.cs
- XmlSchemaImport.cs
- ButtonColumn.cs
- LinearKeyFrames.cs
- XmlUnspecifiedAttribute.cs
- ProgressBarHighlightConverter.cs
- DesignColumnCollection.cs
- ItemMap.cs
- ClientScriptManagerWrapper.cs
- ResolveMatchesMessage11.cs
- DocumentCollection.cs
- GZipUtils.cs
- XmlMtomWriter.cs
- ProjectionPathSegment.cs
- MaskDescriptors.cs
- DesignerContextDescriptor.cs
- HebrewNumber.cs
- FormsAuthenticationCredentials.cs
- EmissiveMaterial.cs
- FrameworkElement.cs
- LayoutDump.cs
- DataReaderContainer.cs
- XmlSchemaException.cs
- EditorAttribute.cs
- OdbcEnvironment.cs
- UnsupportedPolicyOptionsException.cs
- FileCodeGroup.cs
- SerializationStore.cs
- CharacterShapingProperties.cs
- DbgUtil.cs
- InstanceKeyCollisionException.cs
- TrustManager.cs
- HostingPreferredMapPath.cs
- UriTemplateClientFormatter.cs
- Application.cs
- HttpClientCertificate.cs
- PageBuildProvider.cs
- XmlNotation.cs
- BamlRecordReader.cs
- TreeViewEvent.cs
- ResourceExpressionEditor.cs
- DescendentsWalker.cs
- Tile.cs
- UserNamePasswordServiceCredential.cs
- BaseConfigurationRecord.cs
- InternalControlCollection.cs
- DesignTimeHTMLTextWriter.cs
- DesignerDataSourceView.cs
- EventSourceCreationData.cs
- PreviousTrackingServiceAttribute.cs
- EntitySqlQueryState.cs
- XsltException.cs
- XamlHttpHandlerFactory.cs
- COM2EnumConverter.cs
- TargetConverter.cs
- PrintDialog.cs
- JsonClassDataContract.cs
- MoveSizeWinEventHandler.cs
- DataGridViewMethods.cs
- DataGridViewCellEventArgs.cs
- UserMapPath.cs
- EditCommandColumn.cs
- HTTP_SERVICE_CONFIG_URLACL_KEY.cs
- UpdatableGenericsFeature.cs
- FileUpload.cs
- CaretElement.cs
- ToolBarOverflowPanel.cs
- DoubleLinkList.cs
- XPathScanner.cs
- MetadataSerializer.cs
- Size.cs
- DbgUtil.cs
- StackOverflowException.cs
- PointAnimationClockResource.cs
- PLINQETWProvider.cs
- TimeStampChecker.cs
- WindowsTokenRoleProvider.cs
- TdsParserStateObject.cs
- Model3D.cs
- CacheRequest.cs
- SettingsBase.cs
- DocumentPaginator.cs