Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / DurableInstancing / InstancePersistenceEvent.cs / 1305376 / InstancePersistenceEvent.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Runtime.DurableInstancing { using System.Threading; using System.Xml.Linq; public abstract class InstancePersistenceEvent : IEquatable{ internal InstancePersistenceEvent(XName name) { if (name == null) { throw Fx.Exception.ArgumentNull("name"); } Name = name; } public XName Name { get; private set; } public bool Equals(InstancePersistenceEvent persistenceEvent) { return !object.ReferenceEquals(persistenceEvent, null) && persistenceEvent.Name == Name; } public override bool Equals(object obj) { return Equals(obj as InstancePersistenceEvent); } public override int GetHashCode() { return Name.GetHashCode(); } public static bool operator ==(InstancePersistenceEvent left, InstancePersistenceEvent right) { if (object.ReferenceEquals(left, right)) { return true; } else if (object.ReferenceEquals(left, null)) { return false; } else { return left.Equals(right); } } public static bool operator !=(InstancePersistenceEvent left, InstancePersistenceEvent right) { return !(left == right); } } public abstract class InstancePersistenceEvent : InstancePersistenceEvent where T : InstancePersistenceEvent , new() { static T instance; protected InstancePersistenceEvent(XName name) : base(name) { } public static T Value { get { if (instance == null) { Interlocked.CompareExchange (ref instance, new T(), null); } return instance; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Runtime.DurableInstancing { using System.Threading; using System.Xml.Linq; public abstract class InstancePersistenceEvent : IEquatable { internal InstancePersistenceEvent(XName name) { if (name == null) { throw Fx.Exception.ArgumentNull("name"); } Name = name; } public XName Name { get; private set; } public bool Equals(InstancePersistenceEvent persistenceEvent) { return !object.ReferenceEquals(persistenceEvent, null) && persistenceEvent.Name == Name; } public override bool Equals(object obj) { return Equals(obj as InstancePersistenceEvent); } public override int GetHashCode() { return Name.GetHashCode(); } public static bool operator ==(InstancePersistenceEvent left, InstancePersistenceEvent right) { if (object.ReferenceEquals(left, right)) { return true; } else if (object.ReferenceEquals(left, null)) { return false; } else { return left.Equals(right); } } public static bool operator !=(InstancePersistenceEvent left, InstancePersistenceEvent right) { return !(left == right); } } public abstract class InstancePersistenceEvent : InstancePersistenceEvent where T : InstancePersistenceEvent , new() { static T instance; protected InstancePersistenceEvent(XName name) : base(name) { } public static T Value { get { if (instance == null) { Interlocked.CompareExchange (ref instance, new T(), null); } return instance; } } } } // 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
- SystemIPInterfaceProperties.cs
- DataGrid.cs
- Effect.cs
- SecurityException.cs
- RequestCachePolicy.cs
- SrgsDocument.cs
- HtmlTextBoxAdapter.cs
- FileSystemInfo.cs
- DataViewManagerListItemTypeDescriptor.cs
- CompositionTarget.cs
- DockProviderWrapper.cs
- Membership.cs
- datacache.cs
- SecureConversationSecurityTokenParameters.cs
- XamlTreeBuilder.cs
- HttpFileCollection.cs
- XmlEncodedRawTextWriter.cs
- InstallerTypeAttribute.cs
- ConfigurationCollectionAttribute.cs
- AutomationAttributeInfo.cs
- UnaryNode.cs
- Misc.cs
- PeerEndPoint.cs
- UrlMappingsSection.cs
- FileEnumerator.cs
- FieldToken.cs
- PersonalizationDictionary.cs
- WebControlParameterProxy.cs
- _HeaderInfo.cs
- GeometryConverter.cs
- CustomCategoryAttribute.cs
- SecurityHelper.cs
- XPathNavigator.cs
- XmlAttributeProperties.cs
- SwitchLevelAttribute.cs
- DynamicActivityProperty.cs
- Label.cs
- ExpressionBinding.cs
- SHA384.cs
- GeneralTransform3DCollection.cs
- ParameterCollection.cs
- PointCollectionConverter.cs
- StateItem.cs
- StateWorkerRequest.cs
- IssuedTokenClientBehaviorsElement.cs
- DataGridColumn.cs
- IPPacketInformation.cs
- ConversionValidationRule.cs
- XmlSecureResolver.cs
- Form.cs
- HttpHandlerAction.cs
- SystemColorTracker.cs
- ADConnectionHelper.cs
- ToolboxComponentsCreatedEventArgs.cs
- TemplateControlBuildProvider.cs
- QilGeneratorEnv.cs
- ScaleTransform.cs
- Utils.cs
- Trigger.cs
- TextTrailingWordEllipsis.cs
- ObjectView.cs
- RsaSecurityTokenAuthenticator.cs
- glyphs.cs
- Identity.cs
- LambdaCompiler.ControlFlow.cs
- XamlHostingSectionGroup.cs
- PrincipalPermission.cs
- SecurityProtocolCorrelationState.cs
- TypeConverter.cs
- GuidTagList.cs
- Interop.cs
- SqlCacheDependency.cs
- XmlSchemaObjectTable.cs
- x509store.cs
- WindowsGraphics2.cs
- WinFormsSpinner.cs
- RegexWorker.cs
- NodeFunctions.cs
- TimersDescriptionAttribute.cs
- PersonalizationState.cs
- DataReceivedEventArgs.cs
- ProxySimple.cs
- ActiveXHost.cs
- ResumeStoryboard.cs
- DelegatingConfigHost.cs
- ContainerUIElement3D.cs
- AutoGeneratedFieldProperties.cs
- Visual3D.cs
- FrameworkEventSource.cs
- AttributeParameterInfo.cs
- TlsnegoTokenProvider.cs
- BinaryReader.cs
- UpDownEvent.cs
- entityreference_tresulttype.cs
- ColorAnimationBase.cs
- MenuAdapter.cs
- BamlLocalizableResource.cs
- PropertyDescriptorCollection.cs
- TextureBrush.cs
- TextBox.cs