Package org.apache.catalina.cluster.session

Examples of org.apache.catalina.cluster.session.SimpleTcpReplicationManager


        {
            long start = System.currentTimeMillis();
            HttpRequest hrequest = (HttpRequest) request;
            HttpServletRequest hreq = (HttpServletRequest) hrequest.getRequest();
            HttpSession session = hreq.getSession(false);
            SimpleTcpReplicationManager manager = (SimpleTcpReplicationManager)request.getContext().getManager();
            SimpleTcpCluster cluster = (SimpleTcpCluster)getContainer().getCluster();
            if ( cluster == null ) {
                log("No cluster configured for this request.",2);
                return;
            }
            //first check for session invalidations
            String[] invalidIds=manager.getInvalidatedSessions();
            if ( invalidIds.length > 0 ) {
                for ( int i=0;i<invalidIds.length; i++ ) {
                    try {
                        SessionMessage imsg = manager.requestCompleted(
                            invalidIds[i]);
                        if (imsg != null)
                            cluster.send(imsg);
                    }catch ( Exception x ) {
                        log("Unable to send session invalid message over cluster.",x,2);
                    }
                }
            }
           
            String id = null;
            if ( session != null )
                id = session.getId();
            else
                return;

            if ( id == null )
                return;

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

           

            String uri = hrequest.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;

            if ( debug > 4 ) log("Invoking replication request on "+uri,4);
           
            SessionMessage msg = manager.requestCompleted(id);
            if ( msg == null ) return;

           
            cluster.send(msg);
            long stop = System.currentTimeMillis();
View Full Code Here


    // --------------------------------------------------------- Public Methods


    public synchronized Manager createManager(String name) {
        SimpleTcpReplicationManager manager = new SimpleTcpReplicationManager(name);
        manager.setCluster(this);
        manager.setDistributable(true);
        manager.setExpireSessionsOnShutdown(expireSessionsOnShutdown);
        manager.setPrintToScreen(printToScreen);
        manager.setUseDirtyFlag(useDirtyFlag);
        manager.setDebug(debug);
        allmanagers.put(name, manager);
        managers.put(name,manager);
        return manager;
    }
View Full Code Here

                //if so, wait until we are fully started up
                if ( name == null ) {
                    java.util.Iterator i = managers.keySet().iterator();
                    while ( i.hasNext() ) {
                        String key = (String)i.next();
                        SimpleTcpReplicationManager mgr = (SimpleTcpReplicationManager) managers.get(key);
                        if (mgr != null)
                            mgr.messageDataReceived(msg);
                        else
                            log.warn("Context manager doesn't exist:" + key);
                    }//while
                } else {
                    SimpleTcpReplicationManager mgr = (
                        SimpleTcpReplicationManager) managers.get(name);
                    if (mgr != null)
                        mgr.messageDataReceived(msg);
                    else
                        log.warn("Context manager doesn't exist:" + name);
                }//end if
            else
                log.warn("Received invalid message myobj="+myobj);
View Full Code Here

            }//for
            if ( filterfound )
                return;

            if ( debug > 4 ) log("Invoking replication request on "+uri,4);
            SimpleTcpReplicationManager manager = (SimpleTcpReplicationManager)request.getContext().getManager();
            SessionMessage msg = manager.requestCompleted(id);
            if ( msg == null ) return;

            SimpleTcpCluster cluster = (SimpleTcpCluster)getContainer().getCluster();
            if ( cluster == null ) {
                log("No cluster configured for this request.",2);
View Full Code Here

    // --------------------------------------------------------- Public Methods


    public synchronized Manager createManager(String name) {
        SimpleTcpReplicationManager manager = new SimpleTcpReplicationManager(name);
        manager.setCluster(this);
        manager.setExpireSessionsOnShutdown(expireSessionsOnShutdown);
        manager.setPrintToScreen(printToScreen);
        manager.setUseDirtyFlag(useDirtyFlag);
        manager.setDebug(debug);
        managers.put(name, manager);
        return manager;
    }
View Full Code Here

                //if so, wait until we are fully started up
                if ( name == null ) {
                    java.util.Iterator i = managers.keySet().iterator();
                    while ( i.hasNext() ) {
                        String key = (String)i.next();
                        SimpleTcpReplicationManager mgr = (SimpleTcpReplicationManager) managers.get(key);
                        if (mgr != null)
                            mgr.messageDataReceived(msg);
                        else
                            log.warn("Context manager doesn't exist:" + key);
                    }//while
                } else {
                    SimpleTcpReplicationManager mgr = (
                        SimpleTcpReplicationManager) managers.get(name);
                    if (mgr != null)
                        mgr.messageDataReceived(msg);
                    else
                        log.warn("Context manager doesn't exist:" + name);
                }//end if
            else
                log.warn("Received invalid message myobj="+myobj);
View Full Code Here

            }//for
            if ( filterfound )
                return;

            if ( debug > 4 ) log("Invoking replication request on "+uri,4);
            SimpleTcpReplicationManager manager = (SimpleTcpReplicationManager)request.getContext().getManager();
            SessionMessage msg = manager.requestCompleted(id);
            if ( msg == null ) return;

           
            cluster.send(msg);
            long stop = System.currentTimeMillis();
View Full Code Here

    // --------------------------------------------------------- Public Methods


    public synchronized Manager createManager(String name) {
        SimpleTcpReplicationManager manager = new SimpleTcpReplicationManager(name);
        manager.setCluster(null);
        manager.setDistributable(false);
        manager.setExpireSessionsOnShutdown(expireSessionsOnShutdown);
        manager.setPrintToScreen(printToScreen);
        manager.setUseDirtyFlag(useDirtyFlag);
        manager.setDebug(debug);
        allmanagers.put(name, manager);
        return manager;
    }
View Full Code Here

    }

    public void setDistributable(String contextName, boolean distributable)
    {
        log.info("Setting distributable for context:"+contextName+" to "+distributable);
        SimpleTcpReplicationManager manager = (SimpleTcpReplicationManager)allmanagers.get(contextName);
        manager.setDistributable(distributable);
        if (distributable) {
            manager.setCluster(this);
            manager.setDistributable(true);
            managers.put(contextName,manager);
        }
       
    }
View Full Code Here

                //if so, wait until we are fully started up
                if ( name == null ) {
                    java.util.Iterator i = managers.keySet().iterator();
                    while ( i.hasNext() ) {
                        String key = (String)i.next();
                        SimpleTcpReplicationManager mgr = (SimpleTcpReplicationManager) managers.get(key);
                        if (mgr != null)
                            mgr.messageDataReceived(msg);
                        else
                            log.warn("Context manager doesn't exist:" + key);
                    }//while
                } else {
                    SimpleTcpReplicationManager mgr = (
                        SimpleTcpReplicationManager) managers.get(name);
                    if (mgr != null)
                        mgr.messageDataReceived(msg);
                    else
                        log.warn("Context manager doesn't exist:" + name);
                }//end if
            else
                log.warn("Received invalid message myobj="+myobj);
View Full Code Here

TOP

Related Classes of org.apache.catalina.cluster.session.SimpleTcpReplicationManager

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.