//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------ namespace System.ServiceModel.Dispatcher { using System.ServiceModel.Channels; using System.Globalization; using System.Messaging; using System.Xml; class WorkflowOperationFault : MessageFault { const string operationNotAvailable = "OperationNotAvaialable"; const string operationNotImplemented = "OperationNotImplemented"; FaultCode faultCode; FaultReason faultReason; public WorkflowOperationFault(MessageQueueErrorCode errorCode) { if (errorCode == MessageQueueErrorCode.QueueNotAvailable) { faultCode = FaultCode.CreateSenderFaultCode(operationNotAvailable, ContextMessageHeader.ContextHeaderNamespace); faultReason = new FaultReason(new FaultReasonText(SR2.GetString(SR2.OperationNotAvailable), CultureInfo.CurrentCulture)); } else { faultCode = FaultCode.CreateSenderFaultCode(operationNotImplemented, ContextMessageHeader.ContextHeaderNamespace); faultReason = new FaultReason(new FaultReasonText(SR2.GetString(SR2.OperationNotImplemented), CultureInfo.CurrentCulture)); } } public override FaultCode Code { get { return this.faultCode; } } public override bool HasDetail { get { return false; } } public override FaultReason Reason { get { return this.faultReason; } } protected override void OnWriteDetailContents(XmlDictionaryWriter writer) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } } }