Subversion Repositories general

Compare Revisions

Ignore whitespace Rev 1256 → Rev 1257

/PhotoAlbum/trunk/src/ak/photoalbum/images/Thumbnailer.java
4,7 → 4,6
import java.util.HashMap;
import java.util.Comparator;
import java.util.Arrays;
import java.io.*; // FIXME
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
11,6 → 10,8
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.Graphics;
176,6 → 177,17
buildCache(imagesRoot);
}
 
public void reloadCache()
throws IOException
{
logger.info("reload cache");
 
smallCache.clear();
mediumCache.clear();
dirCache.clear();
loadCaches(cacheDir);
}
 
protected void deleteCache(File dir)
throws IOException
{
342,8 → 354,15
"unknown type of cached " + file.getCanonicalPath());
}
 
if(origin != null && cache != null)
if(origin != null && cache != null) {
loadCacheInfo(file, origin, cache);
}
else {
file.delete();
 
if(logger.isDebugEnabled())
logger.debug("deleted (unknown origin)");
}
}
 
protected void loadCacheInfo(File file, File origin, Map cache)
379,8 → 398,6
 
if(children == null) return; // the dir does not exists
 
Arrays.sort(children, fileNameComparator);
 
for(int i = 0; i < children.length; i++) {
if(children[i].isDirectory())
loadCaches(children[i]);
/PhotoAlbum/trunk/src/ak/photoalbum/logic/Logic.java
130,6 → 130,24
getBranch(uri).getThumbnailer().buildCache();
}
 
public void rebuildCache(String uri)
throws IOException, LogicException
{
getBranch(uri).getThumbnailer().rebuildCache();
}
 
public void deleteCache(String uri)
throws IOException, LogicException
{
getBranch(uri).getThumbnailer().deleteCache();
}
 
public void reloadCache(String uri)
throws IOException, LogicException
{
getBranch(uri).getThumbnailer().reloadCache();
}
 
public void getEntry(String uri, String path, IndexEntry page,
IndexEntry index, IndexEntry prev, IndexEntry current, IndexEntry next)
throws IOException, SAXException, LogicException
/PhotoAlbum/trunk/src/ak/photoalbum/webapp/CacheAction.java
3,6 → 3,7
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
10,20 → 11,31
import org.apache.log4j.Logger;
import ak.photoalbum.logic.Logic;
 
public final class BuildCacheAction
public final class CacheAction
extends Action
{
private static final Logger logger = Logger.getLogger(IndexAction.class);
private static final Logger logger = Logger.getLogger(CacheAction.class);
 
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception
{
PathForm theForm = (PathForm)form;
String branch = theForm.getBranch();
CacheForm theForm = (CacheForm)form;
String branch = theForm.getBranch();
String action = theForm.getAction();
// FIXME: show progress bar
 
// FIXME: show progress bar
Logic.getLogic().buildCache(branch);
if("build".equals(action))
Logic.getLogic().buildCache(branch);
else if("rebuild".equals(action))
Logic.getLogic().rebuildCache(branch);
else if("reload".equals(action))
Logic.getLogic().reloadCache(branch);
else if("delete".equals(action))
Logic.getLogic().deleteCache(branch);
else
throw new ServletException("unknown action");
 
return mapping.findForward("success");
}
/PhotoAlbum/trunk/src/ak/photoalbum/webapp/CacheForm.java
0,0 → 1,30
package ak.photoalbum.webapp;
 
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
 
public class CacheForm
extends BranchForm
{
protected String action;
 
public String getAction()
{
return action;
}
 
public void setAction(String action)
{
this.action = action;
}
 
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request)
{
ActionErrors errors = new ActionErrors();
 
return errors;
}
}