Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / MS / Internal / IO / Packaging / EncryptedPackageFilter.cs / 1 / 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. //---------------------------------------------------------------------------- // //// 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
- HttpFileCollection.cs
- NGCSerializer.cs
- ColumnMap.cs
- DataSourceView.cs
- LinqDataSourceHelper.cs
- CustomTypeDescriptor.cs
- CustomWebEventKey.cs
- AdjustableArrowCap.cs
- TreeViewItem.cs
- HtmlTable.cs
- CaseInsensitiveHashCodeProvider.cs
- SerialErrors.cs
- RetrieveVirtualItemEventArgs.cs
- NativeActivityMetadata.cs
- ErrorStyle.cs
- Metadata.cs
- XamlPoint3DCollectionSerializer.cs
- SupportingTokenChannel.cs
- TreeNodeBinding.cs
- NotifyIcon.cs
- IndentedTextWriter.cs
- ListDesigner.cs
- DiscriminatorMap.cs
- ScriptResourceMapping.cs
- SynthesizerStateChangedEventArgs.cs
- PersianCalendar.cs
- WebControlAdapter.cs
- MenuCommands.cs
- BindToObject.cs
- StrongNameIdentityPermission.cs
- RectConverter.cs
- ActivationWorker.cs
- ObjectQueryProvider.cs
- FacetChecker.cs
- DataGridItemEventArgs.cs
- TextTreeTextNode.cs
- SqlDataSourceEnumerator.cs
- SslStreamSecurityUpgradeProvider.cs
- ObjectDataSourceDisposingEventArgs.cs
- UserMapPath.cs
- ClientConfigurationHost.cs
- ListViewPagedDataSource.cs
- LicFileLicenseProvider.cs
- InlinedAggregationOperator.cs
- BoolLiteral.cs
- SourceChangedEventArgs.cs
- TextEndOfSegment.cs
- LocatorPartList.cs
- PriorityBindingExpression.cs
- AppDomainFactory.cs
- MethodBuilder.cs
- LayoutExceptionEventArgs.cs
- ConfigXmlSignificantWhitespace.cs
- SpeakProgressEventArgs.cs
- XmlAtomErrorReader.cs
- StorageMappingItemCollection.cs
- TraceEventCache.cs
- SQLInt16Storage.cs
- CompilerLocalReference.cs
- SmiXetterAccessMap.cs
- EventLogConfiguration.cs
- Validator.cs
- DataGridState.cs
- OperandQuery.cs
- WebBrowserNavigatedEventHandler.cs
- ViewStateException.cs
- CodeLinePragma.cs
- BitmapPalette.cs
- SchemaUtility.cs
- IRCollection.cs
- EventLogInternal.cs
- TextDecoration.cs
- BackoffTimeoutHelper.cs
- InfoCardCryptoHelper.cs
- SystemTcpStatistics.cs
- CorrelationRequestContext.cs
- FormView.cs
- HttpHeaderCollection.cs
- RegexWorker.cs
- cookieexception.cs
- tibetanshape.cs
- ConfigXmlCDataSection.cs
- PipelineModuleStepContainer.cs
- AutoGeneratedFieldProperties.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- MenuItem.cs
- XPathAxisIterator.cs
- EventPrivateKey.cs
- NamedPipeWorkerProcess.cs
- MeshGeometry3D.cs
- FileDialog.cs
- util.cs
- PrePostDescendentsWalker.cs
- UserControlDesigner.cs
- GenericPrincipal.cs
- View.cs
- ZipIOLocalFileBlock.cs
- InkCanvasFeedbackAdorner.cs
- Switch.cs
- LambdaExpression.cs