Package org.apache.catalina.ha

Examples of org.apache.catalina.ha.CatalinaCluster


     * @param newSessionID
     *            new session id, bind to the new cluster node
     */
    protected void sendSessionIDClusterBackup(Request request, String sessionId,
            String newSessionID) {
        CatalinaCluster c = getCluster();
        if (c != null) {
            SessionIDMessage msg = new SessionIDMessage();
            msg.setOrignalSessionID(sessionId);
            msg.setBackupSessionID(newSessionID);
            Context context = request.getContext();
            msg.setContextName(context.getName());
            msg.setHost(context.getParent().getName());
            c.send(msg);
        }
    }
View Full Code Here


            getNext().invoke(request, response);
            if(context != null) {
                Manager manager = context.getManager();           
                if (manager != null && manager instanceof ClusterManager) {
                    ClusterManager clusterManager = (ClusterManager) manager;
                    CatalinaCluster containerCluster = (CatalinaCluster) getContainer().getCluster();
                    if (containerCluster == null) {
                        if (log.isWarnEnabled())
                            log.warn(sm.getString("ReplicationValve.nocluster"));
                        return;
                    }
                    // valve cluster can access manager - other cluster handle replication
                    // at host level - hopefully!
                    if(containerCluster.getManager(clusterManager.getName()) == null)
                        return ;
                    if(containerCluster.hasMembers()) {
                        sendReplicationMessage(request, totalstart, isCrossContext, clusterManager, containerCluster);
                    } else {
                        resetReplicationRequest(request,isCrossContext);
                    }       
                }
View Full Code Here

     * @param session cross context session
     */
    protected void registerSessionAtReplicationValve(DeltaSession session) {
        if(replicationValve == null) {
            if(container instanceof StandardContext && ((StandardContext)container).getCrossContext()) {
                CatalinaCluster cluster = getCluster() ;
                if(cluster != null) {
                    Valve[] valves = cluster.getValves();
                    if(valves != null && valves.length > 0) {
                        for(int i=0; replicationValve == null && i < valves.length ; i++ ){
                            if(valves[i] instanceof ReplicationValve) replicationValve = (ReplicationValve)valves[i] ;
                        }//for

View Full Code Here

        String expiredId = getIdInternal();

        if(expiredId != null && manager != null &&
           manager instanceof DeltaManager) {
            DeltaManager dmanager = (DeltaManager)manager;
            CatalinaCluster cluster = dmanager.getCluster();
            ClusterMessage msg = dmanager.requestCompleted(expiredId, true);
            if (msg != null) {
                if(dmanager.isSendClusterDomainOnly()) {
                    cluster.sendClusterDomain(msg);
                } else {
                    cluster.send(msg);
                }
            }
        }

        super.expire(notify);
View Full Code Here

    @SuppressWarnings("unchecked")
    @Override
    protected synchronized void startInternal() throws LifecycleException {

        try {
            CatalinaCluster catclust = (CatalinaCluster)this.getCluster();
            if (this.context == null) this.context = new ReplApplContext(this);
            if ( catclust != null ) {
                ReplicatedMap map = new ReplicatedMap(this,catclust.getChannel(),DEFAULT_REPL_TIMEOUT,
                                                      getName(),getClassLoaders());
                map.setChannelSendOptions(mapSendOptions);
                ((ReplApplContext)this.context).setAttributeMap(map);
                if (getAltDDName() != null) context.setAttribute(Globals.ALT_DD_ATTR, getAltDDName());
            }
View Full Code Here

            for (Object listener : listenerChain) {
                addLifecycleListener((LifecycleListener)listener);
            }
        }

        CatalinaCluster cluster = ctx.getCluster();
        if (cluster != null)
            this.setCluster(cluster);

        Manager manager = ctx.getManager();
        if (manager != null)
View Full Code Here

        Cluster cluster = (Cluster) recipe.create(cl);
        for (ManagerType managerType : getManager()) {
            cluster.registerManager(managerType.getManager(cl));
        }
        if (cluster instanceof CatalinaCluster) {
            CatalinaCluster catalinaCluster = (CatalinaCluster) cluster;
            //Channel
            if (getChannel() != null) {
                catalinaCluster.setChannel(getChannel().getChannel(cl));
            }
            //Valve
            for (ValveType valveType : getValve()) {
                Valve valve = valveType.getValve(cl);
                catalinaCluster.addValve(valve);
            }
            //ClusterListener
            for (ClusterListenerType clusterListenerType : getClusterListener()) {
                ClusterListener clusterListener = clusterListenerType.getLifecycleListener(cl);
                catalinaCluster.addClusterListener(clusterListener);
            }
        }
        // LifecycleListener
        if (cluster instanceof Lifecycle) {
            Lifecycle lifecycle = (Lifecycle) 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


    public synchronized void start() throws LifecycleException {
        if ( this.started ) return;
        try {
            CatalinaCluster catclust = (CatalinaCluster)this.getCluster();
            if (this.context == null) this.context = new ReplApplContext(this.getBasePath(), this);
            if ( catclust != null ) {
                ReplicatedMap map = new ReplicatedMap(this,catclust.getChannel(),DEFAULT_REPL_TIMEOUT,
                                                      getName(),getClassLoaders());
                map.setChannelSendOptions(mapSendOptions);
                ((ReplApplContext)this.context).setAttributeMap(map);
                if (getAltDDName() != null) context.setAttribute(Globals.ALT_DD_ATTR, getAltDDName());
            }
View Full Code Here

TOP

Related Classes of org.apache.catalina.ha.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.