Author: kfujino Date: Mon Dec 15 08:30:58 2014 New Revision: 1645596 URL: http://svn.apache.org/r1645596 Log: In order to enable define in Cluster element, ClusterSingleSignOn implements ClusterValve.
Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java?rev=1645596&r1=1645595&r2=1645596&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java (original) +++ tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java Mon Dec 15 08:30:58 2014 @@ -21,9 +21,7 @@ package org.apache.catalina.ha.authentic import java.security.Principal; -import org.apache.catalina.Cluster; import org.apache.catalina.Container; -import org.apache.catalina.Engine; import org.apache.catalina.Host; import org.apache.catalina.LifecycleException; import org.apache.catalina.Manager; @@ -31,6 +29,7 @@ import org.apache.catalina.Session; import org.apache.catalina.authenticator.SingleSignOn; import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; +import org.apache.catalina.ha.ClusterValve; import org.apache.catalina.ha.session.SerializablePrincipal; import org.apache.catalina.realm.GenericPrincipal; import org.apache.tomcat.util.ExceptionUtils; @@ -56,7 +55,7 @@ import org.apache.tomcat.util.ExceptionU * * @author Fabien Carrion */ -public class ClusterSingleSignOn extends SingleSignOn { +public class ClusterSingleSignOn extends SingleSignOn implements ClusterValve { // ----------------------------------------------------- Instance Variables @@ -68,7 +67,9 @@ public class ClusterSingleSignOn extends // ------------------------------------------------------------- Properties private CatalinaCluster cluster = null; + @Override public CatalinaCluster getCluster() { return cluster; } + @Override public void setCluster(CatalinaCluster cluster) { this.cluster = cluster; } @@ -91,33 +92,19 @@ public class ClusterSingleSignOn extends // Load the cluster component, if any try { - //the channel is already running - Cluster cluster = getCluster(); - // stop remove cluster binding if(cluster == null) { Container host = getContainer(); - if(host != null && host instanceof Host) { - cluster = host.getCluster(); - if(cluster != null && cluster instanceof CatalinaCluster) { - setCluster((CatalinaCluster) cluster); - getCluster().addClusterListener(clusterSSOListener); - } else { - Container engine = host.getParent(); - if(engine != null && engine instanceof Engine) { - cluster = engine.getCluster(); - if(cluster != null && cluster instanceof CatalinaCluster) { - setCluster((CatalinaCluster) cluster); - getCluster().addClusterListener(clusterSSOListener); - } - } else { - cluster = null; - } + if(host instanceof Host) { + if(host.getCluster() instanceof CatalinaCluster) { + setCluster((CatalinaCluster) host.getCluster()); } } } if (cluster == null) { throw new LifecycleException( "There is no Cluster for ClusterSingleSignOn"); + } else { + getCluster().addClusterListener(clusterSSOListener); } } catch (Throwable t) { ExceptionUtils.handleThrowable(t); Modified: tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml?rev=1645596&r1=1645595&r2=1645596&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Mon Dec 15 08:30:58 2014 @@ -229,6 +229,15 @@ </fix> </changelog> </subsection> + <subsection name="Cluster"> + <changelog> + <fix> + In order to enable define in <code>Cluster</code> element, + <code>ClusterSingleSignOn</code> implements <code>ClusterValve</code>. + (kfujino) + </fix> + </changelog> + </subsection> <subsection name="WebSocket"> <changelog> <fix> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org