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
- CommentAction.cs
- GroupBoxRenderer.cs
- HMACSHA384.cs
- SystemInfo.cs
- DrawingState.cs
- EncryptedKey.cs
- MyContact.cs
- CachedFontFace.cs
- EventLogEntry.cs
- WmlValidatorAdapter.cs
- WSSecurityTokenSerializer.cs
- ErrorHandlingReceiver.cs
- CompositeFontFamily.cs
- ProxyManager.cs
- EntityConnectionStringBuilder.cs
- Variable.cs
- XmlText.cs
- EntityStoreSchemaFilterEntry.cs
- TabRenderer.cs
- ObjectAnimationUsingKeyFrames.cs
- BitmapEffectvisualstate.cs
- RandomNumberGenerator.cs
- CallbackWrapper.cs
- DrawToolTipEventArgs.cs
- propertytag.cs
- PrinterResolution.cs
- QuaternionAnimation.cs
- Label.cs
- ExpressionVisitorHelpers.cs
- ComponentDispatcher.cs
- RuleSettingsCollection.cs
- x509store.cs
- IntersectQueryOperator.cs
- RequestQueryProcessor.cs
- IssuanceLicense.cs
- XXXInfos.cs
- CqlIdentifiers.cs
- CodeSnippetTypeMember.cs
- OpCodes.cs
- BaseTemplateParser.cs
- WebServicesInteroperability.cs
- RemotingConfigParser.cs
- CombinedGeometry.cs
- FormViewDeleteEventArgs.cs
- TrackingProfile.cs
- MessageSmuggler.cs
- ConsoleTraceListener.cs
- _ScatterGatherBuffers.cs
- HttpModuleActionCollection.cs
- StateWorkerRequest.cs
- WebPartEditorApplyVerb.cs
- SqlUDTStorage.cs
- TrackPointCollection.cs
- StoreContentChangedEventArgs.cs
- InsufficientMemoryException.cs
- DefinitionUpdate.cs
- SqlNamer.cs
- TargetException.cs
- ImplicitInputBrush.cs
- RSAProtectedConfigurationProvider.cs
- DependencyPropertyKey.cs
- LocationUpdates.cs
- SslStreamSecurityBindingElement.cs
- Debug.cs
- UnsafeNativeMethods.cs
- VScrollProperties.cs
- XMLSyntaxException.cs
- Action.cs
- InstanceHandleReference.cs
- ContainerVisual.cs
- HtmlGenericControl.cs
- PathFigure.cs
- CardSpaceException.cs
- HttpModulesSection.cs
- PartDesigner.cs
- AlphaSortedEnumConverter.cs
- ObjectReaderCompiler.cs
- Byte.cs
- ArrayConverter.cs
- CommonObjectSecurity.cs
- HiddenField.cs
- ConfigPathUtility.cs
- CompilerScopeManager.cs
- ListParaClient.cs
- InfoCardTraceRecord.cs
- DocumentSequenceHighlightLayer.cs
- CommonDialog.cs
- COM2ColorConverter.cs
- FolderBrowserDialog.cs
- OleDbErrorCollection.cs
- PartitionResolver.cs
- LinkButton.cs
- DesignerRegionMouseEventArgs.cs
- SqlAggregateChecker.cs
- UserUseLicenseDictionaryLoader.cs
- VisualTreeHelper.cs
- TextEditorDragDrop.cs
- ComponentRenameEvent.cs
- ProcessHostServerConfig.cs
- ProcessModelInfo.cs