Class RetransmissionQueueImpl

    • Constructor Detail

      • RetransmissionQueueImpl

        public RetransmissionQueueImpl​(RMManager m)
    • Method Detail

      • setManager

        public void setManager​(RMManager m)
      • addUnacknowledged

        public void addUnacknowledged​(org.apache.cxf.message.Message message)
        Description copied from interface: RetransmissionQueue
        Accepts a new message for possible future retransmission. Implementations must call the RMEndpoint.handleAccepted() method for each accepted message.
        Specified by:
        addUnacknowledged in interface RetransmissionQueue
        Parameters:
        message - the message context.
      • countUnacknowledged

        public int countUnacknowledged​(SourceSequence seq)
        Specified by:
        countUnacknowledged in interface RetransmissionQueue
        Parameters:
        seq - the sequence under consideration
        Returns:
        the number of unacknowledged messages for that sequence
      • countUnacknowledged

        public int countUnacknowledged()
        Specified by:
        countUnacknowledged in interface RetransmissionQueue
        Returns:
        the total number of unacknowledged messages in this queue
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface RetransmissionQueue
        Returns:
        true if there are no unacknowledged messages in the queue
      • purgeAcknowledged

        public void purgeAcknowledged​(SourceSequence seq)
        Purge all candidates for the given sequence that have been acknowledged.
        Specified by:
        purgeAcknowledged in interface RetransmissionQueue
        Parameters:
        seq - the sequence object.
      • purgeAll

        public void purgeAll​(SourceSequence seq)
        Purge all candidates for the given sequence. This method is used to terminate the sequence by force and release the resource associated with the sequence.
        Specified by:
        purgeAll in interface RetransmissionQueue
        Parameters:
        seq - the sequence object.
      • getExponentialBackoff

        protected int getExponentialBackoff()
        Returns:
        the exponential backoff
      • createResendCandidate

        protected RetransmissionQueueImpl.ResendCandidate createResendCandidate​(org.apache.cxf.message.Message message)
        Parameters:
        message - the message context
        Returns:
        a ResendCandidate
      • cacheUnacknowledged

        protected RetransmissionQueueImpl.ResendCandidate cacheUnacknowledged​(org.apache.cxf.message.Message message)
        Accepts a new resend candidate.
        Parameters:
        message - the message object.
        Returns:
        ResendCandidate
      • isSequenceSuspended

        protected boolean isSequenceSuspended​(String key)
        Parameters:
        key - the sequence identifier under consideration
        Returns:
        true if the sequence is currently suspended; false otherwise
      • replaceResender

        protected void replaceResender​(RetransmissionQueueImpl.Resender replacement)
        Plug in replacement resend logic (facilitates unit testing).
        Parameters:
        replacement - resend logic
      • getAssertion

        protected org.apache.cxf.ws.policy.builder.jaxb.JaxbAssertion<RMAssertion> getAssertion​(org.apache.cxf.ws.policy.AssertionInfo ai)
      • buildConduit

        protected org.apache.cxf.transport.Conduit buildConduit​(org.apache.cxf.binding.soap.SoapMessage message,
                                                                org.apache.cxf.endpoint.Endpoint endpoint,
                                                                org.apache.cxf.ws.addressing.AttributedURIType to)
        Parameters:
        message -
        endpoint -
        to -
        Returns:
      • buildRetransmitChain

        protected org.apache.cxf.phase.PhaseInterceptorChain buildRetransmitChain​(org.apache.cxf.endpoint.Endpoint endpoint,
                                                                                  org.apache.cxf.phase.PhaseChainCache cache)
        Parameters:
        endpoint -
        cache -
        Returns: