Switched to zutil UserMessageManager
This commit is contained in:
parent
0c8f71d80d
commit
5065c24f39
5 changed files with 106 additions and 101 deletions
|
|
@ -81,8 +81,8 @@ public class Zallery extends HttpServlet{
|
||||||
}
|
}
|
||||||
|
|
||||||
public static UserMessageManager getUserMessage(HttpSession session) {
|
public static UserMessageManager getUserMessage(HttpSession session) {
|
||||||
if (session.getAttribute(ZalleryConstants.SESSION_KEY_USER_MSG) == null)
|
if (session.getAttribute(ZalleryConstants.KEY_USER_MSG) == null)
|
||||||
session.setAttribute(ZalleryConstants.SESSION_KEY_USER_MSG, new UserMessageManager());
|
session.setAttribute(ZalleryConstants.KEY_USER_MSG, new UserMessageManager());
|
||||||
return (UserMessageManager) session.getAttribute(ZalleryConstants.SESSION_KEY_USER_MSG);
|
return (UserMessageManager) session.getAttribute(ZalleryConstants.KEY_USER_MSG);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ public interface ZalleryConstants {
|
||||||
|
|
||||||
/** Session Constants **/
|
/** Session Constants **/
|
||||||
|
|
||||||
public static final String SESSION_KEY_USER_MSG = "zall_user_message";
|
public static final String KEY_USER_MSG = "zall_user_message";
|
||||||
|
|
||||||
/** Language Key Constants **/
|
/** Language Key Constants **/
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package zall;
|
||||||
|
|
||||||
import zutil.db.DBConnection;
|
import zutil.db.DBConnection;
|
||||||
import zutil.log.LogUtil;
|
import zutil.log.LogUtil;
|
||||||
|
import zutil.ui.UserMessageManager;
|
||||||
|
|
||||||
import javax.servlet.RequestDispatcher;
|
import javax.servlet.RequestDispatcher;
|
||||||
import javax.servlet.ServletException;
|
import javax.servlet.ServletException;
|
||||||
|
|
@ -22,7 +23,10 @@ public abstract class ZalleryServlet extends HttpServlet {
|
||||||
public final void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException {
|
public final void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException {
|
||||||
DBConnection db = null;
|
DBConnection db = null;
|
||||||
try {
|
try {
|
||||||
|
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||||
|
request.setAttribute(ZalleryConstants.KEY_USER_MSG, msgs);
|
||||||
doGet(request, response, db = Zallery.getDB());
|
doGet(request, response, db = Zallery.getDB());
|
||||||
|
msgs.decrementViewCount();
|
||||||
} catch (ServletException e) {
|
} catch (ServletException e) {
|
||||||
throw e;
|
throw e;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ import java.sql.PreparedStatement;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.LinkedList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
@ -141,10 +140,10 @@ public class Folder extends DBBean {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return a File object that points to the physical file on the disk,
|
|
||||||
* or null if the user or the filename is null
|
|
||||||
* @param filename is the name of the file
|
* @param filename is the name of the file
|
||||||
* @param size specifies the size of the image
|
* @param size specifies the size of the image
|
||||||
|
* @return a File object that points to the physical file on the disk,
|
||||||
|
* or null if the user or the filename is null
|
||||||
*/
|
*/
|
||||||
public File getFile(String filename, Image.Size size) {
|
public File getFile(String filename, Image.Size size) {
|
||||||
// Zallery not initialized.
|
// Zallery not initialized.
|
||||||
|
|
|
||||||
|
|
@ -21,31 +21,32 @@ import zutil.image.ImageUtil;
|
||||||
import zutil.io.file.FileUtil;
|
import zutil.io.file.FileUtil;
|
||||||
import zutil.log.LogUtil;
|
import zutil.log.LogUtil;
|
||||||
|
|
||||||
@DBTable(value="Image", superBean=true)
|
@DBTable(value = "Image", superBean = true)
|
||||||
public class Image extends Media{
|
public class Image extends Media {
|
||||||
private static final Logger logger = LogUtil.getLogger();
|
private static final Logger logger = LogUtil.getLogger();
|
||||||
public static final String type = "image";
|
public static final String type = "image";
|
||||||
public static final String IMAGE_FORMAT = "jpg";
|
public static final String IMAGE_FORMAT = "jpg";
|
||||||
|
|
||||||
@DBLinkTable(table="Comments", beanClass=Comment.class, idColumn="image")
|
@DBLinkTable(table = "Comments", beanClass = Comment.class, idColumn = "image")
|
||||||
private LinkedList<Comment> comments;
|
private LinkedList<Comment> comments;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads all the Images from a folder
|
* Loads all the Images from a folder
|
||||||
*/
|
*/
|
||||||
public static List<Image> loadFolder(DBConnection db, Folder folder) throws SQLException{
|
public static List<Image> loadFolder(DBConnection db, Folder folder) throws SQLException {
|
||||||
if( folder == null || folder.getId() == null )
|
if (folder == null || folder.getId() == null)
|
||||||
return new LinkedList<Image>();
|
return new LinkedList<Image>();
|
||||||
PreparedStatement sql = db.getPreparedStatement("SELECT * FROM Image WHERE folder=? ORDER BY date DESC");
|
PreparedStatement sql = db.getPreparedStatement("SELECT * FROM Image WHERE folder=? ORDER BY date DESC");
|
||||||
sql.setLong(1, folder.getId() );
|
sql.setLong(1, folder.getId());
|
||||||
return DBConnection.exec(sql, DBBeanSQLResultHandler.createList(Image.class, db));
|
return DBConnection.exec(sql, DBBeanSQLResultHandler.createList(Image.class, db));
|
||||||
}
|
}
|
||||||
public static Image load(DBConnection db, long id) throws SQLException{
|
|
||||||
|
public static Image load(DBConnection db, long id) throws SQLException {
|
||||||
return DBBean.load(db, Image.class, id);
|
return DBBean.load(db, Image.class, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public Image(){
|
public Image() {
|
||||||
super();
|
super();
|
||||||
comments = new LinkedList<Comment>();
|
comments = new LinkedList<Comment>();
|
||||||
}
|
}
|
||||||
|
|
@ -53,20 +54,21 @@ public class Image extends Media{
|
||||||
public LinkedList<Comment> getComments() {
|
public LinkedList<Comment> getComments() {
|
||||||
return comments;
|
return comments;
|
||||||
}
|
}
|
||||||
public void addComment(Comment cm){
|
|
||||||
comments.add( cm );
|
public void addComment(Comment cm) {
|
||||||
|
comments.add(cm);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setFile(FileItem item) throws Exception{
|
public void setFile(FileItem item) throws Exception {
|
||||||
if( folder == null )
|
if (folder == null)
|
||||||
throw new Exception("Folder not set for image!");
|
throw new Exception("Folder not set for image!");
|
||||||
// Generate unique filename
|
// Generate unique filename
|
||||||
filename = genFileName( item.getName() );
|
filename = genFileName(item.getName());
|
||||||
filename += "."+FileUtil.getFileExtension( item.getName() );
|
filename += "." + FileUtil.getFileExtension(item.getName());
|
||||||
File file = folder.getFile( filename, Size.ORIGINAL );
|
File file = folder.getFile(filename, Size.ORIGINAL);
|
||||||
|
|
||||||
// Move uploaded file
|
// Move uploaded file
|
||||||
item.write( file );
|
item.write(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -74,20 +76,20 @@ public class Image extends Media{
|
||||||
*
|
*
|
||||||
* @param size is the size of the image
|
* @param size is the size of the image
|
||||||
*/
|
*/
|
||||||
public File getFile(Size size) throws IOException{
|
public File getFile(Size size) throws IOException {
|
||||||
if( filename != null ){
|
if (filename != null) {
|
||||||
switch( size ){
|
switch (size) {
|
||||||
case ORIGINAL:
|
case ORIGINAL:
|
||||||
return folder.getFile( filename, Size.ORIGINAL );
|
return folder.getFile(filename, Size.ORIGINAL);
|
||||||
default:
|
default:
|
||||||
File file = folder.getFile( FileUtil.replaceExtension(filename, IMAGE_FORMAT), size );
|
File file = folder.getFile(FileUtil.replaceExtension(filename, IMAGE_FORMAT), size);
|
||||||
File orgFile = folder.getFile( filename, Size.ORIGINAL );
|
File orgFile = folder.getFile(filename, Size.ORIGINAL);
|
||||||
if( !file.exists() ){
|
if (!file.exists()) {
|
||||||
if(orgFile.exists() && orgFile.canRead() ){
|
if (orgFile.exists() && orgFile.canRead()) {
|
||||||
// Generate new thumbnail
|
// Generate new thumbnail
|
||||||
BufferedImage original = ImageIO.read( orgFile );
|
BufferedImage original = ImageIO.read(orgFile);
|
||||||
BufferedImage image = null;
|
BufferedImage image = null;
|
||||||
switch( size ){
|
switch (size) {
|
||||||
case SMALL:
|
case SMALL:
|
||||||
image = ImageUtil.cropScale(original, 125, 125);
|
image = ImageUtil.cropScale(original, 125, 125);
|
||||||
break;
|
break;
|
||||||
|
|
@ -101,17 +103,17 @@ public class Image extends Media{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
ImageIO.write(image, IMAGE_FORMAT, file);
|
ImageIO.write(image, IMAGE_FORMAT, file);
|
||||||
}
|
} else if (!orgFile.exists())
|
||||||
else if( !orgFile.exists() )
|
logger.severe("Original image file missing: \"" + file.getAbsolutePath() + "\"");
|
||||||
logger.severe("Original image file missing: \""+file.getAbsolutePath()+"\"");
|
else if (orgFile.canRead())
|
||||||
else if( orgFile.canRead() )
|
logger.severe("Can not read original image file: \"" + file.getAbsolutePath() + "\"");
|
||||||
logger.severe("Can not read original image file: \""+file.getAbsolutePath()+"\"");
|
|
||||||
}
|
}
|
||||||
return file;
|
return file;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getType() {
|
public String getType() {
|
||||||
return type;
|
return type;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue