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
- FieldBuilder.cs
- ValueType.cs
- FeatureManager.cs
- WebPartConnectionsConfigureVerb.cs
- OrderedDictionary.cs
- RectangleHotSpot.cs
- DataRow.cs
- BitmapEffectInput.cs
- OutputCacheSection.cs
- TailCallAnalyzer.cs
- _LocalDataStoreMgr.cs
- HttpStaticObjectsCollectionWrapper.cs
- KeyGestureValueSerializer.cs
- XPathNavigatorKeyComparer.cs
- TextDecorationLocationValidation.cs
- SqlSelectStatement.cs
- Invariant.cs
- InputScopeNameConverter.cs
- CodeTypeReferenceCollection.cs
- ExceptionUtil.cs
- SortedList.cs
- WorkItem.cs
- LocationReference.cs
- BindingSourceDesigner.cs
- PartBasedPackageProperties.cs
- CmsInterop.cs
- SID.cs
- XmlReaderSettings.cs
- HyperLinkColumn.cs
- DetailsViewRow.cs
- ExtensionSimplifierMarkupObject.cs
- DependencyPropertyHelper.cs
- ArrayTypeMismatchException.cs
- NamedElement.cs
- ConvertTextFrag.cs
- DesignerDataSchemaClass.cs
- FunctionQuery.cs
- MobileUserControl.cs
- HttpListenerResponse.cs
- LayoutDump.cs
- SwitchElementsCollection.cs
- OpenTypeCommon.cs
- OpenTypeCommon.cs
- LambdaCompiler.Expressions.cs
- Parameter.cs
- PopupRoot.cs
- OutputScopeManager.cs
- WebScriptEndpoint.cs
- PageStatePersister.cs
- Enum.cs
- ContractBase.cs
- EntityContainerEntitySetDefiningQuery.cs
- InkCollectionBehavior.cs
- RSAOAEPKeyExchangeDeformatter.cs
- PtsHost.cs
- SystemIPGlobalProperties.cs
- OutputScope.cs
- SignedXmlDebugLog.cs
- LayoutTable.cs
- RawStylusInput.cs
- MatrixCamera.cs
- StyleSheetComponentEditor.cs
- SharedPersonalizationStateInfo.cs
- StringPropertyBuilder.cs
- EntityContainerEmitter.cs
- ResourceManager.cs
- RegistrationServices.cs
- SettingsAttributes.cs
- Pointer.cs
- SharedPerformanceCounter.cs
- XMLDiffLoader.cs
- IOException.cs
- ChtmlPhoneCallAdapter.cs
- CreateUserWizard.cs
- HtmlTable.cs
- StringFunctions.cs
- CookieParameter.cs
- CodeNamespaceImportCollection.cs
- SystemException.cs
- ResizeGrip.cs
- InitializationEventAttribute.cs
- PtsHelper.cs
- PersonalizationStateInfo.cs
- DataSourceControlBuilder.cs
- Triplet.cs
- TempEnvironment.cs
- MultiBinding.cs
- BaseDataList.cs
- XmlTextReaderImpl.cs
- Model3D.cs
- JsonByteArrayDataContract.cs
- CopyCodeAction.cs
- MetadataHelper.cs
- BitVector32.cs
- CheckBoxAutomationPeer.cs
- ConfigurationSettings.cs
- ImageAutomationPeer.cs
- CuspData.cs
- LoginView.cs
- CodeNamespace.cs