Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / MS / Internal / IO / Zip / ZipFileInfo.cs / 1305600 / ZipFileInfo.cs
//------------------------------------------------------------------------------ //------------- *** WARNING *** //------------- This file is part of a legally monitored development project. //------------- Do not check in changes to this project. Do not raid bugs on this //------------- code in the main PS database. Do not contact the owner of this //------------- code directly. Contact the legal team at �ZSLegal� for assistance. //------------- *** WARNING *** //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is an internal class that enables interactions with Zip archives // for OPC scenarios // // History: // 11/19/2004: IgorBel: Initial creation. // //----------------------------------------------------------------------------- using System; using System.IO; using System.Diagnostics; namespace MS.Internal.IO.Zip { internal sealed class ZipFileInfo { //------------------------------------------------------ // // Public Members // //----------------------------------------------------- // None //------------------------------------------------------ // // Internal Constructors // //------------------------------------------------------ // None //----------------------------------------------------- // // Internal API Methods (although these methods are marked as // Internal they are part of the internal ZIP IO API surface // //------------------------------------------------------ internal Stream GetStream(FileMode mode, FileAccess access) { CheckDisposed(); return _fileBlock.GetStream(mode, access); } //----------------------------------------------------- // // Internal Properties // //----------------------------------------------------- internal string Name { get { CheckDisposed(); return _fileBlock.FileName; } } internal ZipArchive ZipArchive { get { CheckDisposed(); return _zipArchive; } } internal CompressionMethodEnum CompressionMethod { get { CheckDisposed(); return _fileBlock.CompressionMethod; } } internal DateTime LastModFileDateTime { get { CheckDisposed(); return ZipIOBlockManager.FromMsDosDateTime(_fileBlock.LastModFileDateTime); } } #if false internal bool EncryptedFlag { get { CheckDisposed(); return _fileBlock.EncryptedFlag; } } #endif internal DeflateOptionEnum DeflateOption { get { CheckDisposed(); return _fileBlock.DeflateOption; } } #if false internal bool StreamingCreationFlag { get { CheckDisposed(); return _fileBlock.StreamingCreationFlag; } } #endif // This ia Directory flag based on the informtion from the central directory // at the moment we have only provide reliable value for the files authored in MS-DOS // The upper byte of version made by indicating (OS) must be == 0 (MS-DOS) // for the other cases (OSes) we will return false internal bool FolderFlag { get { CheckDisposed(); return _fileBlock.FolderFlag; } } // This ia Directory flag based on the informtion from the central directory // at the moment we have only provide reliable value for the files authored in MS-DOS // The upper byte of version made by indicating (OS) must be == 0 (MS-DOS) // for the other cases (OSes) we will return false internal bool VolumeLabelFlag { get { CheckDisposed(); return _fileBlock.VolumeLabelFlag; } } //----------------------------------------------------- // Internal NON API Constructor (this constructor is marked as internal // and isNOT part of the ZIP IO API surface) // It supposed to be called only by the ZipArchive class //------------------------------------------------------ internal ZipFileInfo(ZipArchive zipArchive, ZipIOLocalFileBlock fileBlock) { Debug.Assert((fileBlock != null) && (zipArchive != null)); _fileBlock = fileBlock; _zipArchive = zipArchive; #if DEBUG // validate that date time is legal DateTime dt = LastModFileDateTime; #endif } //----------------------------------------------------- // Internal NON API property to be used to map FileInfo back to a block that needs to be deleted // (this prperty is marked as internal and isNOT part of the ZIP IO API surface) // It supposed to be called only by the ZipArchive class //------------------------------------------------------ internal ZipIOLocalFileBlock LocalFileBlock { get { return _fileBlock; } } //------------------------------------------------------ // // Private Methods // //----------------------------------------------------- private void CheckDisposed() { _fileBlock.CheckDisposed(); } //------------------------------------------------------ // // Private Properties // //----------------------------------------------------- //----------------------------------------------------- // // Private Fields // //----------------------------------------------------- private ZipIOLocalFileBlock _fileBlock; private ZipArchive _zipArchive; } } // 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
- TextLine.cs
- ExtensionWindowResizeGrip.cs
- NameValueFileSectionHandler.cs
- OutputCacheSection.cs
- GC.cs
- SchemaElementLookUpTable.cs
- ProfileEventArgs.cs
- _NegotiateClient.cs
- MetadataUtil.cs
- WebContext.cs
- DiagnosticsConfiguration.cs
- DataPointer.cs
- PipelineModuleStepContainer.cs
- CodeIdentifier.cs
- DataBindingList.cs
- SerializerProvider.cs
- XPathAncestorIterator.cs
- EnvironmentPermission.cs
- ThrowHelper.cs
- dataprotectionpermission.cs
- SplineKeyFrames.cs
- SystemWebSectionGroup.cs
- PreviousTrackingServiceAttribute.cs
- TableLayoutSettings.cs
- ChannelDispatcherCollection.cs
- MenuRendererClassic.cs
- GAC.cs
- XmlObjectSerializerWriteContext.cs
- Item.cs
- PageCache.cs
- XsltFunctions.cs
- Relationship.cs
- FactoryGenerator.cs
- InputScopeAttribute.cs
- DataGridViewAdvancedBorderStyle.cs
- NamedPipeTransportManager.cs
- UnmanagedMarshal.cs
- SqlTypeConverter.cs
- ForEach.cs
- _RequestCacheProtocol.cs
- ConfigurationManagerHelper.cs
- GridViewUpdatedEventArgs.cs
- DiagnosticStrings.cs
- GeometryDrawing.cs
- DiscardableAttribute.cs
- GeometryGroup.cs
- KnownColorTable.cs
- PartitionResolver.cs
- RuleEngine.cs
- TraceFilter.cs
- HttpCachePolicy.cs
- InputElement.cs
- ToolboxItemAttribute.cs
- StringFunctions.cs
- CodeAttributeDeclarationCollection.cs
- DragEventArgs.cs
- SelectionRange.cs
- LeaseManager.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- EnumMemberAttribute.cs
- ForeignConstraint.cs
- DynamicResourceExtension.cs
- SqlConnectionString.cs
- MorphHelpers.cs
- ComponentConverter.cs
- MonthCalendar.cs
- CompletionCallbackWrapper.cs
- ExtendedPropertyDescriptor.cs
- Operator.cs
- RecognizerStateChangedEventArgs.cs
- CaseExpr.cs
- ImageMapEventArgs.cs
- ObjectReaderCompiler.cs
- SmtpNetworkElement.cs
- WebPartUtil.cs
- CanExpandCollapseAllConverter.cs
- SchemaInfo.cs
- mda.cs
- CompareValidator.cs
- Menu.cs
- DecoratedNameAttribute.cs
- SignatureResourceHelper.cs
- TransformedBitmap.cs
- PermissionAttributes.cs
- SiteMapDataSource.cs
- DbTransaction.cs
- ScriptReferenceEventArgs.cs
- RouteUrlExpressionBuilder.cs
- XmlValidatingReader.cs
- DbProviderFactoriesConfigurationHandler.cs
- ServiceDescriptionData.cs
- QueueAccessMode.cs
- Root.cs
- BaseTemplateCodeDomTreeGenerator.cs
- PathGeometry.cs
- FrameworkElementFactory.cs
- RadialGradientBrush.cs
- ActionNotSupportedException.cs
- SecurityTokenTypes.cs
- NetworkAddressChange.cs