docs: @Override
      public void systemSend(SIBusMessage msg,
                             SITransaction tran,
                             SIDestinationAddress destAddress,
                             DestinationType destinationType,
                             OrderingContext context,
                             boolean keepSecurityContext)
  
                      throws SIConnectionUnavailableException, SIConnectionDroppedException,
                      SIResourceException, SIConnectionLostException, SILimitExceededException,
                      SIErrorException,
                      SINotAuthorizedException,
                      SIIncorrectCallException,
                      SINotPossibleInCurrentConfigurationException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "systemSend",
                          new Object[] { msg, tran, destAddress, destinationType, context, Boolean.valueOf(keepSecurityContext) });
  
          if (!destAddress.getDestinationName().startsWith(SIMPConstants.SYSTEM_DESTINATION_PREFIX))
          {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "systemSend", "SIDestinationWrongTypeException");
              throw new SIIncorrectCallException(
                              nls.getFormattedMessage(
                                                      "SYSTEM_DESTINATION_USAGE_ERROR_CWSIP0024",
                                                      new Object[] { destAddress.getDestinationName(),
                                                                    _messageProcessor.getMessagingEngineName() },
                                                      null));
          }
  
          try
          {
              internalSend(msg, tran, destAddress, destinationType, context, null, true);
          } catch (SITemporaryDestinationNotFoundException e)
          {
              // Temporary destination not found should not happen for a System destination
              // FFDC
              FFDCFilter.processException(
                                          e,
                                          "com.ibm.ws.sib.processor.impl.ConnectionImpl.systemSend",
                                          "1:4851:1.347.1.25",
                                          this);
  
              SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0002",
                          new Object[] {
                                        "com.ibm.ws.sib.processor.impl.ConnectionImpl",
                                        "1:4857:1.347.1.25",
                                        e });
  
              SibTr.exception(tc, e);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "systemSend", "SIErrorException");
  
              throw new SIErrorException(nls.getFormattedMessage(
                                                                 "INTERNAL_MESSAGING_ERROR_CWSIP0002",
                                                                 new Object[] { "ConnectionImpl",
                                                                               "1:4868:1.347.1.25",
                                                                               e },
                                                                 null),
                              e);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "systemSend");
      }