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
- JournalEntryListConverter.cs
- SqlDataSourceConfigureSortForm.cs
- SByteConverter.cs
- TrackBarDesigner.cs
- DateTime.cs
- OutputCacheSection.cs
- HtmlPageAdapter.cs
- DataGridItemAutomationPeer.cs
- ArgumentNullException.cs
- ErrorWrapper.cs
- ToolStripButton.cs
- TextEffectCollection.cs
- MemberDomainMap.cs
- SessionStateItemCollection.cs
- RepeaterCommandEventArgs.cs
- CommandHelper.cs
- GatewayIPAddressInformationCollection.cs
- tooltip.cs
- PropertyChangedEventArgs.cs
- DrawingAttributeSerializer.cs
- ServicePoint.cs
- RawTextInputReport.cs
- CodeGroup.cs
- InstanceNotReadyException.cs
- WindowsClaimSet.cs
- Exceptions.cs
- EventSchemaTraceListener.cs
- CallId.cs
- LinqDataSourceView.cs
- InstallerTypeAttribute.cs
- MemoryStream.cs
- TimeBoundedCache.cs
- SingleObjectCollection.cs
- AxHostDesigner.cs
- SoapSchemaImporter.cs
- BaseValidatorDesigner.cs
- RootProfilePropertySettingsCollection.cs
- String.cs
- XhtmlConformanceSection.cs
- EncodingNLS.cs
- FileSystemInfo.cs
- ParsedAttributeCollection.cs
- RbTree.cs
- QueryCursorEventArgs.cs
- InteropAutomationProvider.cs
- Rules.cs
- LogEntrySerializationException.cs
- NonSerializedAttribute.cs
- SimpleHandlerBuildProvider.cs
- isolationinterop.cs
- SizeLimitedCache.cs
- CodeValidator.cs
- IISMapPath.cs
- CompiledRegexRunner.cs
- DoubleStorage.cs
- WebDescriptionAttribute.cs
- RotateTransform.cs
- NotConverter.cs
- ToolZone.cs
- MessageQueueConverter.cs
- PropertyStore.cs
- Mouse.cs
- TrustSection.cs
- XmlSerializer.cs
- ModuleBuilder.cs
- KnownColorTable.cs
- Adorner.cs
- ItemCheckEvent.cs
- SecurityCookieModeValidator.cs
- _DomainName.cs
- FixedPage.cs
- XPathDocumentNavigator.cs
- MissingManifestResourceException.cs
- CachedRequestParams.cs
- SqlDelegatedTransaction.cs
- XmlElementList.cs
- C14NUtil.cs
- ListSortDescription.cs
- SystemBrushes.cs
- TargetPerspective.cs
- Operand.cs
- FormViewAutoFormat.cs
- MimeWriter.cs
- TdsParserSessionPool.cs
- CodeTypeConstructor.cs
- RegexMatchCollection.cs
- TextStore.cs
- AspNetHostingPermission.cs
- LambdaCompiler.Binary.cs
- SystemMulticastIPAddressInformation.cs
- PrintPreviewDialog.cs
- X509CertificateCollection.cs
- ImageCodecInfo.cs
- FormViewPageEventArgs.cs
- Unit.cs
- EntityDataSourceWizardForm.cs
- MobileListItem.cs
- XmlSchemaAnyAttribute.cs
- DataSourceHelper.cs
- GraphicsPathIterator.cs