Class TomcatLoader

  • All Implemented Interfaces:
    org.red5.server.jmx.mxbeans.LoaderMXBean, org.red5.server.jmx.mxbeans.ShutdownMXBean, org.springframework.beans.factory.Aware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware
    Direct Known Subclasses:
    RTMPTLoader, TomcatVHostLoader

    @ManagedResource(objectName="org.red5.server:type=TomcatLoader",
                     description="TomcatLoader")
    public class TomcatLoader
    extends org.red5.server.LoaderBase
    implements org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.DisposableBean, org.red5.server.jmx.mxbeans.LoaderMXBean
    Red5 loader for Tomcat. http://tomcat.apache.org/tomcat-8.5-doc/api/index.html
    Author:
    Paul Gregoire (mondain@gmail.com)
    • Field Detail

      • serviceEngineName

        public String serviceEngineName
        Common name for the Service and Engine components.
      • host

        protected org.apache.catalina.Host host
        Base container host.
      • embedded

        protected static EmbeddedTomcat embedded
        Embedded Tomcat service (like Catalina).
      • engine

        protected static org.apache.catalina.Engine engine
        Tomcat engine.
      • realm

        protected org.apache.catalina.Realm realm
        Tomcat realm.
      • hosts

        protected List<org.apache.catalina.Host> hosts
        Hosts
      • valves

        protected List<org.apache.catalina.Valve> valves
        Valves
    • Constructor Detail

      • TomcatLoader

        public TomcatLoader()
    • Method Detail

      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        Exception
      • addContext

        public org.apache.catalina.Context addContext​(String path,
                                                      String docBase)
                                               throws javax.servlet.ServletException
        Add context for path and docbase to current host.
        Parameters:
        contextPath - Path
        docBase - Document base
        Returns:
        Catalina context (that is, web application)
        Throws:
        javax.servlet.ServletException
      • addContext

        public org.apache.catalina.Context addContext​(String contextPath,
                                                      String docBase,
                                                      org.apache.catalina.Host host)
                                               throws javax.servlet.ServletException
        Add context for path and docbase to a host.
        Parameters:
        contextPath - Path
        docBase - Document base
        host - Host to add context to
        Returns:
        Catalina context (that is, web application)
        Throws:
        javax.servlet.ServletException
      • removeContext

        public void removeContext​(String path)
        Remove context from the current host.
        Specified by:
        removeContext in interface org.red5.server.jmx.mxbeans.LoaderMXBean
        Overrides:
        removeContext in class org.red5.server.LoaderBase
        Parameters:
        path - Path
      • start

        public void start()
                   throws javax.servlet.ServletException
        Initialization.
        Throws:
        javax.servlet.ServletException
      • startWebApplication

        public boolean startWebApplication​(String applicationName)
                                    throws javax.servlet.ServletException
        Starts a web application and its red5 (spring) component. This is basically a stripped down version of start().
        Specified by:
        startWebApplication in interface org.red5.server.jmx.mxbeans.LoaderMXBean
        Returns:
        true on success
        Throws:
        javax.servlet.ServletException
      • setBaseHost

        public void setBaseHost​(org.apache.catalina.Host baseHost)
        Set base host.
        Parameters:
        baseHost - Base host
      • getBaseHost

        public org.apache.catalina.Host getBaseHost()
        Get base host.
        Returns:
        Base host
      • getEngine

        public org.apache.catalina.Engine getEngine()
        Return Tomcat engine.
        Returns:
        Tomcat engine
      • setConnectors

        public void setConnectors​(List<TomcatConnector> connectors)
        Set connectors.
        Parameters:
        connectors -
      • setContexts

        public void setContexts​(Map<String,​String> contexts)
                         throws javax.servlet.ServletException
        Set additional contexts.
        Parameters:
        contexts - Map of contexts
        Throws:
        javax.servlet.ServletException
      • setEmbedded

        public void setEmbedded​(EmbeddedTomcat embedded)
        Setter for embedded object.
        Parameters:
        embedded - Embedded object
      • getEmbedded

        public EmbeddedTomcat getEmbedded()
        Getter for embedded object.
        Returns:
        Embedded object
      • getHost

        public org.apache.catalina.Host getHost()
        Get the host.
        Returns:
        host
      • setHost

        public void setHost​(org.apache.catalina.Host host)
        Set the host.
        Parameters:
        host - host
      • setHosts

        public void setHosts​(List<org.apache.catalina.Host> hosts)
        Set additional hosts.
        Parameters:
        hosts - List of hosts added to engine
      • setRealm

        public void setRealm​(org.apache.catalina.Realm realm)
        Setter for realm.
        Parameters:
        realm - Realm
      • getRealm

        public org.apache.catalina.Realm getRealm()
        Getter for realm.
        Returns:
        Realm
      • setValves

        public void setValves​(List<org.apache.catalina.Valve> valves)
        Set additional valves.
        Parameters:
        valves - List of valves
      • getHostId

        protected String getHostId()
        Returns a semi-unique id for this host based on its host values
        Returns:
        host id
      • registerJMX

        protected void registerJMX()
      • unregisterJMX

        protected void unregisterJMX()
      • destroy

        public void destroy()
                     throws Exception
        Shut server down.
        Specified by:
        destroy in interface org.springframework.beans.factory.DisposableBean
        Specified by:
        destroy in interface org.red5.server.jmx.mxbeans.LoaderMXBean
        Specified by:
        destroy in interface org.red5.server.jmx.mxbeans.ShutdownMXBean
        Throws:
        Exception
      • getCluster

        public org.apache.catalina.Cluster getCluster()
        Get cluster
        Returns:
        cluster object
      • setCluster

        public void setCluster​(org.apache.catalina.Cluster cluster)
        Set cluster
        Parameters:
        cluster - object