IdentityHistoryStatusCache.java
package fr.paris.lutece.plugins.identitystore.cache;
import fr.paris.lutece.plugins.identitystore.business.identity.IdentityHome;
import fr.paris.lutece.portal.service.cache.AbstractCacheableService;
import fr.paris.lutece.portal.service.util.AppLogService;
import java.util.List;
public class IdentityHistoryStatusCache extends AbstractCacheableService
{
public static final String SERVICE_NAME = "IdentityHistoryCache";
public IdentityHistoryStatusCache( )
{
this.initCache( );
}
public void refresh( )
{
AppLogService.debug( "Init Identity History status cache" );
this.resetCache( );
}
public void put(List<String> statusList, String statusName)
{
if ( this.getKeys( ).contains( statusName ) )
{
this.removeKey( statusName );
}
this.putInCache( statusName, statusList );
AppLogService.debug( "History status added to cache: " + statusName );
}
public void remove(String statusName)
{
if ( this.getKeys( ).contains( statusName ) )
{
this.removeKey( statusName );
}
AppLogService.debug( "History status removed from cache: " + statusName );
}
public List<String> get(String statusName)
{
List<String> statusList = (List<String>) this.getFromCache( statusName );
if ( statusList == null )
{
statusList = IdentityHome.getHistoryStatusList();;
this.put( statusList, statusName );
}
return statusList;
}
public List<String> getStatusList(String statusName)
{
return this.get(statusName);
}
@Override
public String getName()
{
return SERVICE_NAME;
}
}