docs: private int checkTargetAbleToAcceptOrExceptionMessage(JsDestinationAddress targetDestinationAddr)
                      throws SITemporaryDestinationNotFoundException, SIResourceException, SINotPossibleInCurrentConfigurationException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "checkTargetAbleToAcceptOrExceptionMessage", targetDestinationAddr);
  
          int blockingReason = DestinationHandler.OUTPUT_HANDLER_NOT_FOUND;
  
          // If the original routingDestination address in the message was blank we simply return
          // 'not found'.
          if (targetDestinationAddr != null)
          {
              // Lookup the routing (target) destination. This may throw a SIMPNotPossibleInCurrentConfigurationException.
              DestinationHandler targetDestination =
                              _messageProcessor.getDestinationManager().getDestination(targetDestinationAddr, false);
              SIBUuid8 targetDestinationMEUuid = targetDestinationAddr.getME();
  
              // Can the routing destination accept a message
              blockingReason = targetDestination.checkCanAcceptMessage(targetDestinationMEUuid, null);
  
              // If the target is full (or put-disabled, etc) then we want to go on & see if we can
              // put to the exception destination of the target destination
              if (blockingReason != DestinationHandler.OUTPUT_HANDLER_FOUND)
              {
                  int linkBlockingReason = checkCanExceptionMessage(targetDestination);
  
                  // If we can exception the message then reset the blockingReason return code
                  if (linkBlockingReason == DestinationHandler.OUTPUT_HANDLER_FOUND)
                      blockingReason = DestinationHandler.OUTPUT_HANDLER_FOUND;
              }
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "checkTargetAbleToAcceptOrExceptionMessage", Integer.valueOf(blockingReason));
  
          return blockingReason;
      }