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
- CurrentChangedEventManager.cs
- AvTrace.cs
- ControlBuilderAttribute.cs
- Relationship.cs
- Soap.cs
- HashHelper.cs
- XmlSerializationReader.cs
- CodeSnippetCompileUnit.cs
- DispatchChannelSink.cs
- LabelDesigner.cs
- ParserStreamGeometryContext.cs
- Attributes.cs
- SQLInt32.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- MarshalDirectiveException.cs
- SqlBulkCopyColumnMapping.cs
- ClusterSafeNativeMethods.cs
- FormViewDeleteEventArgs.cs
- ProviderMetadata.cs
- Helpers.cs
- UniqueConstraint.cs
- PasswordBox.cs
- CalendarSelectionChangedEventArgs.cs
- ToolStripGrip.cs
- DocumentApplicationJournalEntryEventArgs.cs
- StrokeFIndices.cs
- MethodAccessException.cs
- DPCustomTypeDescriptor.cs
- MailMessageEventArgs.cs
- SystemIPInterfaceStatistics.cs
- BaseValidator.cs
- SecureConversationSecurityTokenParameters.cs
- EntityStoreSchemaGenerator.cs
- InfoCardAsymmetricCrypto.cs
- SwitchCase.cs
- ActiveDocumentEvent.cs
- List.cs
- PrtCap_Reader.cs
- OleDbErrorCollection.cs
- BindingManagerDataErrorEventArgs.cs
- Material.cs
- ToolBarButton.cs
- BuilderElements.cs
- TraceUtils.cs
- LongMinMaxAggregationOperator.cs
- GcHandle.cs
- ImageSource.cs
- InstanceStore.cs
- TextRangeSerialization.cs
- ClientProxyGenerator.cs
- InvalidWMPVersionException.cs
- CorrelationService.cs
- SmiConnection.cs
- EntitySetBase.cs
- ConstNode.cs
- ScalarType.cs
- BatchParser.cs
- HttpContext.cs
- InstanceDescriptor.cs
- ConfigurationManagerHelperFactory.cs
- CharStorage.cs
- OdbcRowUpdatingEvent.cs
- DesignerActionUIService.cs
- PropertyTabChangedEvent.cs
- RegexRunner.cs
- ImageMap.cs
- SymmetricAlgorithm.cs
- DirectoryGroupQuery.cs
- mediapermission.cs
- CommonGetThemePartSize.cs
- OracleSqlParser.cs
- CollectionView.cs
- MatrixAnimationBase.cs
- AnnotationComponentChooser.cs
- RadioButtonList.cs
- CompilationSection.cs
- TableRowCollection.cs
- _HelperAsyncResults.cs
- Exceptions.cs
- InvalidFilterCriteriaException.cs
- Expression.DebuggerProxy.cs
- HashCodeCombiner.cs
- PreservationFileWriter.cs
- Vector3D.cs
- DesignColumnCollection.cs
- EncoderFallback.cs
- DiagnosticsConfiguration.cs
- ToolStripStatusLabel.cs
- DataTableTypeConverter.cs
- FontStretchConverter.cs
- documentsequencetextview.cs
- XXXInfos.cs
- RadioButtonRenderer.cs
- SemanticBasicElement.cs
- SymbolPair.cs
- DefaultAssemblyResolver.cs
- BrowserInteropHelper.cs
- C14NUtil.cs
- OraclePermissionAttribute.cs
- transactioncontext.cs