Package org.apache.catalina.cluster

Examples of org.apache.catalina.cluster.CatalinaCluster


            HttpSession session = request.getSession(false);
           
            if (!( request.getContext().getManager() instanceof ClusterManager) ) return;
           
            ClusterManager manager = (ClusterManager)request.getContext().getManager();
            CatalinaCluster cluster = (CatalinaCluster)getContainer().getCluster();
            if ( cluster == null ) {
                log.warn("No cluster configured for this request.");
                return;
            }
            //first check for session invalidations
            String[] invalidIds=manager.getInvalidatedSessions();
            if ( invalidIds.length > 0 ) {
                for ( int i=0;i<invalidIds.length; i++ ) {
                    try {
                        ClusterMessage imsg = manager.requestCompleted(invalidIds[i]);
                        if (imsg != null)
                            cluster.send(imsg);
                    }catch ( Exception x ) {
                        log.error("Unable to send session invalid message over cluster.",x);
                    }
                }
            }

            String id = null;
            if ( session != null )
                id = session.getId();
            else
                return;

            if ( id == null )
                return;

            if ( (request.getContext().getManager()==null) ||
                 (!(request.getContext().getManager() instanceof ClusterManager)))
                return;



            String uri = request.getDecodedRequestURI();
            boolean filterfound = false;

            for ( int i=0; (i<reqFilters.length) && (!filterfound); i++ )
            {
                java.util.regex.Matcher matcher = reqFilters[i].matcher(uri);
                filterfound = matcher.matches();
            }//for
            if ( filterfound )
                return;

            log.debug("Invoking replication request on "+uri);

           
            ClusterMessage msg = manager.requestCompleted(id);

            if ( msg == null ) return;

            cluster.send(msg);
            long stop = System.currentTimeMillis();
            addClusterSendTime(stop-totalstart,stop-start);

        }catch (Exception x)
        {
View Full Code Here


        //this happens after the request
        long start = System.currentTimeMillis();
        Manager manager = request.getContext().getManager();
        if (manager != null && manager instanceof ClusterManager) {
            ClusterManager clusterManager = (ClusterManager) manager;
            CatalinaCluster cluster = (CatalinaCluster) getContainer()
                    .getCluster();
            if (cluster == null) {
                if (log.isWarnEnabled())
                    log.warn(sm.getString("ReplicationValve.nocluster"));
                return;
            }
            // valve cluster can access manager - other clusterhandle replication
            // at host level - hopefully!
            if(cluster.getManager(clusterManager.getName()) == null)
                return ;
            if(cluster.getMembers().length > ) {
                try {
                    // send invalid sessions
                    // DeltaManager returns String[0]
                    if (!(clusterManager instanceof DeltaManager))
                        sendInvalidSessions(clusterManager, cluster);
View Full Code Here

     * @param host
     *            clustered host
     */
    protected void stopSessionIDListener(StandardHost host) {
        if (sessionMoverListener != null) {
            CatalinaCluster cluster = (CatalinaCluster) host.getCluster();
            cluster.removeClusterListener(sessionMoverListener);
            if (mserver != null) {
                try {
                    ObjectName objectName = getObjectName(host);
                    mserver.unregisterMBean(objectName);
                } catch (Exception e) {
View Full Code Here

                return;
            }
            sessionMoverListener = new JvmRouteSessionIDBinderListener();
            mserver.registerMBean(getManagedBean(sessionMoverListener),
                    objectName);
            CatalinaCluster cluster = (CatalinaCluster) host.getCluster();
            sessionMoverListener.setCluster(cluster);
            ((JvmRouteSessionIDBinderListener) sessionMoverListener).start();
        } catch (Exception ex) {
            log.error(ex.getMessage(), ex);
        }
View Full Code Here

                Valve valve = (Valve) iterator.next();
                addValve(valve);
            }
        }

        CatalinaCluster cluster = ctx.getCluster();
        if (cluster != null)
            this.setCluster(cluster);
       
        Manager manager = ctx.getManager();
        if (manager != null)
View Full Code Here

TOP

Related Classes of org.apache.catalina.cluster.CatalinaCluster

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.