Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / HybridObjectCache.cs / 1305376 / HybridObjectCache.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Xml; using System.Collections.Generic; internal class HybridObjectCache { DictionaryobjectDictionary; Dictionary referencedObjectDictionary; internal HybridObjectCache() { } internal void Add(string id, object obj) { if (objectDictionary == null) objectDictionary = new Dictionary (); object existingObject; if (objectDictionary.TryGetValue(id, out existingObject)) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.MultipleIdDefinition, id))); objectDictionary.Add(id, obj); } internal void Remove(string id) { if (objectDictionary != null) objectDictionary.Remove(id); } internal object GetObject(string id) { if (referencedObjectDictionary == null) { referencedObjectDictionary = new Dictionary (); referencedObjectDictionary.Add(id, null); } else if (!referencedObjectDictionary.ContainsKey(id)) { referencedObjectDictionary.Add(id, null); } if (objectDictionary != null) { object obj; objectDictionary.TryGetValue(id, out obj); return obj; } return null; } internal bool IsObjectReferenced(string id) { if (referencedObjectDictionary != null) { return referencedObjectDictionary.ContainsKey(id); } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RIPEMD160.cs
- RegexTree.cs
- Utils.cs
- XmlSchemaResource.cs
- PreviewKeyDownEventArgs.cs
- InstanceDescriptor.cs
- WebPartHeaderCloseVerb.cs
- ManualResetEvent.cs
- SoapInteropTypes.cs
- UseManagedPresentationBindingElement.cs
- HttpRequestCacheValidator.cs
- CompositeDesignerAccessibleObject.cs
- Axis.cs
- DCSafeHandle.cs
- PerformanceCounterPermissionEntryCollection.cs
- AtomServiceDocumentSerializer.cs
- BasicHttpMessageCredentialType.cs
- PointCollection.cs
- EntityDataSourceMemberPath.cs
- HttpWebRequest.cs
- SmtpException.cs
- WMIGenerator.cs
- Matrix3DValueSerializer.cs
- ControlEvent.cs
- Stack.cs
- AttributeCollection.cs
- Timeline.cs
- InfoCardSymmetricCrypto.cs
- Process.cs
- COM2ExtendedUITypeEditor.cs
- XmlSchemaAttribute.cs
- WmpBitmapEncoder.cs
- KeyMatchBuilder.cs
- controlskin.cs
- LongValidatorAttribute.cs
- sqlser.cs
- View.cs
- TrustLevel.cs
- StateFinalizationDesigner.cs
- SqlRetyper.cs
- NullableLongAverageAggregationOperator.cs
- CheckBoxAutomationPeer.cs
- CommonGetThemePartSize.cs
- EnumMemberAttribute.cs
- ToolStripItemImageRenderEventArgs.cs
- Calendar.cs
- ResXResourceReader.cs
- FunctionDefinition.cs
- WebPartRestoreVerb.cs
- SmiConnection.cs
- IpcChannelHelper.cs
- DynamicActivityTypeDescriptor.cs
- ObjectConverter.cs
- StylusButtonEventArgs.cs
- TypeResolver.cs
- XmlEventCache.cs
- XmlSchemaValidator.cs
- EntityDesignPluralizationHandler.cs
- PenThread.cs
- SqlNodeTypeOperators.cs
- EntityDataSourceDataSelectionPanel.designer.cs
- OdbcPermission.cs
- XmlSignificantWhitespace.cs
- CultureTableRecord.cs
- NestedContainer.cs
- AppDomainAttributes.cs
- Scene3D.cs
- InvalidWMPVersionException.cs
- ServiceMemoryGates.cs
- UnlockInstanceCommand.cs
- DependencyPropertyKind.cs
- QueryFunctions.cs
- RichTextBoxConstants.cs
- WebPartCancelEventArgs.cs
- BrowserCapabilitiesFactory.cs
- FileStream.cs
- ISAPIApplicationHost.cs
- MouseEventArgs.cs
- WebPartConnection.cs
- ListControl.cs
- AuthorizationRuleCollection.cs
- WinEventTracker.cs
- ItemChangedEventArgs.cs
- TrustLevel.cs
- InsufficientMemoryException.cs
- TypeExtensionSerializer.cs
- MailWriter.cs
- ResXDataNode.cs
- DirectoryObjectSecurity.cs
- SqlClientFactory.cs
- RecordManager.cs
- LayoutEngine.cs
- OleDbErrorCollection.cs
- OracleEncoding.cs
- MenuItemCollectionEditor.cs
- RootBrowserWindowAutomationPeer.cs
- OperationCanceledException.cs
- Shape.cs
- FileDialogCustomPlacesCollection.cs
- FixedSOMTableCell.cs