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
- StaticExtension.cs
- Rule.cs
- SettingsPropertyWrongTypeException.cs
- HandleCollector.cs
- UnmanagedHandle.cs
- ConfigurationSchemaErrors.cs
- StreamingContext.cs
- RemotingSurrogateSelector.cs
- BaseValidatorDesigner.cs
- MemoryMappedViewAccessor.cs
- DateTime.cs
- ZipIORawDataFileBlock.cs
- WindowsFormsHelpers.cs
- DrawingServices.cs
- ProfilePropertySettingsCollection.cs
- ListControl.cs
- MouseOverProperty.cs
- CodeRegionDirective.cs
- WebPageTraceListener.cs
- Automation.cs
- PhysicalAddress.cs
- DodSequenceMerge.cs
- IConvertible.cs
- SqlSelectStatement.cs
- Transform3D.cs
- PointConverter.cs
- ScriptResourceInfo.cs
- FlowLayoutSettings.cs
- _Semaphore.cs
- TrackingMemoryStream.cs
- ColorMap.cs
- ConnectionPoolManager.cs
- SettingsContext.cs
- EntityProviderFactory.cs
- DesignerActionVerbItem.cs
- ThumbAutomationPeer.cs
- StringFormat.cs
- TypeToken.cs
- FlowDocumentPage.cs
- NumberFunctions.cs
- WindowHideOrCloseTracker.cs
- Peer.cs
- XmlILOptimizerVisitor.cs
- XmlAggregates.cs
- TargetInvocationException.cs
- WarningException.cs
- PaginationProgressEventArgs.cs
- ExpandCollapseProviderWrapper.cs
- XPathParser.cs
- TdsParserStaticMethods.cs
- WrappedOptions.cs
- FormsAuthenticationUserCollection.cs
- CopyCodeAction.cs
- ObfuscateAssemblyAttribute.cs
- PageStatePersister.cs
- InvalidFilterCriteriaException.cs
- CoTaskMemHandle.cs
- AppDomainResourcePerfCounters.cs
- ControlValuePropertyAttribute.cs
- DisableDpiAwarenessAttribute.cs
- ValidatorCompatibilityHelper.cs
- COM2FontConverter.cs
- UserControlBuildProvider.cs
- UnaryQueryOperator.cs
- NavigationProperty.cs
- SqlDelegatedTransaction.cs
- CodeExporter.cs
- ObjectStorage.cs
- BindingManagerDataErrorEventArgs.cs
- AddInProcess.cs
- CodeCastExpression.cs
- RNGCryptoServiceProvider.cs
- EventRoute.cs
- MachineKeyConverter.cs
- SchemaHelper.cs
- MaskedTextProvider.cs
- ImmutablePropertyDescriptorGridEntry.cs
- AuthenticationSection.cs
- TimerElapsedEvenArgs.cs
- OdbcCommandBuilder.cs
- RoutedEvent.cs
- HashStream.cs
- ContentPlaceHolder.cs
- HideDisabledControlAdapter.cs
- Solver.cs
- SqlMethodAttribute.cs
- MessageBox.cs
- BindingCollection.cs
- AnimationTimeline.cs
- ShapingEngine.cs
- CompiledQueryCacheKey.cs
- CustomErrorsSection.cs
- StateMachineExecutionState.cs
- ZipPackage.cs
- CngUIPolicy.cs
- BuildDependencySet.cs
- PrtCap_Base.cs
- DependencyObjectType.cs
- MergeFilterQuery.cs
- EditBehavior.cs