Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / DurableInstancing / InstanceKeyCollisionException.cs / 1305376 / InstanceKeyCollisionException.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.DurableInstancing { using System.Diagnostics.CodeAnalysis; using System.Runtime.Serialization; using System.Security; using System.Xml.Linq; [Serializable] public class InstanceKeyCollisionException : InstancePersistenceCommandException { const string ConflictingInstanceIdName = "instancePersistenceConflictingInstanceId"; const string InstanceKeyName = "instancePersistenceInstanceKey"; public InstanceKeyCollisionException() : this(SRCore.KeyCollisionDefault, null) { } public InstanceKeyCollisionException(string message) : this(message, null) { } public InstanceKeyCollisionException(string message, Exception innerException) : base(message, innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) : this(commandName, instanceId, instanceKey, conflictingInstanceId, null) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, Exception innerException) : this(commandName, instanceId, instanceKey, conflictingInstanceId, ToMessage(instanceId, instanceKey, conflictingInstanceId), innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, string message, Exception innerException) : base(commandName, instanceId, message, innerException) { ConflictingInstanceId = conflictingInstanceId; InstanceKey = instanceKey; } [SecurityCritical] protected InstanceKeyCollisionException(SerializationInfo info, StreamingContext context) : base(info, context) { ConflictingInstanceId = (Guid) info.GetValue(ConflictingInstanceIdName, typeof(Guid)); Guid guid = (Guid) info.GetValue(InstanceKeyName, typeof(Guid)); InstanceKey = guid == Guid.Empty ? null : new InstanceKey(guid); } public Guid ConflictingInstanceId { get; private set; } public InstanceKey InstanceKey { get; private set; } [Fx.Tag.SecurityNote(Critical = "Overrides critical inherited method")] [SecurityCritical] [SuppressMessage(FxCop.Category.Security, FxCop.Rule.SecureGetObjectDataOverrides, Justification = "Method is SecurityCritical")] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue(ConflictingInstanceIdName, ConflictingInstanceId, typeof(Guid)); info.AddValue(InstanceKeyName, (InstanceKey != null && InstanceKey.IsValid) ? InstanceKey.Value : Guid.Empty, typeof(Guid)); } static string ToMessage(Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) { if (instanceKey != null && instanceKey.IsValid) { if (instanceId != Guid.Empty && conflictingInstanceId != Guid.Empty) { return SRCore.KeyCollisionSpecific(instanceId, instanceKey.Value, conflictingInstanceId); } return SRCore.KeyCollisionSpecificKeyOnly(instanceKey.Value); } return SRCore.KeyCollisionDefault; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.DurableInstancing { using System.Diagnostics.CodeAnalysis; using System.Runtime.Serialization; using System.Security; using System.Xml.Linq; [Serializable] public class InstanceKeyCollisionException : InstancePersistenceCommandException { const string ConflictingInstanceIdName = "instancePersistenceConflictingInstanceId"; const string InstanceKeyName = "instancePersistenceInstanceKey"; public InstanceKeyCollisionException() : this(SRCore.KeyCollisionDefault, null) { } public InstanceKeyCollisionException(string message) : this(message, null) { } public InstanceKeyCollisionException(string message, Exception innerException) : base(message, innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) : this(commandName, instanceId, instanceKey, conflictingInstanceId, null) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, Exception innerException) : this(commandName, instanceId, instanceKey, conflictingInstanceId, ToMessage(instanceId, instanceKey, conflictingInstanceId), innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, string message, Exception innerException) : base(commandName, instanceId, message, innerException) { ConflictingInstanceId = conflictingInstanceId; InstanceKey = instanceKey; } [SecurityCritical] protected InstanceKeyCollisionException(SerializationInfo info, StreamingContext context) : base(info, context) { ConflictingInstanceId = (Guid) info.GetValue(ConflictingInstanceIdName, typeof(Guid)); Guid guid = (Guid) info.GetValue(InstanceKeyName, typeof(Guid)); InstanceKey = guid == Guid.Empty ? null : new InstanceKey(guid); } public Guid ConflictingInstanceId { get; private set; } public InstanceKey InstanceKey { get; private set; } [Fx.Tag.SecurityNote(Critical = "Overrides critical inherited method")] [SecurityCritical] [SuppressMessage(FxCop.Category.Security, FxCop.Rule.SecureGetObjectDataOverrides, Justification = "Method is SecurityCritical")] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue(ConflictingInstanceIdName, ConflictingInstanceId, typeof(Guid)); info.AddValue(InstanceKeyName, (InstanceKey != null && InstanceKey.IsValid) ? InstanceKey.Value : Guid.Empty, typeof(Guid)); } static string ToMessage(Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) { if (instanceKey != null && instanceKey.IsValid) { if (instanceId != Guid.Empty && conflictingInstanceId != Guid.Empty) { return SRCore.KeyCollisionSpecific(instanceId, instanceKey.Value, conflictingInstanceId); } return SRCore.KeyCollisionSpecificKeyOnly(instanceKey.Value); } return SRCore.KeyCollisionDefault; } } } // 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
- DescendantOverDescendantQuery.cs
- RotateTransform.cs
- OdbcUtils.cs
- DataGridViewAdvancedBorderStyle.cs
- EndCreateSecurityTokenRequest.cs
- SafeRightsManagementPubHandle.cs
- StringWriter.cs
- FixUpCollection.cs
- XmlDocument.cs
- WebPartEditorCancelVerb.cs
- AdPostCacheSubstitution.cs
- DataViewManager.cs
- PrtTicket_Base.cs
- StaticContext.cs
- JsonSerializer.cs
- formatter.cs
- OlePropertyStructs.cs
- MemberListBinding.cs
- BrowserCapabilitiesFactoryBase.cs
- GridViewSelectEventArgs.cs
- ContextMenu.cs
- CharAnimationUsingKeyFrames.cs
- GlyphRunDrawing.cs
- ContentDesigner.cs
- SourceFileBuildProvider.cs
- ActivityExecutorOperation.cs
- UserPreferenceChangingEventArgs.cs
- NativeRecognizer.cs
- AnonymousIdentificationModule.cs
- TextTreeRootNode.cs
- HealthMonitoringSection.cs
- SqlXmlStorage.cs
- Evidence.cs
- XmlSchemaSimpleContent.cs
- SettingsAttributes.cs
- TagPrefixAttribute.cs
- TypeDescriptionProviderAttribute.cs
- DataBoundControl.cs
- ProfileSettingsCollection.cs
- AttributeEmitter.cs
- ModelService.cs
- ClientRuntimeConfig.cs
- ContractAdapter.cs
- SelectionPattern.cs
- PathFigureCollectionConverter.cs
- VirtualizedItemPattern.cs
- LinqDataSourceContextData.cs
- MessageQueue.cs
- PlanCompilerUtil.cs
- IntegerValidatorAttribute.cs
- DateTimeStorage.cs
- AlgoModule.cs
- CodeBlockBuilder.cs
- SymmetricAlgorithm.cs
- WindowsToolbarItemAsMenuItem.cs
- SubMenuStyleCollection.cs
- RoutedEventHandlerInfo.cs
- LocatorBase.cs
- ToolTipAutomationPeer.cs
- OleDbCommand.cs
- CodeComment.cs
- AutoFocusStyle.xaml.cs
- SeekStoryboard.cs
- TrustManager.cs
- SizeIndependentAnimationStorage.cs
- TypeBrowser.xaml.cs
- TreeNodeCollection.cs
- ValueChangedEventManager.cs
- objectresult_tresulttype.cs
- SqlDataSourceTableQuery.cs
- CryptoStream.cs
- WinEventWrap.cs
- EntityCommandCompilationException.cs
- BaseCodePageEncoding.cs
- MarshalDirectiveException.cs
- CodeGenerator.cs
- InvalidEnumArgumentException.cs
- _NtlmClient.cs
- RelationshipEndMember.cs
- TdsParserStaticMethods.cs
- RawStylusInput.cs
- AutomationPatternInfo.cs
- ClientData.cs
- FactoryGenerator.cs
- EditingCoordinator.cs
- DeflateEmulationStream.cs
- SoapReflectionImporter.cs
- TableRow.cs
- TablePatternIdentifiers.cs
- DesignRelation.cs
- Comparer.cs
- SchemaTypeEmitter.cs
- TraceHandler.cs
- UpnEndpointIdentity.cs
- ExternalException.cs
- Rect3D.cs
- _IPv4Address.cs
- ByteRangeDownloader.cs
- SqlParameterizer.cs
- PagerSettings.cs