//
// ========================================================================
// Copyright (c) 1995-2020 Mort Bay Consulting Pty Ltd and others.
//
// This program and the accompanying materials are made available under
// the terms of the Eclipse Public License 2.0 which is available at
// https://www.eclipse.org/legal/epl-2.0
//
// This Source Code may also be made available under the following
// Secondary Licenses when the conditions for such availability set
// forth in the Eclipse Public License, v. 2.0 are satisfied:
// the Apache License v2.0 which is available at
// https://www.apache.org/licenses/LICENSE-2.0
//
// SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
// ========================================================================
//
package org.eclipse.jetty.server.session;
AbstractSessionCacheFactory
Base class for SessionCacheFactories.
/**
* AbstractSessionCacheFactory
*
* Base class for SessionCacheFactories.
*
*/
public abstract class AbstractSessionCacheFactory implements SessionCacheFactory
{
int _evictionPolicy;
boolean _saveOnInactiveEvict;
boolean _saveOnCreate;
boolean _removeUnloadableSessions;
boolean _flushOnResponseCommit;
boolean _invalidateOnShutdown;
public abstract SessionCache newSessionCache(SessionHandler handler);
public boolean isInvalidateOnShutdown()
{
return _invalidateOnShutdown;
}
public void setInvalidateOnShutdown(boolean invalidateOnShutdown)
{
_invalidateOnShutdown = invalidateOnShutdown;
}
Returns: the flushOnResponseCommit
/**
* @return the flushOnResponseCommit
*/
public boolean isFlushOnResponseCommit()
{
return _flushOnResponseCommit;
}
Params: - flushOnResponseCommit – the flushOnResponseCommit to set
/**
* @param flushOnResponseCommit the flushOnResponseCommit to set
*/
public void setFlushOnResponseCommit(boolean flushOnResponseCommit)
{
_flushOnResponseCommit = flushOnResponseCommit;
}
Returns: the saveOnCreate
/**
* @return the saveOnCreate
*/
public boolean isSaveOnCreate()
{
return _saveOnCreate;
}
Params: - saveOnCreate – the saveOnCreate to set
/**
* @param saveOnCreate the saveOnCreate to set
*/
public void setSaveOnCreate(boolean saveOnCreate)
{
_saveOnCreate = saveOnCreate;
}
Returns: the removeUnloadableSessions
/**
* @return the removeUnloadableSessions
*/
public boolean isRemoveUnloadableSessions()
{
return _removeUnloadableSessions;
}
Params: - removeUnloadableSessions – the removeUnloadableSessions to set
/**
* @param removeUnloadableSessions the removeUnloadableSessions to set
*/
public void setRemoveUnloadableSessions(boolean removeUnloadableSessions)
{
_removeUnloadableSessions = removeUnloadableSessions;
}
Returns: the evictionPolicy
/**
* @return the evictionPolicy
*/
public int getEvictionPolicy()
{
return _evictionPolicy;
}
Params: - evictionPolicy – the evictionPolicy to set
/**
* @param evictionPolicy the evictionPolicy to set
*/
public void setEvictionPolicy(int evictionPolicy)
{
_evictionPolicy = evictionPolicy;
}
Returns: the saveOnInactiveEvict
/**
* @return the saveOnInactiveEvict
*/
public boolean isSaveOnInactiveEvict()
{
return _saveOnInactiveEvict;
}
Params: - saveOnInactiveEvict – the saveOnInactiveEvict to set
/**
* @param saveOnInactiveEvict the saveOnInactiveEvict to set
*/
public void setSaveOnInactiveEvict(boolean saveOnInactiveEvict)
{
_saveOnInactiveEvict = saveOnInactiveEvict;
}
@Override
public SessionCache getSessionCache(SessionHandler handler)
{
SessionCache cache = newSessionCache(handler);
cache.setEvictionPolicy(getEvictionPolicy());
cache.setSaveOnInactiveEviction(isSaveOnInactiveEvict());
cache.setSaveOnCreate(isSaveOnCreate());
cache.setRemoveUnloadableSessions(isRemoveUnloadableSessions());
cache.setFlushOnResponseCommit(isFlushOnResponseCommit());
cache.setInvalidateOnShutdown(isInvalidateOnShutdown());
return cache;
}
}