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
- OperatorExpressions.cs
- KeyboardNavigation.cs
- SemanticAnalyzer.cs
- LinqExpressionNormalizer.cs
- BuiltInPermissionSets.cs
- HierarchicalDataTemplate.cs
- CollectionChangeEventArgs.cs
- EntityDataSourceDesignerHelper.cs
- FileFormatException.cs
- Action.cs
- DictionaryTraceRecord.cs
- HierarchicalDataBoundControl.cs
- SafeTimerHandle.cs
- StringKeyFrameCollection.cs
- DispatcherSynchronizationContext.cs
- XmlIgnoreAttribute.cs
- FontCacheLogic.cs
- SmuggledIUnknown.cs
- DataServiceQueryContinuation.cs
- Visual.cs
- MasterPageCodeDomTreeGenerator.cs
- SafePEFileHandle.cs
- AssemblyLoader.cs
- MappingModelBuildProvider.cs
- PrintDialog.cs
- GifBitmapEncoder.cs
- BitmapDownload.cs
- ClusterSafeNativeMethods.cs
- TextEffect.cs
- PatternMatcher.cs
- DataBindingHandlerAttribute.cs
- GridViewCancelEditEventArgs.cs
- DependencyPropertyKey.cs
- ExpressionTextBoxAutomationPeer.cs
- RtType.cs
- HtmlMeta.cs
- FactoryMaker.cs
- Triplet.cs
- MouseCaptureWithinProperty.cs
- LZCodec.cs
- NullRuntimeConfig.cs
- AnimatedTypeHelpers.cs
- StateWorkerRequest.cs
- XmlHierarchyData.cs
- ClientConfigPaths.cs
- ResourceLoader.cs
- QfeChecker.cs
- __Filters.cs
- FlowDocumentFormatter.cs
- CodeTypeReferenceCollection.cs
- RsaKeyGen.cs
- StoreItemCollection.Loader.cs
- BaseParser.cs
- TextMessageEncodingBindingElement.cs
- TextContainerChangedEventArgs.cs
- PageTheme.cs
- MethodExpr.cs
- HtmlEmptyTagControlBuilder.cs
- JpegBitmapDecoder.cs
- TagNameToTypeMapper.cs
- MonikerUtility.cs
- ImageBrush.cs
- WebPartConnectionsDisconnectVerb.cs
- Activity.cs
- DesignerOptionService.cs
- util.cs
- SQLBytesStorage.cs
- ConnectionPointCookie.cs
- MimeBasePart.cs
- KeyTimeConverter.cs
- MultipleViewPattern.cs
- MemberAssignment.cs
- ComponentCommands.cs
- CustomGrammar.cs
- DataGridItem.cs
- ErrorHandler.cs
- RegistryPermission.cs
- DecodeHelper.cs
- HybridDictionary.cs
- FontFaceLayoutInfo.cs
- ProcessProtocolHandler.cs
- PenThreadWorker.cs
- WindowsTreeView.cs
- DBSqlParserColumnCollection.cs
- BufferBuilder.cs
- WebBrowsableAttribute.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- ADMembershipProvider.cs
- GridViewAutomationPeer.cs
- URLIdentityPermission.cs
- AnimatedTypeHelpers.cs
- IFlowDocumentViewer.cs
- ContainerUIElement3D.cs
- HttpHandlerAction.cs
- SimpleMailWebEventProvider.cs
- PropertyConverter.cs
- CursorConverter.cs
- TriState.cs
- AppDomainCompilerProxy.cs
- ProfileGroupSettingsCollection.cs