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
- GroupItem.cs
- DeclarativeExpressionConditionDeclaration.cs
- StorageMappingItemLoader.cs
- ActivityExecutionContextCollection.cs
- WmlSelectionListAdapter.cs
- QilScopedVisitor.cs
- TypeUtils.cs
- DBSqlParserColumn.cs
- CellConstantDomain.cs
- ExpressionNormalizer.cs
- BitmapEffect.cs
- StylusLogic.cs
- ConnectionInterfaceCollection.cs
- BmpBitmapDecoder.cs
- Grant.cs
- CachedPathData.cs
- VariantWrapper.cs
- EntityDataSourceState.cs
- FloaterParagraph.cs
- EventWaitHandleSecurity.cs
- ConvertEvent.cs
- ParserContext.cs
- XmlSchemaSearchPattern.cs
- shaperfactoryquerycacheentry.cs
- DrawingContextDrawingContextWalker.cs
- AppModelKnownContentFactory.cs
- NetworkAddressChange.cs
- X509ImageLogo.cs
- OdbcFactory.cs
- SqlEnums.cs
- ReflectionServiceProvider.cs
- XsltQilFactory.cs
- DrawingServices.cs
- CompensatableSequenceActivity.cs
- DashStyle.cs
- GroupItemAutomationPeer.cs
- ConfigurationErrorsException.cs
- WindowsListViewSubItem.cs
- BitmapEffectDrawingContextWalker.cs
- XmlAnyElementAttribute.cs
- XMLSchema.cs
- OleDbParameter.cs
- StylusPointProperty.cs
- ComNativeDescriptor.cs
- BuildProviderUtils.cs
- RequestResizeEvent.cs
- WebPartTracker.cs
- SoapFormatter.cs
- MatchingStyle.cs
- SHA384.cs
- DataObjectAttribute.cs
- ConstrainedGroup.cs
- ExpressionBuilder.cs
- ProxySimple.cs
- Int32AnimationUsingKeyFrames.cs
- ProxyAttribute.cs
- PagedDataSource.cs
- SamlConditions.cs
- SqlFormatter.cs
- FilterableAttribute.cs
- Grant.cs
- ExpressionBindings.cs
- TreeNodeCollection.cs
- CornerRadiusConverter.cs
- WindowsSlider.cs
- DataControlPagerLinkButton.cs
- ContextMenu.cs
- ClientTargetSection.cs
- SurrogateEncoder.cs
- InkCanvasAutomationPeer.cs
- FixedPosition.cs
- CryptoApi.cs
- MemoryPressure.cs
- HotSpot.cs
- ObjectDataSourceView.cs
- AsyncPostBackErrorEventArgs.cs
- WorkItem.cs
- ImageMap.cs
- SoapDocumentMethodAttribute.cs
- dtdvalidator.cs
- AdornerDecorator.cs
- MetadataItem_Static.cs
- cookiecollection.cs
- XPathAncestorIterator.cs
- XmlFormatWriterGenerator.cs
- ConfigXmlCDataSection.cs
- MailSettingsSection.cs
- TreeViewImageKeyConverter.cs
- UInt64.cs
- XamlHostingConfiguration.cs
- AmbientProperties.cs
- BitVector32.cs
- ArrayList.cs
- validationstate.cs
- Collection.cs
- ControlDesignerState.cs
- ValidatorCompatibilityHelper.cs
- FixedElement.cs
- DataGridViewCellConverter.cs
- LinqDataSourceDisposeEventArgs.cs