CASC-84
added property to override configuration init param
This commit is contained in:
parent
1031f01ee0
commit
e78706747a
|
|
@ -56,23 +56,25 @@ public class AuthenticationFilter extends AbstractCasFilter {
|
|||
private GatewayResolver gatewayStorage = new DefaultGatewayResolverImpl();
|
||||
|
||||
protected void initInternal(final FilterConfig filterConfig) throws ServletException {
|
||||
super.initInternal(filterConfig);
|
||||
setCasServerLoginUrl(getPropertyFromInitParams(filterConfig, "casServerLoginUrl", null));
|
||||
log.trace("Loaded CasServerLoginUrl parameter: " + this.casServerLoginUrl);
|
||||
setRenew(parseBoolean(getPropertyFromInitParams(filterConfig, "renew", "false")));
|
||||
log.trace("Loaded renew parameter: " + this.renew);
|
||||
setGateway(parseBoolean(getPropertyFromInitParams(filterConfig, "gateway", "false")));
|
||||
log.trace("Loaded gateway parameter: " + this.gateway);
|
||||
|
||||
final String gatewayStorageClass = getPropertyFromInitParams(filterConfig, "gatewayStorageClass", null);
|
||||
|
||||
if (gatewayStorageClass != null) {
|
||||
try {
|
||||
this.gatewayStorage = (GatewayResolver) Class.forName(gatewayStorageClass).newInstance();
|
||||
} catch (final Exception e) {
|
||||
log.error(e,e);
|
||||
throw new ServletException(e);
|
||||
}
|
||||
if (!isIgnoreInitConfiguration()) {
|
||||
super.initInternal(filterConfig);
|
||||
setCasServerLoginUrl(getPropertyFromInitParams(filterConfig, "casServerLoginUrl", null));
|
||||
log.trace("Loaded CasServerLoginUrl parameter: " + this.casServerLoginUrl);
|
||||
setRenew(parseBoolean(getPropertyFromInitParams(filterConfig, "renew", "false")));
|
||||
log.trace("Loaded renew parameter: " + this.renew);
|
||||
setGateway(parseBoolean(getPropertyFromInitParams(filterConfig, "gateway", "false")));
|
||||
log.trace("Loaded gateway parameter: " + this.gateway);
|
||||
|
||||
final String gatewayStorageClass = getPropertyFromInitParams(filterConfig, "gatewayStorageClass", null);
|
||||
|
||||
if (gatewayStorageClass != null) {
|
||||
try {
|
||||
this.gatewayStorage = (GatewayResolver) Class.forName(gatewayStorageClass).newInstance();
|
||||
} catch (final Exception e) {
|
||||
log.error(e,e);
|
||||
throw new ServletException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ import org.apache.commons.logging.LogFactory;
|
|||
* Implementation of {@link ProxyGrantingTicketStorage} that is backed by a
|
||||
* HashMap that keeps a ProxyGrantingTicket for a specified amount of time.
|
||||
* <p>
|
||||
* {@link CleanUpRegistry#cleanAll()} must be called on a regular basis to
|
||||
* {@link ProxyGrantingTicketStorage#cleanUp()} must be called on a regular basis to
|
||||
* keep the HashMap from growing indefinitely.
|
||||
*
|
||||
* @author Scott Battaglia
|
||||
|
|
|
|||
|
|
@ -38,7 +38,9 @@ public final class SingleSignOutFilter extends AbstractConfigurationFilter {
|
|||
private static Log log = LogFactory.getLog(SingleSignOutFilter.class);
|
||||
|
||||
public void init(final FilterConfig filterConfig) throws ServletException {
|
||||
setArtifactParameterName(getPropertyFromInitParams(filterConfig, "artifactParameterName", "ticket"));
|
||||
if (!isIgnoreInitConfiguration()) {
|
||||
setArtifactParameterName(getPropertyFromInitParams(filterConfig, "artifactParameterName", "ticket"));
|
||||
}
|
||||
init();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -48,18 +48,20 @@ public abstract class AbstractCasFilter extends AbstractConfigurationFilter {
|
|||
private String service;
|
||||
|
||||
public final void init(final FilterConfig filterConfig) throws ServletException {
|
||||
setServerName(getPropertyFromInitParams(filterConfig, "serverName", null));
|
||||
log.trace("Loading serverName property: " + this.serverName);
|
||||
setService(getPropertyFromInitParams(filterConfig, "service", null));
|
||||
log.trace("Loading service property: " + this.service);
|
||||
setArtifactParameterName(getPropertyFromInitParams(filterConfig, "artifactParameterName", "ticket"));
|
||||
log.trace("Loading artifact parameter name property: " + this.artifactParameterName);
|
||||
setServiceParameterName(getPropertyFromInitParams(filterConfig, "serviceParameterName", "service"));
|
||||
log.trace("Loading serviceParameterName property: " + this.serviceParameterName);
|
||||
setEncodeServiceUrl(parseBoolean(getPropertyFromInitParams(filterConfig, "encodeServiceUrl", "true")));
|
||||
log.trace("Loading encodeServiceUrl property: " + this.encodeServiceUrl);
|
||||
if (!isIgnoreInitConfiguration()) {
|
||||
setServerName(getPropertyFromInitParams(filterConfig, "serverName", null));
|
||||
log.trace("Loading serverName property: " + this.serverName);
|
||||
setService(getPropertyFromInitParams(filterConfig, "service", null));
|
||||
log.trace("Loading service property: " + this.service);
|
||||
setArtifactParameterName(getPropertyFromInitParams(filterConfig, "artifactParameterName", "ticket"));
|
||||
log.trace("Loading artifact parameter name property: " + this.artifactParameterName);
|
||||
setServiceParameterName(getPropertyFromInitParams(filterConfig, "serviceParameterName", "service"));
|
||||
log.trace("Loading serviceParameterName property: " + this.serviceParameterName);
|
||||
setEncodeServiceUrl(parseBoolean(getPropertyFromInitParams(filterConfig, "encodeServiceUrl", "true")));
|
||||
log.trace("Loading encodeServiceUrl property: " + this.encodeServiceUrl);
|
||||
|
||||
initInternal(filterConfig);
|
||||
initInternal(filterConfig);
|
||||
}
|
||||
init();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@ public abstract class AbstractConfigurationFilter implements Filter {
|
|||
|
||||
protected final Log log = LogFactory.getLog(getClass());
|
||||
|
||||
private boolean ignoreInitConfiguration = false;
|
||||
|
||||
/**
|
||||
* Retrieves the property from the FilterConfig. First it checks the FilterConfig's initParameters to see if it
|
||||
* has a value.
|
||||
|
|
@ -28,6 +30,7 @@ public abstract class AbstractConfigurationFilter implements Filter {
|
|||
*
|
||||
* @param filterConfig the Filter Configuration.
|
||||
* @param propertyName the property to retrieve.
|
||||
* @param defaultValue the default value if the property is not found.
|
||||
* @return the property value, following the above conventions. It will always return the more specific value (i.e.
|
||||
* filter vs. context).
|
||||
*/
|
||||
|
|
@ -80,4 +83,12 @@ public abstract class AbstractConfigurationFilter implements Filter {
|
|||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public final void setIgnoreInitConfiguration(boolean ignoreInitConfiguration) {
|
||||
this.ignoreInitConfiguration = ignoreInitConfiguration;
|
||||
}
|
||||
|
||||
protected final boolean isIgnoreInitConfiguration() {
|
||||
return this.ignoreInitConfiguration;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,7 +60,6 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter {
|
|||
}
|
||||
|
||||
protected void initInternal(final FilterConfig filterConfig) throws ServletException {
|
||||
super.initInternal(filterConfig);
|
||||
setExceptionOnValidationFailure(parseBoolean(getPropertyFromInitParams(filterConfig, "exceptionOnValidationFailure", "true")));
|
||||
log.trace("Setting exceptionOnValidationFailure parameter: " + this.exceptionOnValidationFailure);
|
||||
setRedirectAfterValidation(parseBoolean(getPropertyFromInitParams(filterConfig, "redirectAfterValidation", "true")));
|
||||
|
|
@ -68,6 +67,7 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter {
|
|||
setUseSession(parseBoolean(getPropertyFromInitParams(filterConfig, "useSession", "true")));
|
||||
log.trace("Setting useSession parameter: " + this.useSession);
|
||||
setTicketValidator(getTicketValidator(filterConfig));
|
||||
super.initInternal(filterConfig);
|
||||
}
|
||||
|
||||
public void init() {
|
||||
|
|
|
|||
|
|
@ -64,9 +64,15 @@ public class Cas20ProxyReceivingTicketValidationFilter extends AbstractTicketVal
|
|||
|
||||
public void init() {
|
||||
super.init();
|
||||
CommonUtils.assertNotNull(proxyGrantingTicketStorage, "proxyGrantingTicketStorage cannot be null.");
|
||||
this.timer = new Timer(true);
|
||||
this.timerTask = new CleanUpTimerTask(this.proxyGrantingTicketStorage);
|
||||
CommonUtils.assertNotNull(this.proxyGrantingTicketStorage, "proxyGrantingTicketStorage cannot be null.");
|
||||
|
||||
if (this.timer == null) {
|
||||
this.timer = new Timer(true);
|
||||
}
|
||||
|
||||
if (this.timerTask == null) {
|
||||
this.timerTask = new CleanUpTimerTask(this.proxyGrantingTicketStorage);
|
||||
}
|
||||
this.timer.schedule(this.timerTask, this.millisBetweenCleanUps, this.millisBetweenCleanUps);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue