@Override
    public ConsumerSession createConsumerSessionForDurableSubscription(
                                                                       final String subscriptionName,
                                                                       final String durableSubscriptionHome,
                                                                       final SIDestinationAddress destinationAddress,
                                                                       final SelectionCriteria criteria,
                                                                       final boolean supportsMultipleConsumers, final boolean nolocal,
                                                                       final Reliability reliability, final boolean enableReadAhead,
                                                                       final Reliability unrecoverableReliability,
                                                                       final boolean bifurcatable, final String alternateUser)
                    throws SIConnectionDroppedException,
                    SIConnectionUnavailableException, SIConnectionLostException,
                    SILimitExceededException, SINotAuthorizedException,
                    SIDurableSubscriptionNotFoundException,
                    SIDurableSubscriptionMismatchException,
                    SIDestinationLockedException, SIResourceException,
                    SIErrorException, SIIncorrectCallException {

        checkValid();

        final ConsumerSession consumerSession = _delegateConnection
                        .createConsumerSessionForDurableSubscription(subscriptionName,
                                                                     durableSubscriptionHome, destinationAddress, criteria,
                                                                     supportsMultipleConsumers, nolocal, reliability,
                                                                     enableReadAhead, unrecoverableReliability,
                                                                     bifurcatable, alternateUser);

        return new SibRaConsumerSession(this, consumerSession);
    }
@ Override public ConsumerSession createConsumerSessionForDurableSubscription ( final String subscriptionName , final String durableSubscriptionHome , final SIDestinationAddress destinationAddress , final SelectionCriteria criteria , final boolean supportsMultipleConsumers , final boolean nolocal , final Reliability reliability , final boolean enableReadAhead , final Reliability unrecoverableReliability , final boolean bifurcatable , final String alternateUser ) throws SIConnectionDroppedException , SIConnectionUnavailableException , SIConnectionLostException , SILimitExceededException , SINotAuthorizedException , SIDurableSubscriptionNotFoundException , SIDurableSubscriptionMismatchException , SIDestinationLockedException , SIResourceException , SIErrorException , SIIncorrectCallException { checkValid ( ) ; final ConsumerSession consumerSession = _delegateConnection . createConsumerSessionForDurableSubscription ( subscriptionName , durableSubscriptionHome , destinationAddress , criteria , supportsMultipleConsumers , nolocal , reliability , enableReadAhead , unrecoverableReliability , bifurcatable , alternateUser ) ; return new SibRaConsumerSession ( this , consumerSession ) ; }
Creates a consumer session for a durable subscription. Checks that the
connection is valid and then delegates. Wraps the
<code>ConsumerSession</code> returned from the delegate in a
<code>SibRaConsumerSession</code>.

@param subscriptionName
the name for the subscription
@param durableSubscriptionHome
the home for the durable subscription
@param destinationAddress
the address of the destination
@param criteria
the selection criteria
@param reliability
the reliability
@param enableReadAhead
flag indicating whether read ahead is enabled
@param supportsMultipleConsumers
flag indicating whether multiple consumers are supported
@param nolocal
flag indicating whether local messages should be received
@param unrecoverableReliability
the unrecoverable reliability
@param bifurcatable
whether the new ConsumerSession may be bifurcated
@param alternateUser
the name of the user under whose authority operations of the
ConsumerSession should be performed (may be null)
@return the consumer session representing the durable subscription
@throws SIIncorrectCallException
if the delegation fails
@throws SIErrorException
if the delegation fails
@throws SIResourceException
if the delegation fails
@throws SIDestinationLockedException
if the delegation fails
@throws SIDurableSubscriptionMismatchException
if the delegation fails
@throws SIDurableSubscriptionNotFoundException
if the delegation fails
@throws SINotAuthorizedException
if the delegation fails
@throws SILimitExceededException
if the delegation fails
@throws SIConnectionLostException
if the delegation fails
@throws SIConnectionUnavailableException
if the connection is not valid
@throws SIConnectionDroppedException
if the delegation fails