Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / IndexObject.cs / 1 / IndexObject.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections.Specialized; using System.Collections.Generic; using System.IO; using System.Runtime.InteropServices; using System.Threading; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // Internal class that unifies the location that index values are created, // and how they are created. // // Remarks: // This class is for internal store use only. // internal class IndexObject { object[] m_objects; byte[] m_compiledForm; // // Summary: // Creates an instance of an IndexObject using uncompiled objects // // Remarks: // // Parameters: // objects: the list of object that will make this index entry. // public IndexObject( object[] objects ) { m_objects = objects; } // // Summary: // Creates an instance of an IndexObject with a raw compiled form // // Remarks: // // Parameters: // compiledForm: the binary of the compiled form to use. // public IndexObject( byte[] compiledForm ) { m_compiledForm = compiledForm; } // // Summary: // Gets a bool indicating that the data is compiled // public bool IsCompiled { get{ return null != m_compiledForm; } } // // Summary: // Gets a bool indicating if the object has data to compile // public bool CanCompile { get{ return null != m_objects; } } // // Summary: // Gets a pointer to the raw compiled buffer // public byte[] CompiledForm { get{ return m_compiledForm; } } // // Summary: // Gets a pointer to the uncompiled object array // public object[] ObjectList { get{ return m_objects; } } // // Summary: // Compiles the object using the specified definintion // // Parameters: // indexDef: The indexDef that defines how to compile this object. // internal void Compile( SecondaryIndexDefinition indexDef ) { if( !CanCompile ) { throw IDT.ThrowHelperError( new InvalidOperationException( SR.GetString( SR.StoreIndexObjectCanNotBeCompiled ) ) ); } byte[] buffer = new byte[ SecondaryIndexItem.HashValueSize ]; int index = 0; for( int i=0;ibuffer.Length ) { throw IDT.ThrowHelperError( new InvalidOperationException( SR.GetString( SR.StoreIndexObjectBufferOverflow, indexDef.Name ) ) ); } Array.Copy( canonicalForm, 0, buffer, index, canonicalForm.Length ); index += canonicalForm.Length; } m_compiledForm = buffer; } } } // 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
- EdmError.cs
- FullTextBreakpoint.cs
- ProfileSettingsCollection.cs
- WorkerRequest.cs
- CodeCommentStatement.cs
- _KerberosClient.cs
- _Rfc2616CacheValidators.cs
- MessageDispatch.cs
- QuadraticBezierSegment.cs
- TransformGroup.cs
- InternalResources.cs
- NullableIntMinMaxAggregationOperator.cs
- BitmapEffectDrawing.cs
- BaseTransportHeaders.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- TextControl.cs
- CodeRemoveEventStatement.cs
- WebPartEditorOkVerb.cs
- SqlConnectionFactory.cs
- ServerTooBusyException.cs
- RequestTimeoutManager.cs
- ArrangedElementCollection.cs
- ObjectListCommandCollection.cs
- AuthenticationConfig.cs
- TextElementEnumerator.cs
- PropertyGridEditorPart.cs
- Win32MouseDevice.cs
- GeneralTransformCollection.cs
- BitmapVisualManager.cs
- BitmapEffectGeneralTransform.cs
- CacheManager.cs
- UInt32.cs
- MetafileHeader.cs
- TextEncodedRawTextWriter.cs
- XmlSerializerNamespaces.cs
- DynamicDiscoveryDocument.cs
- DetailsViewDeleteEventArgs.cs
- XmlAttributeOverrides.cs
- SchemaNames.cs
- Brushes.cs
- OverlappedAsyncResult.cs
- SqlCachedBuffer.cs
- LinkedList.cs
- recordstatefactory.cs
- WebPartConnectionsEventArgs.cs
- _UriTypeConverter.cs
- FullTextBreakpoint.cs
- HandleRef.cs
- DependencyPropertyKey.cs
- TextProperties.cs
- FrameworkElement.cs
- ActivityDelegate.cs
- IfAction.cs
- ColumnMapProcessor.cs
- DataPager.cs
- EventLogQuery.cs
- ConditionalAttribute.cs
- TypeResolvingOptionsAttribute.cs
- ListViewItemSelectionChangedEvent.cs
- ExceptionUtil.cs
- PageWrapper.cs
- OutOfProcStateClientManager.cs
- ViewBase.cs
- Decorator.cs
- Rules.cs
- IEnumerable.cs
- FocusTracker.cs
- MenuTracker.cs
- ConfigurationSectionGroup.cs
- Table.cs
- GridSplitterAutomationPeer.cs
- ReferenceTypeElement.cs
- TextEvent.cs
- CommandField.cs
- MessageHeaderDescription.cs
- ErasingStroke.cs
- XmlDeclaration.cs
- PeerTransportListenAddressValidator.cs
- FormViewInsertedEventArgs.cs
- HebrewCalendar.cs
- ObjectViewQueryResultData.cs
- ActivityCodeGenerator.cs
- CompilationUtil.cs
- XmlProcessingInstruction.cs
- XPathParser.cs
- DecoderReplacementFallback.cs
- Sorting.cs
- SettingsAttributeDictionary.cs
- ObjectSet.cs
- XmlEntity.cs
- ObjectQuery.cs
- DesignerOptionService.cs
- WinInet.cs
- RoutedCommand.cs
- Polyline.cs
- FixedFlowMap.cs
- AutomationPropertyInfo.cs
- EntityDesignerBuildProvider.cs
- BindingContext.cs
- SqlDeflator.cs