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
- GridViewColumnCollectionChangedEventArgs.cs
- SafeNativeMethods.cs
- DecimalKeyFrameCollection.cs
- HtmlTableCell.cs
- NameValueCollection.cs
- LightweightEntityWrapper.cs
- ListBoxChrome.cs
- TrustSection.cs
- SmtpMail.cs
- ViewBox.cs
- recordstatescratchpad.cs
- DataViewSettingCollection.cs
- Util.cs
- AliasedExpr.cs
- BinarySerializer.cs
- CodeAssignStatement.cs
- XmlText.cs
- DataFormats.cs
- Button.cs
- HttpModulesSection.cs
- ContentFilePart.cs
- UTF8Encoding.cs
- WorkflowInstanceExtensionCollection.cs
- WindowInteropHelper.cs
- DbCommandDefinition.cs
- WebReferenceCollection.cs
- PackUriHelper.cs
- HintTextConverter.cs
- ImageFormat.cs
- Polyline.cs
- WsdlServiceChannelBuilder.cs
- InlineCollection.cs
- InvalidEnumArgumentException.cs
- TemplatedMailWebEventProvider.cs
- unitconverter.cs
- StsCommunicationException.cs
- XmlReaderSettings.cs
- CodeValidator.cs
- Vector3D.cs
- ConfigurationValues.cs
- DesignerCapabilities.cs
- OleDbCommandBuilder.cs
- OperationInvokerTrace.cs
- IDQuery.cs
- SetStateEventArgs.cs
- safex509handles.cs
- StrokeCollection2.cs
- StorageInfo.cs
- RowToFieldTransformer.cs
- _ListenerRequestStream.cs
- ContextMenu.cs
- DayRenderEvent.cs
- ConfigurationPropertyAttribute.cs
- CodeMemberProperty.cs
- ResetableIterator.cs
- SevenBitStream.cs
- NonDualMessageSecurityOverHttpElement.cs
- TaskSchedulerException.cs
- SafeNativeMemoryHandle.cs
- DateTimeStorage.cs
- EntityException.cs
- _RequestCacheProtocol.cs
- ErrorTableItemStyle.cs
- WebEventTraceProvider.cs
- PointCollectionValueSerializer.cs
- SpeechSynthesizer.cs
- SamlSubjectStatement.cs
- ISFTagAndGuidCache.cs
- NativeMethods.cs
- BypassElement.cs
- StreamInfo.cs
- LayoutEvent.cs
- AttributeQuery.cs
- XsltConvert.cs
- GetWinFXPath.cs
- OdbcFactory.cs
- TextEditorCopyPaste.cs
- UInt64.cs
- EncoderNLS.cs
- InsufficientMemoryException.cs
- ComponentEvent.cs
- JsonGlobals.cs
- NamespaceListProperty.cs
- SizeAnimation.cs
- ListViewItemSelectionChangedEvent.cs
- ThicknessAnimationUsingKeyFrames.cs
- FtpRequestCacheValidator.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- EdmItemError.cs
- LayoutDump.cs
- DurableInstance.cs
- WindowsTitleBar.cs
- BindingExpressionBase.cs
- SqlClientFactory.cs
- BindingList.cs
- CompilerInfo.cs
- WebPartVerbCollection.cs
- ProxyAttribute.cs
- TargetConverter.cs
- TreeNodeMouseHoverEvent.cs