Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / BuildTasks / MS / Internal / Shared / SourceFileInfo.cs / 1 / SourceFileInfo.cs
//---------------------------------------------------------------------------- // // File: SourceFileInfo.cs // // Description: // an internal class that keeps the related information for a source file. // Such as the relative path, source directory, Link path and // file stream etc. // // This can be shared by different build tasks. // // History: // 01/10/2007: weibz Created // // Copyright (C) 2007 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Security.Permissions; using System.IO; namespace MS.Internal { #region SourceFileInfo //// SourceFileInfo class // internal class SourceFileInfo { #region Constructor //// Constructor // internal SourceFileInfo(string filePath) { _filePath = filePath; _sourcePath = null; _relativeSourceFilePath = null; _stream = null; _isXamlFile = false; if (!string.IsNullOrEmpty(filePath) && filePath.ToUpperInvariant().EndsWith(XAML, StringComparison.Ordinal)) { _isXamlFile = true; } } #endregion Constructor #region Properties // // The original file Path // internal string OriginalFilePath { get { return _filePath; } } // // The new Source Directory for this filepath // // If the file is under the project root, this is the project root directory, // otherwise, this is the directory of the file. // internal string SourcePath { get { return _sourcePath; } set { _sourcePath = value; } } // // The new relative path which is relative to the SourcePath. // // If it is XamlFile, the RelativeSourceFilePath would not include the .xaml extension. // internal string RelativeSourceFilePath { get { return _relativeSourceFilePath; } set { _relativeSourceFilePath = value; } } // // Indicate if the source file is a xaml file or not. // internal bool IsXamlFile { get { return _isXamlFile; } } // // Stream of the file // internal Stream Stream { get { // // If the stream is not set for the file, get it from file system in Disk. // if ( _stream == null) { _stream = File.OpenRead(_filePath); } return _stream; } set { _stream = value; } } #endregion Properties #region internal methods // // Close the stream. // internal void CloseStream() { if (_stream != null) { _stream.Close(); _stream = null; } } #endregion #region Private Data private string _filePath; private string _sourcePath; private string _relativeSourceFilePath; private Stream _stream; private bool _isXamlFile; private const string XAML = ".XAML"; #endregion Private Data } #endregion SourceFileInfo } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: SourceFileInfo.cs // // Description: // an internal class that keeps the related information for a source file. // Such as the relative path, source directory, Link path and // file stream etc. // // This can be shared by different build tasks. // // History: // 01/10/2007: weibz Created // // Copyright (C) 2007 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Security.Permissions; using System.IO; namespace MS.Internal { #region SourceFileInfo //// SourceFileInfo class // internal class SourceFileInfo { #region Constructor //// Constructor // internal SourceFileInfo(string filePath) { _filePath = filePath; _sourcePath = null; _relativeSourceFilePath = null; _stream = null; _isXamlFile = false; if (!string.IsNullOrEmpty(filePath) && filePath.ToUpperInvariant().EndsWith(XAML, StringComparison.Ordinal)) { _isXamlFile = true; } } #endregion Constructor #region Properties // // The original file Path // internal string OriginalFilePath { get { return _filePath; } } // // The new Source Directory for this filepath // // If the file is under the project root, this is the project root directory, // otherwise, this is the directory of the file. // internal string SourcePath { get { return _sourcePath; } set { _sourcePath = value; } } // // The new relative path which is relative to the SourcePath. // // If it is XamlFile, the RelativeSourceFilePath would not include the .xaml extension. // internal string RelativeSourceFilePath { get { return _relativeSourceFilePath; } set { _relativeSourceFilePath = value; } } // // Indicate if the source file is a xaml file or not. // internal bool IsXamlFile { get { return _isXamlFile; } } // // Stream of the file // internal Stream Stream { get { // // If the stream is not set for the file, get it from file system in Disk. // if ( _stream == null) { _stream = File.OpenRead(_filePath); } return _stream; } set { _stream = value; } } #endregion Properties #region internal methods // // Close the stream. // internal void CloseStream() { if (_stream != null) { _stream.Close(); _stream = null; } } #endregion #region Private Data private string _filePath; private string _sourcePath; private string _relativeSourceFilePath; private Stream _stream; private bool _isXamlFile; private const string XAML = ".XAML"; #endregion Private Data } #endregion SourceFileInfo } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OutputScopeManager.cs
- RegexWriter.cs
- DataGridLinkButton.cs
- ListViewEditEventArgs.cs
- ProcessRequestAsyncResult.cs
- IdleTimeoutMonitor.cs
- EncodingFallbackAwareXmlTextWriter.cs
- ModelItemCollectionImpl.cs
- XmlElementAttribute.cs
- PhonemeEventArgs.cs
- TextParagraph.cs
- WebHeaderCollection.cs
- OperationDescription.cs
- ScrollItemPattern.cs
- MultiView.cs
- IISUnsafeMethods.cs
- TabControlCancelEvent.cs
- SubordinateTransaction.cs
- WebHttpBindingElement.cs
- HwndProxyElementProvider.cs
- PathStreamGeometryContext.cs
- DataSvcMapFileSerializer.cs
- SvcMapFile.cs
- AttributeEmitter.cs
- DataGridViewCellLinkedList.cs
- SystemIPv6InterfaceProperties.cs
- ServiceActivationException.cs
- Contracts.cs
- SectionVisual.cs
- SchemaNotation.cs
- TableCell.cs
- HtmlInputText.cs
- DrawingVisualDrawingContext.cs
- KnownBoxes.cs
- PlaceHolder.cs
- TableHeaderCell.cs
- TypeConverters.cs
- RenderDataDrawingContext.cs
- AnnotationHelper.cs
- FtpWebRequest.cs
- COM2IProvidePropertyBuilderHandler.cs
- LocatorManager.cs
- UIPropertyMetadata.cs
- GeneralTransform3DTo2DTo3D.cs
- CharacterMetricsDictionary.cs
- CodeExporter.cs
- NumericPagerField.cs
- StorageAssociationTypeMapping.cs
- SafeNativeMethods.cs
- ToolStripSplitButton.cs
- DurableOperationContext.cs
- BinaryCommonClasses.cs
- BindingManagerDataErrorEventArgs.cs
- DbDataRecord.cs
- XmlTextReaderImpl.cs
- ConstructorBuilder.cs
- MULTI_QI.cs
- ProfileGroupSettings.cs
- AuthenticationManager.cs
- Token.cs
- XDRSchema.cs
- AncestorChangedEventArgs.cs
- TextEditorThreadLocalStore.cs
- ActiveXContainer.cs
- ArrayElementGridEntry.cs
- TypefaceMap.cs
- PrintingPermission.cs
- ByteAnimationBase.cs
- BitmapImage.cs
- EventlogProvider.cs
- QueueProcessor.cs
- DPTypeDescriptorContext.cs
- RecognizerInfo.cs
- GetParentChain.cs
- XmlSchemaDocumentation.cs
- DBCommand.cs
- DataRelation.cs
- HttpWebResponse.cs
- SqlDependencyUtils.cs
- SessionStateContainer.cs
- DataGridViewBand.cs
- Grant.cs
- EmbeddedMailObject.cs
- GroupLabel.cs
- ArithmeticException.cs
- XmlSchemaIdentityConstraint.cs
- OutputCacheProfileCollection.cs
- _AutoWebProxyScriptHelper.cs
- ObjectIDGenerator.cs
- QueryReaderSettings.cs
- ValueHandle.cs
- GroupStyle.cs
- OutputCacheSettings.cs
- DBDataPermissionAttribute.cs
- FormsAuthentication.cs
- TraceSource.cs
- ToolStripDesigner.cs
- WebControlParameterProxy.cs
- RowToFieldTransformer.cs
- StringAttributeCollection.cs