private FaultCode CreateFaultCode(RaspFaultCode faultCode, RaspInnerFaultCode innerFaultCode) { switch (faultCode) { case RaspFaultCode.Sender: FaultCode senderInnerFaultCode = CreateSenderFaultCode(innerFaultCode); return(FaultCode.CreateSenderFaultCode(senderInnerFaultCode)); case RaspFaultCode.Reciever: FaultCode recieverInnerFaultCode = CreateRecieverFaultCode(innerFaultCode); return(FaultCode.CreateReceiverFaultCode(recieverInnerFaultCode)); default: throw new RaspMessageFaultUnexpectedFaultCode(faultCode); } }
/// <summary> /// Constructor /// </summary> /// <param name="e">exception</param> /// <param name="faultCode">fault code</param> /// <param name="innerFaultCode">inner fault code</param> public RaspMessageFault(Exception e, RaspFaultCode faultCode, RaspInnerFaultCode innerFaultCode) { StringBuilder reasonMessage = new StringBuilder(); Exception currentException = e; do { reasonMessage.Append(currentException.Message); if (currentException.InnerException != null) { reasonMessage.Append("\n"); } currentException = currentException.InnerException; } while (currentException != null); _reason = new FaultReason(reasonMessage.ToString()); _code = CreateFaultCode(faultCode, innerFaultCode); }
private FaultCode CreateRecieverFaultCode(RaspInnerFaultCode innerFaultCode) { return(new FaultCode(innerFaultCode.ToString())); }