org.springframework.http.client.reactive

Class JettyResourceFactory

  • java.lang.Object
    • org.springframework.http.client.reactive.JettyResourceFactory
  • All Implemented Interfaces:
    DisposableBean, InitializingBean


    public class JettyResourceFactory
    extends java.lang.Object
    implements InitializingBean, DisposableBean
    Factory to manage Jetty resources, i.e. Executor, ByteBufferPool and Scheduler, within the lifecycle of a Spring ApplicationContext.

    This factory implements InitializingBean and DisposableBean and is expected typically to be declared as a Spring-managed bean.

    Since:
    5.1
    Author:
    Sebastien Deleuze
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      void afterPropertiesSet()
      Invoked by the containing BeanFactory after it has set all bean properties and satisfied BeanFactoryAware, ApplicationContextAware etc.
      void destroy()
      Invoked by the containing BeanFactory on destruction of a bean.
      org.eclipse.jetty.io.ByteBufferPool getByteBufferPool()
      Return the configured ByteBufferPool.
      java.util.concurrent.Executor getExecutor()
      Return the configured Executor.
      org.eclipse.jetty.util.thread.Scheduler getScheduler()
      Return the configured Scheduler.
      void setByteBufferPool(org.eclipse.jetty.io.ByteBufferPool byteBufferPool)
      Configure the ByteBufferPool to use.
      void setExecutor(java.util.concurrent.Executor executor)
      Configure the Executor to use.
      void setScheduler(org.eclipse.jetty.util.thread.Scheduler scheduler)
      Configure the Scheduler to use.
      void setThreadPrefix(java.lang.String threadPrefix)
      Configure the thread prefix to initialize QueuedThreadPool executor with.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • JettyResourceFactory

        public JettyResourceFactory()
    • Method Detail

      • setExecutor

        public void setExecutor(@Nullable
                                java.util.concurrent.Executor executor)
        Configure the Executor to use.

        By default, initialized with a QueuedThreadPool.

        Parameters:
        executor - the executor to use
      • setByteBufferPool

        public void setByteBufferPool(@Nullable
                                      org.eclipse.jetty.io.ByteBufferPool byteBufferPool)
        Configure the ByteBufferPool to use.

        By default, initialized with a MappedByteBufferPool.

        Parameters:
        byteBufferPool - the ByteBuffer pool to use
      • setScheduler

        public void setScheduler(@Nullable
                                 org.eclipse.jetty.util.thread.Scheduler scheduler)
        Configure the Scheduler to use.

        By default, initialized with a ScheduledExecutorScheduler.

        Parameters:
        scheduler - the Scheduler to use
      • setThreadPrefix

        public void setThreadPrefix(java.lang.String threadPrefix)
        Configure the thread prefix to initialize QueuedThreadPool executor with. This is used only when a Executor instance isn't provided.

        By default set to "jetty-http".

        Parameters:
        threadPrefix - the thread prefix to use
      • getExecutor

        @Nullable
        public java.util.concurrent.Executor getExecutor()
        Return the configured Executor.
      • getByteBufferPool

        @Nullable
        public org.eclipse.jetty.io.ByteBufferPool getByteBufferPool()
        Return the configured ByteBufferPool.
      • getScheduler

        @Nullable
        public org.eclipse.jetty.util.thread.Scheduler getScheduler()
        Return the configured Scheduler.
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws java.lang.Exception
        Description copied from interface: InitializingBean
        Invoked by the containing BeanFactory after it has set all bean properties and satisfied BeanFactoryAware, ApplicationContextAware etc.

        This method allows the bean instance to perform validation of its overall configuration and final initialization when all bean properties have been set.

        Specified by:
        afterPropertiesSet in interface InitializingBean
        Throws:
        java.lang.Exception - in the event of misconfiguration (such as failure to set an essential property) or if initialization fails for any other reason
      • destroy

        public void destroy()
                     throws java.lang.Exception
        Description copied from interface: DisposableBean
        Invoked by the containing BeanFactory on destruction of a bean.
        Specified by:
        destroy in interface DisposableBean
        Throws:
        java.lang.Exception - in case of shutdown errors. Exceptions will get logged but not rethrown to allow other beans to release their resources as well.