Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / IO / Packaging / EncryptedPackageFilter.cs / 1305600 / EncryptedPackageFilter.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // Implements indexing filter for EncryptedPackageEnvelope. // Invoked by XpsFilter if the file/stream being filtered // is an EncryptedPackageEnvelope. // // History: // 07/18/2005: ArindamB: Initial implementation //--------------------------------------------------------------------------- using System; using System.Windows; using System.Runtime.InteropServices; using System.IO.Packaging; using MS.Internal.Interop; namespace MS.Internal.IO.Packaging { #region EncryptedPackageFilter ////// Implements IFilter methods to support indexing on EncryptedPackageEnvelope. /// internal class EncryptedPackageFilter : IFilter { #region Constructor ////// Constructor. /// /// EncryptedPackageEnvelope to filter on internal EncryptedPackageFilter(EncryptedPackageEnvelope encryptedPackage) { if (encryptedPackage == null) { throw new ArgumentNullException("encryptedPackage"); } // // Since CorePropertiesFilter is implemented as // a managed filter (supports IManagedFilter interface), // IndexingFilterMarshaler is used to get IFilter interface out of it. // _filter = new IndexingFilterMarshaler( new CorePropertiesFilter( encryptedPackage.PackageProperties )); } #endregion Constructor #region IFilter methods ////// Initialzes the session for this filter. /// /// usage flags /// number of elements in aAttributes array /// array of FULLPROPSPEC structs to restrict responses ///IFILTER_FLAGS_NONE. Return value is effectively ignored by the caller. public IFILTER_FLAGS Init( [In] IFILTER_INIT grfFlags, [In] uint cAttributes, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] FULLPROPSPEC[] aAttributes) { return _filter.Init(grfFlags, cAttributes, aAttributes); } ////// Returns description of the next chunk. /// ///Chunk descriptor public STAT_CHUNK GetChunk() { return _filter.GetChunk(); } ////// Gets text content corresponding to current chunk. /// /// /// ///Not supported in indexing of core properties. public void GetText(ref uint bufCharacterCount, IntPtr pBuffer) { throw new COMException(SR.Get(SRID.FilterGetTextNotSupported), (int)FilterErrorCode.FILTER_E_NO_TEXT); } ////// Gets the property value corresponding to current chunk. /// ///property value public IntPtr GetValue() { return _filter.GetValue(); } ////// Retrieves an interface representing the specified portion of the object. /// /// /// ///Not implemented. Reserved for future use. public IntPtr BindRegion([In] FILTERREGION origPos, [In] ref Guid riid) { throw new NotImplementedException(SR.Get(SRID.FilterBindRegionNotImplemented)); } #endregion IFilter methods #region Fields ////// Only filtering that is supported on EncryptedPackageEnvelope /// is of core properties. This points to EncryptedPackageCorePropertiesFilter /// wrapped by FilterMarshaler. /// private IFilter _filter = null; #endregion Fields } #endregion EncryptedPackageFilter } // 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
- ProviderCollection.cs
- TextOutput.cs
- XmlAtomErrorReader.cs
- ServiceOperation.cs
- WorkItem.cs
- ShaderRenderModeValidation.cs
- RSACryptoServiceProvider.cs
- SecurityDocument.cs
- RelationshipManager.cs
- XmlResolver.cs
- Calendar.cs
- ValidationSummaryDesigner.cs
- File.cs
- Process.cs
- Int32AnimationUsingKeyFrames.cs
- CodeRemoveEventStatement.cs
- KeyGesture.cs
- FreezableCollection.cs
- Publisher.cs
- SwitchExpression.cs
- WorkflowApplicationCompletedException.cs
- ApplicationInterop.cs
- PropertyInformationCollection.cs
- HelpKeywordAttribute.cs
- SqlCacheDependency.cs
- HostingPreferredMapPath.cs
- DataGridViewLinkColumn.cs
- StorageComplexTypeMapping.cs
- PtsPage.cs
- EncodingFallbackAwareXmlTextWriter.cs
- SyndicationElementExtensionCollection.cs
- RoleExceptions.cs
- GenericArgumentsUpdater.cs
- SqlCachedBuffer.cs
- DiscardableAttribute.cs
- PolicyException.cs
- TextDecoration.cs
- AdCreatedEventArgs.cs
- XmlILAnnotation.cs
- WebUtil.cs
- AnimationClockResource.cs
- DbFunctionCommandTree.cs
- RemoteWebConfigurationHost.cs
- SqlCommandBuilder.cs
- LinkClickEvent.cs
- WindowsScrollBar.cs
- SecurityChannelFactory.cs
- SqlDataReader.cs
- RtfFormatStack.cs
- ColorConvertedBitmapExtension.cs
- ComponentDesigner.cs
- DataGridItemCollection.cs
- OleCmdHelper.cs
- MarkupObject.cs
- XmlSerializerFactory.cs
- SmiRequestExecutor.cs
- TimelineGroup.cs
- SendSecurityHeaderElementContainer.cs
- RichTextBox.cs
- QueueProcessor.cs
- SourceSwitch.cs
- ConfigurationManagerHelper.cs
- TopClause.cs
- ElementProxy.cs
- XmlSchemaSimpleTypeUnion.cs
- ReliabilityContractAttribute.cs
- DesigntimeLicenseContext.cs
- EnlistmentState.cs
- TypedColumnHandler.cs
- XmlReaderSettings.cs
- PropertyIdentifier.cs
- UserControl.cs
- GridViewItemAutomationPeer.cs
- ImageDrawing.cs
- SchemaDeclBase.cs
- DirectoryObjectSecurity.cs
- DocumentPage.cs
- FormViewPageEventArgs.cs
- EntityDataSourceSelectedEventArgs.cs
- TcpProcessProtocolHandler.cs
- COM2EnumConverter.cs
- DocumentPaginator.cs
- XmlDocumentSchema.cs
- PropertyGridEditorPart.cs
- Int64Storage.cs
- LocalizableAttribute.cs
- XmlArrayItemAttributes.cs
- ErrorWebPart.cs
- XmlSerializationWriter.cs
- LineSegment.cs
- CodeAttributeArgumentCollection.cs
- FilterQueryOptionExpression.cs
- ErrorRuntimeConfig.cs
- SelectionRangeConverter.cs
- SymmetricSecurityProtocolFactory.cs
- BitmapEffectInputData.cs
- AttributeCollection.cs
- HttpServerVarsCollection.cs
- XmlAtomicValue.cs
- documentsequencetextcontainer.cs