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
- SemanticAnalyzer.cs
- AddInDeploymentState.cs
- RpcResponse.cs
- QueryRewriter.cs
- StructuredTypeEmitter.cs
- TraceListeners.cs
- HttpServerVarsCollection.cs
- ReceiveParametersContent.cs
- SafeNativeMethods.cs
- PageCatalogPart.cs
- UntrustedRecipientException.cs
- AnimationLayer.cs
- InvalidFilterCriteriaException.cs
- CreateRefExpr.cs
- FilterQuery.cs
- ValueUtilsSmi.cs
- StyleTypedPropertyAttribute.cs
- ModelServiceImpl.cs
- DefinitionBase.cs
- GridViewCancelEditEventArgs.cs
- Overlapped.cs
- XmlDictionary.cs
- Span.cs
- CheckBoxStandardAdapter.cs
- HttpProfileBase.cs
- AnnotationComponentChooser.cs
- XhtmlBasicPanelAdapter.cs
- RewritingValidator.cs
- ConfigurationConverterBase.cs
- CustomWebEventKey.cs
- XamlPathDataSerializer.cs
- RowType.cs
- _CommandStream.cs
- BamlLocalizableResourceKey.cs
- ReadOnlyNameValueCollection.cs
- ExtensibleClassFactory.cs
- infer.cs
- DiagnosticTraceSource.cs
- EntityViewGenerator.cs
- TextPatternIdentifiers.cs
- FamilyMapCollection.cs
- ToolStripDropDownMenu.cs
- xmlsaver.cs
- EndGetFileNameFromUserRequest.cs
- DeviceSpecificDialogCachedState.cs
- WhitespaceSignificantCollectionAttribute.cs
- EventLogPermissionAttribute.cs
- XmlBinaryWriterSession.cs
- ConfigXmlSignificantWhitespace.cs
- ServiceDeploymentInfo.cs
- WebPartUserCapability.cs
- PeerToPeerException.cs
- XmlAnyElementAttribute.cs
- GridItemCollection.cs
- GAC.cs
- DataBinding.cs
- DataGridViewIntLinkedList.cs
- ListenerElementsCollection.cs
- ContainerParaClient.cs
- SecurityUtils.cs
- ColumnReorderedEventArgs.cs
- CustomTypeDescriptor.cs
- UnaryExpression.cs
- ServiceContractViewControl.Designer.cs
- LZCodec.cs
- MediaScriptCommandRoutedEventArgs.cs
- SynchronizedDispatch.cs
- LOSFormatter.cs
- RuleSettingsCollection.cs
- SID.cs
- SerializationTrace.cs
- dataSvcMapFileLoader.cs
- PageParser.cs
- HttpException.cs
- _ConnectionGroup.cs
- DelegateSerializationHolder.cs
- Process.cs
- TypeElement.cs
- SharedStream.cs
- TextServicesPropertyRanges.cs
- RightsManagementEncryptionTransform.cs
- StrongNamePublicKeyBlob.cs
- MaskedTextBox.cs
- ProgressBar.cs
- AccessText.cs
- SqlConnectionStringBuilder.cs
- AttributeSetAction.cs
- CalendarDay.cs
- CommandLibraryHelper.cs
- ToolStripButton.cs
- ParameterRetriever.cs
- peersecuritysettings.cs
- HtmlTernaryTree.cs
- XmlSchemaComplexContentRestriction.cs
- SmtpLoginAuthenticationModule.cs
- PnrpPermission.cs
- FullTextBreakpoint.cs
- CacheForPrimitiveTypes.cs
- DataMemberConverter.cs
- IgnoreFileBuildProvider.cs