# HG changeset patch # User robcast # Date 1114190201 -7200 # Node ID a87e80bfbd4706bfeda57ea3237af448ce6d84a2 # Parent 5275a132dbd1c6bb32a233485278057f727550fa Servlet version 1.5.7b - new max-waiting-threads parameter and handling - DocumentBean also gets real image sizes (for dlInfo-xml et al.) diff -r 5275a132dbd1 -r a87e80bfbd47 servlet/src/digilib/servlet/DocumentBean.java --- a/servlet/src/digilib/servlet/DocumentBean.java Fri Apr 22 19:16:41 2005 +0200 +++ b/servlet/src/digilib/servlet/DocumentBean.java Fri Apr 22 19:16:41 2005 +0200 @@ -21,7 +21,7 @@ package digilib.servlet; -import java.util.*; +import java.util.List; import javax.servlet.ServletConfig; import javax.servlet.ServletContext; @@ -33,9 +33,12 @@ import digilib.auth.AuthOpException; import digilib.auth.AuthOps; +import digilib.image.ImageOps; +import digilib.image.ImageSize; import digilib.io.DocuDirCache; import digilib.io.DocuDirectory; import digilib.io.FileOps; +import digilib.io.ImageFile; import digilib.io.ImageFileset; public class DocumentBean { @@ -202,8 +205,22 @@ // get number of pages in directory DocuDirectory dd = dirCache.getDirectory(fn); if (dd != null) { + // add pt dlRequest.setValue("pt", dd.size()); } + // get original pixel size + ImageFile origfile = fileset.getBiggest(); + // check image for size if mo=hires + if ((! origfile.isChecked())&&dlRequest.hasOption("mo", "hires")) { + logger.debug("pre-checking image!"); + ImageOps.checkFile(origfile); + } + ImageSize pixsize = origfile.getSize(); + if (pixsize != null) { + // add pixel size + dlRequest.setValue("img.pix_x", new Integer(pixsize.getWidth())); + dlRequest.setValue("img.pix_y", new Integer(pixsize.getHeight())); + } } /**