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
- ReadOnlyObservableCollection.cs
- HttpCachePolicyWrapper.cs
- HttpCapabilitiesEvaluator.cs
- ExtensionDataObject.cs
- SoapIgnoreAttribute.cs
- GeneratedCodeAttribute.cs
- PrivateFontCollection.cs
- TextBox.cs
- RolePrincipal.cs
- SqlDataSourceFilteringEventArgs.cs
- Light.cs
- ResourceDefaultValueAttribute.cs
- TriggerBase.cs
- ArgumentOutOfRangeException.cs
- QilStrConcat.cs
- Page.cs
- SqlExpander.cs
- AttachmentCollection.cs
- BuilderPropertyEntry.cs
- AutoResizedEvent.cs
- SmtpSection.cs
- VectorCollectionConverter.cs
- EdmType.cs
- NamedPipeTransportSecurity.cs
- SecurityKeyIdentifierClause.cs
- FullTrustAssembliesSection.cs
- FixedTextContainer.cs
- ValidationHelper.cs
- HashHelper.cs
- Point.cs
- DataGrid.cs
- Axis.cs
- XmlRootAttribute.cs
- ToolStripStatusLabel.cs
- TransmissionStrategy.cs
- DeobfuscatingStream.cs
- SqlUtils.cs
- XmlMembersMapping.cs
- SelectionManager.cs
- AssemblyHash.cs
- TextModifier.cs
- Empty.cs
- DbException.cs
- WebPartConnectionsCloseVerb.cs
- SQLInt16.cs
- ListViewSortEventArgs.cs
- TcpDuplicateContext.cs
- SeekableReadStream.cs
- BinHexEncoder.cs
- MultiTrigger.cs
- DiscoveryMessageSequence.cs
- WorkflowOwnerAsyncResult.cs
- SocketStream.cs
- HttpVersion.cs
- DataControlField.cs
- assemblycache.cs
- CapiSymmetricAlgorithm.cs
- OletxDependentTransaction.cs
- Claim.cs
- InputEventArgs.cs
- SafeProcessHandle.cs
- __Filters.cs
- ConvertersCollection.cs
- LinqDataSourceDeleteEventArgs.cs
- RoleManagerModule.cs
- ListSortDescription.cs
- _OSSOCK.cs
- SqlStream.cs
- CompilationPass2TaskInternal.cs
- TextProperties.cs
- Renderer.cs
- ModelPropertyImpl.cs
- ObjectSecurity.cs
- ReflectionUtil.cs
- ErrorInfoXmlDocument.cs
- NamedPipeProcessProtocolHandler.cs
- ZipIOLocalFileDataDescriptor.cs
- SecurityUniqueId.cs
- Stack.cs
- StringValueSerializer.cs
- LogicalExpr.cs
- XmlSchemaValidationException.cs
- InvalidOleVariantTypeException.cs
- NotifyIcon.cs
- ClonableStack.cs
- TypeConstant.cs
- PathGradientBrush.cs
- AppDomainFactory.cs
- IteratorFilter.cs
- Number.cs
- CompositeDispatchFormatter.cs
- NonClientArea.cs
- LineInfo.cs
- GPPOINTF.cs
- AdornedElementPlaceholder.cs
- TargetControlTypeAttribute.cs
- TextDecorationLocationValidation.cs
- GenericIdentity.cs
- ReflectionTypeLoadException.cs
- HtmlMeta.cs