static TransportException convertFromAmqpException()

in iothub/device/iot-device-client/src/main/java/com/microsoft/azure/sdk/iot/device/transport/amqps/AmqpsExceptionTranslator.java [15:90]


    static TransportException convertFromAmqpException(ErrorCondition error)
    {
        if (error == null)
        {
            TransportException t = new TransportException("An unknown transport exception occurred");
            t.setRetryable(true);
            return t;
        }

        String exceptionCode = error.getCondition() != null ? error.getCondition().toString() : "unknown";
        String description = error.getDescription();

        switch (exceptionCode)
        {
            case AmqpLinkCreationConflict.errorCode:
                return new AmqpLinkCreationConflict(description);
            case AmqpConnectionForcedException.errorCode:
                return new AmqpConnectionForcedException(description);
            case AmqpConnectionRedirectException.errorCode:
                return new AmqpConnectionRedirectException(description);
            case AmqpDecodeErrorException.errorCode:
                return new AmqpDecodeErrorException(description);
            case AmqpLinkDetachForcedException.errorCode:
                return new AmqpLinkDetachForcedException(description);
            case AmqpSessionErrantLinkException.errorCode:
                return new AmqpSessionErrantLinkException(description);
            case AmqpFrameSizeTooSmallException.errorCode:
                return new AmqpFrameSizeTooSmallException(description);
            case AmqpConnectionFramingErrorException.errorCode:
                return new AmqpConnectionFramingErrorException(description);
            case AmqpSessionHandleInUseException.errorCode:
                return new AmqpSessionHandleInUseException(description);
            case AmqpIllegalStateException.errorCode:
                return new AmqpIllegalStateException(description);
            case AmqpInternalErrorException.errorCode:
                return new AmqpInternalErrorException(description);
            case AmqpInvalidFieldException.errorCode:
                return new AmqpInvalidFieldException(description);
            case AmqpLinkRedirectException.errorCode:
                return new AmqpLinkRedirectException(description);
            case AmqpLinkStolenException.errorCode:
                return new AmqpLinkStolenException(description);
            case AmqpLinkMessageSizeExceededException.errorCode:
                return new AmqpLinkMessageSizeExceededException(description);
            case AmqpNotAllowedException.errorCode:
                return new AmqpNotAllowedException(description);
            case AmqpNotFoundException.errorCode:
                return new AmqpNotFoundException(description);
            case AmqpNotImplementedException.errorCode:
                return new AmqpNotImplementedException(description);
            case AmqpPreconditionFailedException.errorCode:
                return new AmqpPreconditionFailedException(description);
            case AmqpResourceDeletedException.errorCode:
                return new AmqpResourceDeletedException(description);
            case AmqpResourceLimitExceededException.errorCode:
                return new AmqpResourceLimitExceededException(description);
            case AmqpResourceLockedException.errorCode:
                return new AmqpResourceLockedException(description);
            case AmqpLinkTransferLimitExceededException.errorCode:
                return new AmqpLinkTransferLimitExceededException(description);
            case AmqpSessionUnattachedHandleException.errorCode:
                return new AmqpSessionUnattachedHandleException(description);
            case AmqpUnauthorizedAccessException.errorCode:
                return new AmqpUnauthorizedAccessException(description);
            case AmqpSessionWindowViolationException.errorCode:
                return new AmqpSessionWindowViolationException(description);
            case AmqpConnectionThrottledException.errorCode:
                return new AmqpConnectionThrottledException(description);
            case ProtonIOException.errorCode:
                return new ProtonIOException(description);
            default:
                TransportException t = new TransportException("An unknown transport exception occurred");
                t.setRetryable(true);
                return t;
        }
    }