Class JettyHTTPServerEngineFactory

java.lang.Object
org.apache.cxf.transport.http_jetty.JettyHTTPServerEngineFactory
Direct Known Subclasses:
JettyHTTPServerEngineFactoryBeanDefinitionParser.SpringJettyHTTPServerEngineFactory

public class JettyHTTPServerEngineFactory extends Object
This Bus Extension handles the configuration of network port numbers for use with "http" or "https". This factory caches the JettyHTTPServerEngines so that they may be retrieved if already previously configured.
  • Constructor Details

    • JettyHTTPServerEngineFactory

      public JettyHTTPServerEngineFactory()
    • JettyHTTPServerEngineFactory

      public JettyHTTPServerEngineFactory(org.apache.cxf.Bus b)
    • JettyHTTPServerEngineFactory

      public JettyHTTPServerEngineFactory(org.apache.cxf.Bus b, Map<String,org.apache.cxf.configuration.jsse.TLSServerParameters> tls, Map<String,ThreadingParameters> threading)
  • Method Details

    • setBus

      public final void setBus(org.apache.cxf.Bus bus)
      This call is used to set the bus. It should only be called once.
      Parameters:
      bus -
    • getBus

      public org.apache.cxf.Bus getBus()
    • setTlsServerParametersMap

      public void setTlsServerParametersMap(Map<String,org.apache.cxf.configuration.jsse.TLSServerParameters> tlsParamsMap)
      This call sets TLSParametersMap for a JettyHTTPServerEngine
    • getTlsServerParametersMap

      public Map<String,org.apache.cxf.configuration.jsse.TLSServerParameters> getTlsServerParametersMap()
    • setEnginesList

      public void setEnginesList(List<JettyHTTPServerEngine> enginesList)
    • setThreadingParametersMap

      public void setThreadingParametersMap(Map<String,ThreadingParameters> threadingParamsMap)
      This call sets the ThreadingParameters for a JettyHTTPServerEngine
    • getThreadingParametersMap

      public Map<String,ThreadingParameters> getThreadingParametersMap()
    • setTLSServerParametersForPort

      public void setTLSServerParametersForPort(String host, int port, org.apache.cxf.configuration.jsse.TLSServerParameters tlsParams) throws GeneralSecurityException, IOException
      This call sets TLSServerParameters for a JettyHTTPServerEngine that will be subsequently created. It will not alter an engine that has already been created for that network port.
      Parameters:
      host - if not null, server will listen on this address/host, otherwise, server will listen on all local addresses.
      port - The network port number to bind to the engine.
      tlsParams - The tls server parameters. Cannot be null.
      Throws:
      IOException
      GeneralSecurityException
    • setTLSServerParametersForPort

      public void setTLSServerParametersForPort(int port, org.apache.cxf.configuration.jsse.TLSServerParameters tlsParams) throws GeneralSecurityException, IOException
      calls thru to {createJettyHTTPServerEngine(String, int, String) with 'null' for host value
      Throws:
      GeneralSecurityException
      IOException
    • retrieveJettyHTTPServerEngine

      public JettyHTTPServerEngine retrieveJettyHTTPServerEngine(int port)
      This call retrieves a previously configured JettyHTTPServerEngine for the given port. If none exists, this call returns null.
    • createJettyHTTPServerEngine

      public JettyHTTPServerEngine createJettyHTTPServerEngine(String host, int port, String protocol, String id) throws GeneralSecurityException, IOException
      This call creates a new JettyHTTPServerEngine initialized for "http" or "https" on the given port. The determination of "http" or "https" will depend on configuration of the engine's bean name. If an JettyHTTPEngine already exists, or the port is already in use, a BindIOException will be thrown. If the engine is being Spring configured for TLS a GeneralSecurityException may be thrown.
      Parameters:
      host - if not null, server will listen on this host/address, otherwise server will listen on all local addresses.
      port - listen port for server
      protocol - "http" or "https"
      id - The key to reference into the tlsParametersMap. Can be null.
      Returns:
      Throws:
      GeneralSecurityException
      IOException
    • createJettyHTTPServerEngine

      public JettyHTTPServerEngine createJettyHTTPServerEngine(int port, String protocol) throws GeneralSecurityException, IOException
      Calls thru to {createJettyHTTPServerEngine(String, int, String) with a 'null' host value
      Throws:
      GeneralSecurityException
      IOException
    • createJettyHTTPServerEngine

      public JettyHTTPServerEngine createJettyHTTPServerEngine(String host, int port, String protocol) throws GeneralSecurityException, IOException
      Throws:
      GeneralSecurityException
      IOException
    • destroyForPort

      public static void destroyForPort(int port)
      This method removes the Server Engine from the port map and stops it.
    • getMBeanServer

      public MBeanServer getMBeanServer()
    • getMBeanContainer

      public org.eclipse.jetty.util.component.Container.Listener getMBeanContainer()
    • initComplete

      public void initComplete()
    • postShutdown

      public void postShutdown()
    • preShutdown

      public void preShutdown()