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
- ColumnBinding.cs
- LocalValueEnumerator.cs
- Dictionary.cs
- KeyInterop.cs
- AttachedAnnotationChangedEventArgs.cs
- OdbcReferenceCollection.cs
- FigureParagraph.cs
- IndexerReference.cs
- Int64AnimationBase.cs
- ResourceDisplayNameAttribute.cs
- XmlReader.cs
- RegularExpressionValidator.cs
- TextElementEditingBehaviorAttribute.cs
- TextSelectionProcessor.cs
- InternalReceiveMessage.cs
- Mapping.cs
- DesignerAdRotatorAdapter.cs
- NameTable.cs
- FormsIdentity.cs
- RedistVersionInfo.cs
- ForeignKeyConstraint.cs
- EmptyEnumerator.cs
- IndexerNameAttribute.cs
- StorageAssociationTypeMapping.cs
- FontFamilyValueSerializer.cs
- FlowDocumentPage.cs
- DataGridViewCellPaintingEventArgs.cs
- ParsedAttributeCollection.cs
- XslException.cs
- SqlDataSource.cs
- MD5HashHelper.cs
- RawUIStateInputReport.cs
- IdleTimeoutMonitor.cs
- ServiceBusyException.cs
- LostFocusEventManager.cs
- jithelpers.cs
- ObjectTag.cs
- ContextStack.cs
- List.cs
- SessionPageStatePersister.cs
- CompiledQuery.cs
- PagedDataSource.cs
- SoapFault.cs
- ValidationSummaryDesigner.cs
- XmlNodeChangedEventManager.cs
- TextElementAutomationPeer.cs
- COM2PictureConverter.cs
- ChildTable.cs
- NodeFunctions.cs
- FontCacheUtil.cs
- Preprocessor.cs
- BasicKeyConstraint.cs
- ModuleElement.cs
- Stackframe.cs
- PeerNodeAddress.cs
- ExtensionQuery.cs
- RowsCopiedEventArgs.cs
- OracleCommandSet.cs
- CultureMapper.cs
- ControlPaint.cs
- DesignConnectionCollection.cs
- SystemNetHelpers.cs
- SqlMethodTransformer.cs
- ByteAnimationBase.cs
- RegexInterpreter.cs
- CodeSnippetCompileUnit.cs
- WebAdminConfigurationHelper.cs
- GridViewColumnHeader.cs
- SplitContainer.cs
- GroupBox.cs
- GraphicsPathIterator.cs
- SQLDateTime.cs
- PeerPresenceInfo.cs
- ConsumerConnectionPoint.cs
- ItemAutomationPeer.cs
- SoapRpcMethodAttribute.cs
- OleDbParameterCollection.cs
- ProfileGroupSettingsCollection.cs
- PerspectiveCamera.cs
- Cursor.cs
- CodeVariableReferenceExpression.cs
- WindowsRichEdit.cs
- DesignerOptions.cs
- DbgUtil.cs
- IDispatchConstantAttribute.cs
- DockEditor.cs
- RijndaelManagedTransform.cs
- sitestring.cs
- xsdvalidator.cs
- SortedSetDebugView.cs
- QueryCursorEventArgs.cs
- CombinedGeometry.cs
- SqlDependencyUtils.cs
- SessionSwitchEventArgs.cs
- WorkflowServiceInstance.cs
- PrePrepareMethodAttribute.cs
- RootDesignerSerializerAttribute.cs
- IISUnsafeMethods.cs
- XComponentModel.cs
- EmptyReadOnlyDictionaryInternal.cs