code: private ConsumerSession internalCreateConsumerSession(
                                                            SIDestinationAddress destAddr,
                                                            String alternateUser,
                                                            DestinationType destinationType,
                                                            SelectionCriteria criteria,
                                                            Reliability reliability,
                                                            boolean enableReadAhead,
                                                            boolean nolocal,
                                                            boolean forwardScanning,
                                                            boolean system,
                                                            Reliability unrecoverableReliability,
                                                            boolean bifurcatable,
                                                            boolean mqinterop,
                                                            boolean ignoreInitialIndoubts,
                                                            boolean gatherMessages)
                      throws SIConnectionUnavailableException, SIConnectionDroppedException,
                      SIResourceException, SIConnectionLostException, SILimitExceededException,
                      SIErrorException,
                      SINotAuthorizedException,
                      SIIncorrectCallException,
                      SIDestinationLockedException,
                      SINotPossibleInCurrentConfigurationException, SITemporaryDestinationNotFoundException
      {
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(
                          tc,
                          "internalCreateConsumerSession",
                          new Object[] {
                                        destAddr,
                                        alternateUser,
                                        destinationType,
                                        criteria,
                                        reliability,
                                        Boolean.valueOf(enableReadAhead),
                                        Boolean.valueOf(nolocal),
                                        Boolean.valueOf(forwardScanning),
                                        Boolean.valueOf(system),
                                        unrecoverableReliability,
                                        Boolean.valueOf(bifurcatable),
                                        Boolean.valueOf(mqinterop),
                                        Boolean.valueOf(ignoreInitialIndoubts),
                                        Boolean.valueOf(gatherMessages) });
  
          try {
              return internalCreateConsumerSession(null,
                                                   destAddr,
                                                   alternateUser,
                                                   destinationType,
                                                   criteria,
                                                   reliability,
                                                   enableReadAhead,
                                                   nolocal,
                                                   forwardScanning,
                                                   system,
                                                   unrecoverableReliability,
                                                   bifurcatable,
                                                   mqinterop,
                                                   ignoreInitialIndoubts,
                                                   gatherMessages);
  
          } finally {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(this, tc, "internalCreateConsumerSession");
          }
      }
docs: Internal method for creating the consumer.
  
  @param destAddr
  @param alternateUser
  @param destinationType
  @param discriminator
  @param selector
  @param reliability
  @param enableReadAhead
  @param nolocal
  @param forwardScanning
  @param system
  @param unrecoverableReliability
  @param bifurcatable
  @param mqinterop
  @return