Class ThrottlingInflightRoutePolicy

    • Constructor Detail

      • ThrottlingInflightRoutePolicy

        public ThrottlingInflightRoutePolicy()
    • Method Detail

      • getCamelContext

        public org.apache.camel.CamelContext getCamelContext()
        Specified by:
        getCamelContext in interface org.apache.camel.CamelContextAware
      • setCamelContext

        public void setCamelContext​(org.apache.camel.CamelContext camelContext)
        Specified by:
        setCamelContext in interface org.apache.camel.CamelContextAware
      • onInit

        public void onInit​(org.apache.camel.Route route)
        Specified by:
        onInit in interface org.apache.camel.spi.RoutePolicy
        Overrides:
        onInit in class RoutePolicySupport
      • onExchangeDone

        public void onExchangeDone​(org.apache.camel.Route route,
                                   org.apache.camel.Exchange exchange)
        Specified by:
        onExchangeDone in interface org.apache.camel.spi.RoutePolicy
        Overrides:
        onExchangeDone in class RoutePolicySupport
      • throttle

        protected void throttle​(org.apache.camel.Route route,
                                org.apache.camel.Exchange exchange)
        Throttles the route when Exchanges is done.
        Parameters:
        route - the route
        exchange - the exchange
      • getMaxInflightExchanges

        public int getMaxInflightExchanges()
      • setMaxInflightExchanges

        public void setMaxInflightExchanges​(int maxInflightExchanges)
        Sets the upper limit of number of concurrent inflight exchanges at which point reached the throttler should suspend the route.

        Is default 1000.

        Parameters:
        maxInflightExchanges - the upper limit of concurrent inflight exchanges
      • getResumePercentOfMax

        public int getResumePercentOfMax()
      • setResumePercentOfMax

        public void setResumePercentOfMax​(int resumePercentOfMax)
        Sets at which percentage of the max the throttler should start resuming the route.

        Will by default use 70%.

        Parameters:
        resumePercentOfMax - the percentage must be between 0 and 100
      • getLoggingLevel

        public org.apache.camel.LoggingLevel getLoggingLevel()
      • getLogger

        public org.apache.camel.spi.CamelLogger getLogger()
      • setLogger

        public void setLogger​(org.apache.camel.spi.CamelLogger logger)
        Sets the logger to use for logging throttling activity.
        Parameters:
        logger - the logger
      • setLoggingLevel

        public void setLoggingLevel​(org.apache.camel.LoggingLevel loggingLevel)
        Sets the logging level to report the throttling activity.

        Is default INFO level.

        Parameters:
        loggingLevel - the logging level
      • createLogger

        protected org.apache.camel.spi.CamelLogger createLogger()