Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / BuildTasks / MS / Internal / Shared / SourceFileInfo.cs / 1305600 / 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
- EntryPointNotFoundException.cs
- VirtualPathUtility.cs
- SByteConverter.cs
- TextRangeEdit.cs
- Menu.cs
- XmlLangPropertyAttribute.cs
- SpeakInfo.cs
- PngBitmapDecoder.cs
- DiscoveryUtility.cs
- CorrelationTokenTypeConvertor.cs
- TextEndOfLine.cs
- ComponentResourceKeyConverter.cs
- BatchServiceHost.cs
- DataGridViewColumnConverter.cs
- RelatedView.cs
- UnsafeNativeMethodsTablet.cs
- MediaSystem.cs
- JsonDataContract.cs
- SqlParameterizer.cs
- OleDbReferenceCollection.cs
- ReachPrintTicketSerializerAsync.cs
- WsatTransactionFormatter.cs
- OuterGlowBitmapEffect.cs
- OperationValidationEventArgs.cs
- ListBoxItemAutomationPeer.cs
- UrlPath.cs
- OptimizedTemplateContentHelper.cs
- SerializationObjectManager.cs
- ScriptDescriptor.cs
- FastEncoder.cs
- TextFormatterHost.cs
- ControlBindingsConverter.cs
- StringResourceManager.cs
- DataGridViewDataErrorEventArgs.cs
- TemplateInstanceAttribute.cs
- _NtlmClient.cs
- CodeEventReferenceExpression.cs
- QueryableFilterUserControl.cs
- BindingExpressionUncommonField.cs
- OperationCanceledException.cs
- ElementAtQueryOperator.cs
- PersonalizablePropertyEntry.cs
- WebExceptionStatus.cs
- DrawingGroupDrawingContext.cs
- ExpressionBinding.cs
- IssuedTokenClientBehaviorsElementCollection.cs
- DirectoryLocalQuery.cs
- ThrowHelper.cs
- TabItem.cs
- XmlNodeWriter.cs
- ViewCellRelation.cs
- TableCell.cs
- UrlPropertyAttribute.cs
- QueryResultOp.cs
- AddInContractAttribute.cs
- SplitterCancelEvent.cs
- RegisteredHiddenField.cs
- ActivityMarkupSerializationProvider.cs
- CreatingCookieEventArgs.cs
- ObjectDataSourceView.cs
- ExpressionConverter.cs
- Attributes.cs
- ISessionStateStore.cs
- CommandField.cs
- JsonFormatWriterGenerator.cs
- RemoteDebugger.cs
- ToolZone.cs
- SortedList.cs
- XmlLinkedNode.cs
- ButtonFieldBase.cs
- ClientSession.cs
- ObjectCache.cs
- HtmlInputReset.cs
- OneToOneMappingSerializer.cs
- CompilerCollection.cs
- listitem.cs
- TextLineResult.cs
- HttpStreamXmlDictionaryWriter.cs
- KeyedCollection.cs
- DataFormat.cs
- GridItem.cs
- BaseProcessor.cs
- CollectionBase.cs
- FileUtil.cs
- RequestCacheEntry.cs
- UnorderedHashRepartitionStream.cs
- FlowLayoutSettings.cs
- ArrayElementGridEntry.cs
- ErasingStroke.cs
- DBConcurrencyException.cs
- DesigntimeLicenseContext.cs
- MatrixValueSerializer.cs
- Pens.cs
- ScrollBarAutomationPeer.cs
- mediaclock.cs
- GregorianCalendar.cs
- QuestionEventArgs.cs
- StaticExtensionConverter.cs
- XmlParserContext.cs
- PropertyItemInternal.cs