Renamed lang references, switched to zutil UserMessageManager
This commit is contained in:
parent
b84f583d1c
commit
9c91d96ce7
27 changed files with 245 additions and 295 deletions
|
|
@ -9,6 +9,9 @@
|
|||
<Environment type="java.lang.String" name="SMTP_HOST" value="127.0.0.1" />
|
||||
<Environment type="java.lang.String" name="DATA_PATH" value="C:\\Users\\Ziver\\Desktop\\Downloads\\zallery" />
|
||||
|
||||
<Environment type="java.lang.String" name="LOGGING_ZALL" value="FINEST" />
|
||||
<Environment type="java.lang.String" name="LOGGING_ZUTIL" value="FINE" />
|
||||
|
||||
<Resource
|
||||
name="jdbc/mysql"
|
||||
auth="Container"
|
||||
|
|
|
|||
4
WebContent/WEB-INF/tags/footer.tag
Normal file
4
WebContent/WEB-INF/tags/footer.tag
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<%@tag description="Footer template" pageEncoding="UTF-8" %>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -16,23 +16,12 @@
|
|||
<link rel="stylesheet" href="css/register3.css">
|
||||
<link rel="stylesheet" href="css/zallery.css">
|
||||
|
||||
|
||||
<!-- Bootstrap core JavaScript -->
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
||||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.imagesloaded/3.1.8/imagesloaded.pkgd.min.js"></script>
|
||||
<script src="js/masonry.pkgd.min.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function(){
|
||||
$('.image-grid').imagesLoaded(function(){
|
||||
$('.grid').masonry({
|
||||
itemSelector: '.grid-item',
|
||||
columnWidth: '.grid-item',
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<body>
|
||||
<jsp:include page="fragment_messages.jsp"/>
|
||||
34
WebContent/WEB-INF/tags/messages.tag
Normal file
34
WebContent/WEB-INF/tags/messages.tag
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
<%@tag description="User message template" pageEncoding="UTF-8" %>
|
||||
<%@taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
|
||||
<%@tag import="com.example.User" %>
|
||||
<%@attribute name="user" required="true" type="com.example.User"%>
|
||||
|
||||
<!-- User Messages -->
|
||||
<script type="text/javascript">
|
||||
$(function(){
|
||||
$(".message").click(function(){
|
||||
$(this).fade();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<div class="menu">
|
||||
<c:forEach var="messages" var="message">
|
||||
<c:if test="${message.getType() == MessageType.WARNING}">
|
||||
</c:if>
|
||||
|
||||
|
||||
if( message.getType() == MessageType.WARNING ){%>
|
||||
<div class="message" style="border: 2px solid #E6E600; padding: 0px; margin: 5px; background: #FFFF99 none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b><%=message.getMessage() %></b></center>
|
||||
</div>
|
||||
<%} else if( message.getType() == MessageType.ERROR ){ %>
|
||||
<div class="message" style="border: 2px solid #FF0000; padding: 0px; margin: 5px; background: #FFDDCC none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b><%=message.getMessage() %></b></center>
|
||||
</div>
|
||||
<%} else if( message.getType() == MessageType.INFO ){ %>
|
||||
<div class="message" style="border: 2px solid #039C00; padding: 0px; margin: 5px; background: #9BFB66 none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b><%=message.getMessage() %></b></center>
|
||||
</div>
|
||||
|
||||
</c:forEach>
|
||||
</div>
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
</body>
|
||||
</html>
|
||||
|
|
@ -1,9 +1,23 @@
|
|||
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
||||
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" tagdir="/WEB-INF/tags" %>
|
||||
|
||||
|
||||
<jsp:include page="fragment_header.jsp"/>
|
||||
|
||||
<jsp:include page="fragment_navbar.jsp"/>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function(){
|
||||
$('.image-grid').imagesLoaded(function(){
|
||||
$('.grid').masonry({
|
||||
itemSelector: '.grid-item',
|
||||
columnWidth: '.grid-item',
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<div class="content">
|
||||
|
||||
<div class="gallery col-center col-md-11">
|
||||
|
|
@ -33,4 +47,3 @@
|
|||
|
||||
|
||||
<jsp:include page="fragment_footer.jsp"/>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
||||
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" tagdir="/WEB-INF/tags" %>
|
||||
|
||||
<jsp:include page="fragment_header.jsp" />
|
||||
|
||||
<div class="container">
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
||||
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" tagdir="/WEB-INF/tags" %>
|
||||
|
||||
<jsp:include page="fragment_header.jsp" />
|
||||
|
||||
<div class="container">
|
||||
|
|
|
|||
|
|
@ -55,10 +55,7 @@
|
|||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="library" name="Maven: se.koc:zutil:1.0.2-219" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.mail:javax.mail-api:1.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: se.koc:zutil:1.0.2-219" level="project" />
|
||||
<orderEntry type="module" module-name="Zutil" />
|
||||
<orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.2.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
|
||||
|
|
|
|||
2
pom.xml
2
pom.xml
|
|
@ -21,7 +21,7 @@
|
|||
<dependency>
|
||||
<groupId>se.koc</groupId>
|
||||
<artifactId>zutil</artifactId>
|
||||
<version>1.0.2-219</version>
|
||||
<version>1.0.2-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.mail</groupId>
|
||||
|
|
|
|||
|
|
@ -9,12 +9,13 @@ import javax.naming.NamingException;
|
|||
import javax.servlet.ServletConfig;
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
import javax.servlet.http.Cookie;
|
||||
import javax.servlet.http.HttpServlet;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
|
||||
|
||||
@WebServlet(value = "/init", loadOnStartup = 1)
|
||||
public class Zallery extends HttpServlet{
|
||||
|
|
@ -39,7 +40,7 @@ public class Zallery extends HttpServlet{
|
|||
*/
|
||||
public void init(ServletConfig config) throws ServletException {
|
||||
super.init(config);
|
||||
// java:comp/env
|
||||
logger.info("Setting up Zallery environment.");
|
||||
ROOT_PATH = config.getServletContext().getRealPath("/");
|
||||
try {
|
||||
Context context = new InitialContext();
|
||||
|
|
@ -47,18 +48,20 @@ public class Zallery extends HttpServlet{
|
|||
if (((String) context.lookup("java:comp/env/DATA_PATH")).isEmpty())
|
||||
throw new ServletException("Zallery has not been properly configured, set proper configuration in Zallery.xml context file.");
|
||||
|
||||
WEBSITE_NAME = (String)context.lookup("java:comp/env/WEBSITE_NAME");
|
||||
WEBSITE_URL = (String)context.lookup("java:comp/env/WEBSITE_URL");
|
||||
WEBSITE_NAME = (String) context.lookup("java:comp/env/WEBSITE_NAME");
|
||||
WEBSITE_URL = (String) context.lookup("java:comp/env/WEBSITE_URL");
|
||||
if( WEBSITE_URL.charAt(WEBSITE_URL.length()-1) != '/')
|
||||
WEBSITE_URL += "/";
|
||||
|
||||
ADMIN_EMAIL = (String)context.lookup("java:comp/env/ADMIN_EMAIL");
|
||||
ADMIN_EMAIL_NICE = (String)context.lookup("java:comp/env/ADMIN_EMAIL_NICE");
|
||||
SMTP_HOST = (String)context.lookup("java:comp/env/SMTP_HOST");
|
||||
DATA_PATH = (String)context.lookup("java:comp/env/DATA_PATH");
|
||||
ADMIN_EMAIL = (String) context.lookup("java:comp/env/ADMIN_EMAIL");
|
||||
ADMIN_EMAIL_NICE = (String) context.lookup("java:comp/env/ADMIN_EMAIL_NICE");
|
||||
SMTP_HOST = (String) context.lookup("java:comp/env/SMTP_HOST");
|
||||
DATA_PATH = (String) context.lookup("java:comp/env/DATA_PATH");
|
||||
|
||||
LogUtil.setLevel("zall", Level.FINEST);
|
||||
//LogUtil.setLevel("zutil", Level.FINEST);
|
||||
LogUtil.setLevel("zall", Level.parse((String) context.lookup("java:comp/env/LOGGING_ZALL")));
|
||||
LogUtil.setLevel("zutil", Level.parse((String) context.lookup("java:comp/env/LOGGING_ZUTIL")));
|
||||
|
||||
logger.info("Zallery ready to be used.");
|
||||
} catch (NamingException e) {
|
||||
throw new ServletException(e);
|
||||
}
|
||||
|
|
@ -68,6 +71,7 @@ public class Zallery extends HttpServlet{
|
|||
|
||||
}
|
||||
|
||||
|
||||
public static DBConnection getDB() throws ServletException{
|
||||
try {
|
||||
return new DBConnection("jdbc/mysql");
|
||||
|
|
@ -76,4 +80,9 @@ public class Zallery extends HttpServlet{
|
|||
}
|
||||
}
|
||||
|
||||
public static UserMessageManager getUserMessage(HttpSession session) {
|
||||
if (session.getAttribute(ZalleryConstants.SESSION_KEY_USER_MSG) == null)
|
||||
session.setAttribute(ZalleryConstants.SESSION_KEY_USER_MSG, new UserMessageManager());
|
||||
return (UserMessageManager) session.getAttribute(ZalleryConstants.SESSION_KEY_USER_MSG);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
4
src/zall/ZalleryConstant.java → src/zall/ZalleryConstants.java
Executable file → Normal file
4
src/zall/ZalleryConstant.java → src/zall/ZalleryConstants.java
Executable file → Normal file
|
|
@ -5,11 +5,11 @@ import java.util.Locale;
|
|||
/**
|
||||
* Zallery globally defined constants
|
||||
*/
|
||||
public interface ZalleryConstant {
|
||||
public interface ZalleryConstants {
|
||||
|
||||
/** Session Constants **/
|
||||
|
||||
|
||||
public static final String SESSION_KEY_USER_MSG = "zall_user_message";
|
||||
|
||||
/** Language Key Constants **/
|
||||
|
||||
|
|
@ -12,7 +12,7 @@ import java.util.PropertyResourceBundle;
|
|||
import java.util.ResourceBundle;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import static zall.ZalleryConstant.*;
|
||||
import static zall.ZalleryConstants.*;
|
||||
|
||||
public abstract class ZalleryServlet extends HttpServlet {
|
||||
private static Logger logger = LogUtil.getLogger();
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import javax.servlet.http.HttpSession;
|
|||
|
||||
import zall.action.ZalleryAction;
|
||||
import zall.bean.User;
|
||||
import zall.util.ZalleryEmail;
|
||||
import zall.manager.EmailManager;
|
||||
import zall.util.UserMessage;
|
||||
import zall.util.UserMessage.MessageType;
|
||||
import zutil.db.DBConnection;
|
||||
|
|
@ -32,7 +32,7 @@ public class ModifyUserAction extends ZalleryAction{
|
|||
if( request.getParameter("enable") != null ){
|
||||
target_user.setEnabled( true );
|
||||
// Email the user about the activation
|
||||
ZalleryEmail.sendActivationEmail(target_user);
|
||||
EmailManager.sendActivationEmail(target_user);
|
||||
}
|
||||
// Disable user, can not disable one self!
|
||||
else if( request.getParameter("disable") != null && !user.equals( target_user ) )
|
||||
|
|
@ -48,9 +48,9 @@ public class ModifyUserAction extends ZalleryAction{
|
|||
return;
|
||||
}
|
||||
target_user.save(db);
|
||||
if( out != null )
|
||||
if( out != null )
|
||||
out.println("{ }");
|
||||
else
|
||||
else
|
||||
msgs.add(MessageType.INFO, "Account changes saved.");
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import javax.servlet.http.HttpSession;
|
|||
import zall.action.ZalleryAction;
|
||||
import zall.bean.User;
|
||||
import zall.manager.AuthenticationManager;
|
||||
import zall.util.ZalleryEmail;
|
||||
import zall.manager.EmailManager;
|
||||
import zall.util.UserMessage;
|
||||
import zall.util.UserMessage.MessageType;
|
||||
import zutil.db.DBConnection;
|
||||
|
|
@ -41,7 +41,7 @@ public class ModifyUserStatusAction extends ZalleryAction{
|
|||
else if( request.getParameter("oldPassword") != null )
|
||||
if( target_user.getPassword().equals(request.getParameter("oldPassword")) )
|
||||
target_user.setPassword( request.getParameter("password") );
|
||||
else{
|
||||
else{
|
||||
if(out != null) out.println("{ \"error\": \"Wrong password!\"}");
|
||||
else msgs.add(MessageType.ERROR, "Wrong password!");
|
||||
return;
|
||||
|
|
@ -51,8 +51,8 @@ public class ModifyUserStatusAction extends ZalleryAction{
|
|||
target_user.setName( request.getParameter("name") );
|
||||
target_user.save(db);
|
||||
if( !user.isEmailVerified() )
|
||||
ZalleryEmail.sendVerificationEmail( target_user );
|
||||
if( out != null )
|
||||
EmailManager.sendVerificationEmail( target_user );
|
||||
if( out != null )
|
||||
out.println("{ }");
|
||||
else
|
||||
msgs.add(MessageType.INFO, "Settings saved successfully.");
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import javax.servlet.http.HttpSession;
|
|||
|
||||
import zall.action.ZalleryAction;
|
||||
import zall.bean.User;
|
||||
import zall.util.ZalleryEmail;
|
||||
import zall.manager.EmailManager;
|
||||
import zall.util.UserMessage;
|
||||
import zall.util.UserMessage.MessageType;
|
||||
import zutil.db.DBConnection;
|
||||
|
|
@ -27,7 +27,7 @@ public class SendVerificationEmailAction extends ZalleryAction{
|
|||
@Override
|
||||
public void handleRequest(DBConnection db, HttpServletRequest request, HttpServletResponse response, HttpSession session,
|
||||
PrintWriter out, User user, UserMessage msgs) throws SQLException, IOException {
|
||||
|
||||
|
||||
User target_user = null;
|
||||
if( request.getParameter("id") != null )
|
||||
target_user = User.load(db, Long.parseLong( request.getParameter("id") ) );
|
||||
|
|
@ -39,8 +39,8 @@ public class SendVerificationEmailAction extends ZalleryAction{
|
|||
|
||||
if( target_user != null ){
|
||||
if( user.isSuperUser() ){
|
||||
ZalleryEmail.sendVerificationEmail(target_user);
|
||||
|
||||
EmailManager.sendVerificationEmail(target_user);
|
||||
|
||||
logger.info("Verification email sent successfully to: "+user.getEmail());
|
||||
if( out != null ) out.println("{ }");
|
||||
else msgs.add(MessageType.INFO, "Verification email sent successfully.");
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import javax.servlet.http.HttpSession;
|
|||
|
||||
import zall.action.ZalleryAction;
|
||||
import zall.bean.User;
|
||||
import zall.util.ZalleryEmail;
|
||||
import zall.manager.EmailManager;
|
||||
import zall.util.UserMessage;
|
||||
import zall.util.UserMessage.MessageType;
|
||||
import zutil.db.DBConnection;
|
||||
|
|
@ -32,7 +32,7 @@ public class VerifyEmailAction extends ZalleryAction{
|
|||
if (out != null) out.println("{ }");
|
||||
else msgs.add(MessageType.INFO, "Your email has been successfully verified");
|
||||
else {
|
||||
ZalleryEmail.sendNewUserRegistrationToAdmin(verifiedUser, db);
|
||||
EmailManager.sendNewUserRegistrationToAdmin(verifiedUser, db);
|
||||
if (out != null) out.println("{ }");
|
||||
else
|
||||
msgs.add(MessageType.INFO, "Your email has been successfully verified, the account is waiting for activation by an admin.");
|
||||
|
|
|
|||
|
|
@ -1,22 +1,22 @@
|
|||
error.incorrect.user_or_pass=Wrong username or password!
|
||||
info.sent.email.verification=A verification email has been sent, please click the link to continue.
|
||||
info.created.account=Your account has successfully been created.
|
||||
info.modify.folder.is.private=Folder is now private (not visible to other users).
|
||||
info.modify.folder.is.public=Folder is now public (can be viewed by other users).
|
||||
error.not.found.folder=The folder does not exist!
|
||||
error.not.allowed.edit.folder=You are not authorize to edit this folder!
|
||||
error.not.found.parameter=Parameter missing!
|
||||
info.modify.successfully=Changes were saved successfully.
|
||||
error.not.found.media=The media does not exist!
|
||||
error.not.allowed.edit.media=You are not authorize to modify this media!
|
||||
info.created.comment=Comment saved.
|
||||
error.not.allowed.edit.user=You do not have permission to edit the user.
|
||||
error.not.found.first.name=Please provide a valid first name!
|
||||
error.not.found.last.name=Please provide a valid last name!
|
||||
error.not.found.email=Please provide a valid email!
|
||||
error.not.found.password=Please provide a valid password!
|
||||
error.incorrect.password.matching=Provided passwords do not match!
|
||||
error.email_exists=An account with that email already exists!
|
||||
incorrect.user_or_pass=Wrong username or password!
|
||||
email.verification.sent=A verification email has been sent, please click the link to continue.
|
||||
account.created=Your account has successfully been created.
|
||||
folder.modify.is.private=Folder is now private (not visible to other users).
|
||||
folder.modify.is.public=Folder is now public (can be viewed by other users).
|
||||
folder.not.found=The folder does not exist!
|
||||
folder.modify.not.allowed=You are not authorize to edit this folder!
|
||||
parameter.not.found=parameter missing!
|
||||
modify.successfully=Changes were saved successfully.
|
||||
media.not.found=The media does not exist!
|
||||
media.modify.not.allowed=You are not authorize to modify this media!
|
||||
comment.created=Comment saved.
|
||||
user.modify.not.allowed=You do not have permission to edit the user.
|
||||
parameter.not.found.first.name=Please provide a valid first name!
|
||||
parameter.not.found.last.name=Please provide a valid last name!
|
||||
parameter.not.found.email=Please provide a valid email!
|
||||
parameter.not.found.password=Please provide a valid password!
|
||||
parameter.incorrect.password.match=Provided passwords do not match!
|
||||
parameter.email.exists=An account with that email already exists!
|
||||
email.activation.title=Account activation at
|
||||
email.activation.body=Your account has now been activated. You can now login and use the site.
|
||||
email.activation.request.title=New user activation request at
|
||||
|
|
@ -24,4 +24,7 @@ email.activation.request.body=A new user has registered for an account at
|
|||
email.registration.title=Registration at
|
||||
email.registration.body1=You receive this message because you have requested an account at
|
||||
email.registration.body2=Please click the link below to verify your email address:
|
||||
email.registration.body3=You will have to wait for an admin to activate your account after you have verified your email.
|
||||
email.registration.body3=You will have to wait for an admin to activate your account after you have verified your email.
|
||||
email.verification.success=Your email has been successfully verified.
|
||||
email.verification.error=Email verification failed.
|
||||
user.disabled=The account is disabled and waiting for account activation by an admin.
|
||||
30
src/zall/util/ZalleryEmail.java → src/zall/manager/EmailManager.java
Executable file → Normal file
30
src/zall/util/ZalleryEmail.java → src/zall/manager/EmailManager.java
Executable file → Normal file
|
|
@ -1,4 +1,28 @@
|
|||
package zall.util;
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Ziver Koc
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package zall.manager;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.bean.User;
|
||||
|
|
@ -12,12 +36,12 @@ import java.util.Locale;
|
|||
import java.util.PropertyResourceBundle;
|
||||
import java.util.ResourceBundle;
|
||||
|
||||
import static zall.ZalleryConstant.LANG_BASENAME;
|
||||
import static zall.ZalleryConstants.LANG_BASENAME;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public class ZalleryEmail {
|
||||
public class EmailManager {
|
||||
private static ResourceBundle lang = PropertyResourceBundle.getBundle(LANG_BASENAME, Locale.getDefault());
|
||||
|
||||
public static void sendVerificationEmail(User user) throws IOException {
|
||||
|
|
@ -1,13 +1,16 @@
|
|||
package zall.page;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.ZalleryServlet;
|
||||
import zall.bean.Folder;
|
||||
import zall.bean.Media;
|
||||
import zall.bean.User;
|
||||
import zall.manager.AuthenticationManager;
|
||||
import zall.util.UserMessage;
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
import zutil.ui.UserMessageManager.MessageLevel;
|
||||
import zutil.ui.UserMessageManager.UserMessage;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
|
@ -30,7 +33,7 @@ public class GalleryServlet extends ZalleryServlet {
|
|||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, IOException, ServletException {
|
||||
User user = AuthenticationManager.getUserSession(request.getSession());
|
||||
Folder folder;
|
||||
|
||||
|
||||
if (request.getParameter("folder") != null)
|
||||
folder = Folder.load(db, Long.parseLong(request.getParameter("folder")));
|
||||
else {
|
||||
|
|
@ -41,7 +44,7 @@ public class GalleryServlet extends ZalleryServlet {
|
|||
folder.save(db);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
List<Media> list = Media.load(db, folder);
|
||||
List<Folder> subFolders = Folder.loadSubFolders(db, folder, user);
|
||||
|
||||
|
|
@ -55,11 +58,11 @@ public class GalleryServlet extends ZalleryServlet {
|
|||
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, IOException, ServletException {
|
||||
User user = AuthenticationManager.getUserSession(request.getSession());
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
long id = Long.parseLong(request.getParameter("id"));
|
||||
|
||||
if (request.getParameter("id") == null) {
|
||||
msgs.add(UserMessage.MessageType.ERROR, "id" + lang.getString("error.not.found.parameter"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, "id " + lang.getString("parameter.not.found")));
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -77,16 +80,16 @@ public class GalleryServlet extends ZalleryServlet {
|
|||
folder.setPrivate(!folder.isPrivate());
|
||||
folder.save(db);
|
||||
if (folder.isPrivate())
|
||||
msgs.add(UserMessage.MessageType.INFO, lang.getString("info.modify.folder.is.private"));
|
||||
msgs.add(new UserMessage(MessageLevel.SUCCESS, lang.getString("folder.modify.is.private")));
|
||||
else
|
||||
msgs.add(UserMessage.MessageType.INFO, lang.getString("info.modify.folder.is.public"));
|
||||
msgs.add(new UserMessage(MessageLevel.SUCCESS, lang.getString("folder.modify.is.public")));
|
||||
} else
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.allowed.edit.folder"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("folder.modify.not.allowed")));
|
||||
} else
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.found.folder"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("folder.not.found")));
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
doGet(request, response, db);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,13 @@
|
|||
package zall.page;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.ZalleryServlet;
|
||||
import zall.bean.User;
|
||||
import zall.manager.AuthenticationManager;
|
||||
import zall.util.UserMessage;
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
import zutil.ui.UserMessageManager.MessageLevel;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
|
@ -46,7 +48,7 @@ public class LoginServlet extends ZalleryServlet {
|
|||
|
||||
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, ServletException, IOException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
User user = AuthenticationManager.authenticate(db,
|
||||
request.getParameter(FORM_EMAIL),
|
||||
request.getParameter(FORM_PASSWORD),
|
||||
|
|
@ -59,7 +61,7 @@ public class LoginServlet extends ZalleryServlet {
|
|||
}
|
||||
// Failed login
|
||||
else {
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.incorrect.user_or_pass"));
|
||||
msgs.add(new UserMessageManager.UserMessage(MessageLevel.ERROR, lang.getString("incorrect.user_or_pass")));
|
||||
}
|
||||
|
||||
doGet(request, response, db);
|
||||
|
|
|
|||
|
|
@ -1,13 +1,16 @@
|
|||
package zall.page;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.ZalleryServlet;
|
||||
import zall.bean.Comment;
|
||||
import zall.bean.Media;
|
||||
import zall.bean.User;
|
||||
import zall.manager.AuthenticationManager;
|
||||
import zall.util.UserMessage;
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
import zutil.ui.UserMessageManager.MessageLevel;
|
||||
import zutil.ui.UserMessageManager.UserMessage;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
|
@ -27,10 +30,10 @@ public class MediaServlet extends ZalleryServlet {
|
|||
|
||||
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, SQLException, IOException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
|
||||
if (request.getParameter("id") == null && request.getParameter("type") == null) {
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.found.parameter"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found")));
|
||||
return;
|
||||
}
|
||||
try {
|
||||
|
|
@ -46,12 +49,12 @@ public class MediaServlet extends ZalleryServlet {
|
|||
}
|
||||
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, ServletException, IOException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
User user = AuthenticationManager.getUserSession(request.getSession());
|
||||
long id = Long.parseLong(request.getParameter("id"));
|
||||
|
||||
if (request.getParameter("id") == null || request.getParameter("type") == null) {
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.found.parameter"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found")));
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -69,7 +72,7 @@ public class MediaServlet extends ZalleryServlet {
|
|||
media.addComment(cm);
|
||||
media.save(db);
|
||||
|
||||
msgs.add(UserMessage.MessageType.INFO, lang.getString("info.created.comment"));
|
||||
msgs.add(new UserMessage(MessageLevel.INFO, lang.getString("comment.created")));
|
||||
break;
|
||||
|
||||
// -----------------------------------------
|
||||
|
|
@ -83,11 +86,11 @@ public class MediaServlet extends ZalleryServlet {
|
|||
media.setDescription(request.getParameter("description"));
|
||||
media.save(db);
|
||||
|
||||
msgs.add(UserMessage.MessageType.INFO, lang.getString("info.modify.successfully"));
|
||||
msgs.add(new UserMessage(MessageLevel.SUCCESS, lang.getString("modify.successfully")));
|
||||
} else
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.allowed.edit.media"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("media.modify.not.allowed")));
|
||||
} else
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.found.media"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("media.not.found")));
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
package zall.page;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.ZalleryServlet;
|
||||
import zall.bean.User;
|
||||
import zall.manager.AuthenticationManager;
|
||||
import zall.util.UserMessage;
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
import zutil.ui.UserMessageManager.MessageLevel;
|
||||
import zutil.ui.UserMessageManager.UserMessage;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
|
@ -17,33 +20,33 @@ import java.util.logging.Logger;
|
|||
|
||||
@WebServlet(ProfileServlet.URI)
|
||||
public class ProfileServlet extends ZalleryServlet {
|
||||
private static Logger logger = LogUtil.getLogger();
|
||||
private static Logger logger = LogUtil.getLogger();
|
||||
|
||||
public static final String URI = "/profile";
|
||||
private static final String JSP_FILE = "page_profile.jsp";
|
||||
public static final String URI = "/profile";
|
||||
private static final String JSP_FILE = "page_profile.jsp";
|
||||
|
||||
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, IOException, SQLException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
User user = AuthenticationManager.getUserSession(request.getSession());
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, IOException, SQLException {
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
User user = AuthenticationManager.getUserSession(request.getSession());
|
||||
|
||||
if(request.getParameter("id") != null){
|
||||
User profile_user = User.load(db, Long.parseLong( request.getParameter("id") ));
|
||||
if(AuthenticationManager.canEdit(user, profile_user)){
|
||||
request.setAttribute("profile_user", profile_user);
|
||||
} else {
|
||||
msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.not.allowed.edit.user"));
|
||||
}
|
||||
} else {
|
||||
request.setAttribute("profile_user", user);
|
||||
}
|
||||
if (request.getParameter("id") != null) {
|
||||
User profile_user = User.load(db, Long.parseLong(request.getParameter("id")));
|
||||
if (AuthenticationManager.canEdit(user, profile_user)) {
|
||||
request.setAttribute("profile_user", profile_user);
|
||||
} else {
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("user.modify.not.allowed")));
|
||||
}
|
||||
} else {
|
||||
request.setAttribute("profile_user", user);
|
||||
}
|
||||
|
||||
include(JSP_FILE, request, response);
|
||||
include(JSP_FILE, request, response);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, IOException, ServletException {
|
||||
doGet(request, response, db);
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, IOException, ServletException {
|
||||
doGet(request, response, db);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
package zall.page;
|
||||
|
||||
import zall.Zallery;
|
||||
import zall.ZalleryServlet;
|
||||
import zall.bean.User;
|
||||
import zall.util.UserMessage.MessageType;
|
||||
import zall.util.ZalleryEmail;
|
||||
import zall.util.UserMessage;
|
||||
import zall.manager.EmailManager;
|
||||
import zutil.ObjectUtil;
|
||||
import zutil.db.DBConnection;
|
||||
import zutil.log.LogUtil;
|
||||
import zutil.ui.UserMessageManager;
|
||||
import zutil.ui.UserMessageManager.MessageLevel;
|
||||
import zutil.ui.UserMessageManager.UserMessage;
|
||||
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.annotation.WebServlet;
|
||||
|
|
@ -31,23 +33,27 @@ public class RegisterServlet extends ZalleryServlet {
|
|||
|
||||
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, IOException, SQLException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
|
||||
// Verify email address
|
||||
String verifyEmailHash = request.getParameter("verifyemail");
|
||||
if(!ObjectUtil.isEmpty(verifyEmailHash)){
|
||||
if (!ObjectUtil.isEmpty(verifyEmailHash)) {
|
||||
User verfUser = User.load(db, Long.parseLong(request.getParameter("id")));
|
||||
if (verfUser != null) {
|
||||
if( verfUser.verifyEmail(request.getParameter("hash")) ){
|
||||
ZalleryEmail.sendNewUserRegistrationToAdmin(verfUser, db);
|
||||
if (verfUser.verifyEmail(request.getParameter("hash"))) {
|
||||
EmailManager.sendNewUserRegistrationToAdmin(verfUser, db);
|
||||
verfUser.save(db);
|
||||
msgs.add(MessageType.INFO, "Your email has been successfully verified.");
|
||||
msgs.add(MessageType.WARNING, "The account is waiting account activation by an admin.");
|
||||
msgs.add(new UserMessage(MessageLevel.SUCCESS, lang.getString("email.verification.success")));
|
||||
msgs.add(new UserMessage(MessageLevel.WARNING, lang.getString("user.disabled")));
|
||||
} else {
|
||||
logger.severe("Email verification failed, incorrect hash " + verfUser.getEmail() +
|
||||
"(user) " + request.getParameter("hash") + " = (server) " + verfUser.generateEmailVerificationHash());
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, "Email verification failed."));
|
||||
}
|
||||
else
|
||||
msgs.add(MessageType.ERROR, "Email verification failed!");
|
||||
} else {
|
||||
logger.severe("Email verification failed, unknown user: " + request.getParameter("id"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, "Email verification failed."));
|
||||
}
|
||||
else msgs.add(MessageType.ERROR, "Invalid user id: "+request.getParameter("id"));
|
||||
}
|
||||
|
||||
include(JSP_FILE, request, response);
|
||||
|
|
@ -55,33 +61,33 @@ public class RegisterServlet extends ZalleryServlet {
|
|||
|
||||
|
||||
public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, IOException, ServletException {
|
||||
UserMessage msgs = UserMessage.getUserMessage(request.getSession());
|
||||
UserMessageManager msgs = Zallery.getUserMessage(request.getSession());
|
||||
|
||||
/*
|
||||
* Check inputs
|
||||
*/
|
||||
|
||||
String firstName = (String)request.getAttribute(INPUT_ID_FIRST_NAME);
|
||||
String lastName = (String)request.getAttribute(INPUT_ID_LAST_NAME);
|
||||
String email = (String)request.getAttribute(INPUT_ID_EMAIL);
|
||||
String password = (String)request.getAttribute(INPUT_ID_PASSWORD);
|
||||
String passwordRe = (String)request.getAttribute(INPUT_ID_PASSWORD_REPEATE);
|
||||
String firstName = (String) request.getAttribute(INPUT_ID_FIRST_NAME);
|
||||
String lastName = (String) request.getAttribute(INPUT_ID_LAST_NAME);
|
||||
String email = (String) request.getAttribute(INPUT_ID_EMAIL);
|
||||
String password = (String) request.getAttribute(INPUT_ID_PASSWORD);
|
||||
String passwordRe = (String) request.getAttribute(INPUT_ID_PASSWORD_REPEATE);
|
||||
|
||||
if (firstName == null)
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.not.found.first.name"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found.first.name")));
|
||||
if (lastName == null)
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.not.found.last.name"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found.last.name")));
|
||||
if (email == null)
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.not.found.email"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found.email")));
|
||||
if (password == null)
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.not.found.password"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found.password")));
|
||||
if (passwordRe == null)
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.not.found.password"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.not.found.password")));
|
||||
else if (passwordRe.equals(password))
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.incorrect.password.matching"));
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.incorrect.password.match")));
|
||||
|
||||
if(User.load(db, (String)request.getAttribute(INPUT_ID_EMAIL)) != null){
|
||||
msgs.add(MessageType.ERROR, lang.getString("error.email_exists"));
|
||||
if (User.load(db, (String) request.getAttribute(INPUT_ID_EMAIL)) != null) {
|
||||
msgs.add(new UserMessage(MessageLevel.ERROR, lang.getString("parameter.email.exists")));
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -94,11 +100,11 @@ public class RegisterServlet extends ZalleryServlet {
|
|||
user.setEmail(email);
|
||||
user.setPassword(password);
|
||||
user.save(db);
|
||||
ZalleryEmail.sendVerificationEmail( user );
|
||||
EmailManager.sendVerificationEmail(user);
|
||||
request.getSession().setAttribute("user", user);
|
||||
logger.info("Registered new user: "+user.getName()+".");
|
||||
msgs.add(MessageType.INFO,
|
||||
lang.getString("info.created.account") + " " + lang.getString("info.sent.email.verification"));
|
||||
logger.info("Registered new user: " + user.getName() + ".");
|
||||
msgs.add(new UserMessage(MessageLevel.INFO,
|
||||
lang.getString("account.created") + " " + lang.getString("email.verification.sent")));
|
||||
|
||||
forward("/login", request, response);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,10 +22,10 @@ public class UserListServlet extends ZalleryServlet {
|
|||
private static final String JSP_FILE = "page_users.jsp";
|
||||
|
||||
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, SQLException, IOException {
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, SQLException, IOException {
|
||||
List<User> users = User.load(db);
|
||||
request.setAttribute("users", users);
|
||||
|
||||
include(JSP_FILE, request, response);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,147 +0,0 @@
|
|||
package zall.util;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.Queue;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import zutil.log.LogUtil;
|
||||
|
||||
/**
|
||||
* This class represents all the messages to a single user.
|
||||
* The class is implemented as an Iterator.
|
||||
*
|
||||
* <XMP>
|
||||
* Example HTML:
|
||||
*
|
||||
<SCRIPT type="text/javascript">
|
||||
jQuery(document).ready(function(){
|
||||
jQuery(".message").click(function(){
|
||||
jQuery(this).animate({
|
||||
opacity: 0
|
||||
}, 300).animate({
|
||||
height: 0,
|
||||
border: 0
|
||||
}, 300, function(){
|
||||
jQuery(this).css("display","none");
|
||||
});
|
||||
});
|
||||
});
|
||||
</SCRIPT>
|
||||
<div class="menu">
|
||||
<div class="message" style="border: 2px solid #E6E600; padding: 0px; margin: 5px; background: #FFFF99 none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b>Warning:</b></center>
|
||||
</div>
|
||||
<div class="message" style="border: 2px solid #FF0000; padding: 0px; margin: 5px; background: #FFDDCC none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b>Error:</b></center>
|
||||
</div>
|
||||
<div class="message" style="border: 2px solid #039C00; padding: 0px; margin: 5px; background: #9BFB66 none repeat scroll 0%; font-size: 11px; color: black; border-radius: 7px;">
|
||||
<center><b>Info:</b></center>
|
||||
</div>
|
||||
</div>
|
||||
*
|
||||
* </XMP>
|
||||
*
|
||||
* @author Ziver
|
||||
*/
|
||||
public class UserMessage{
|
||||
public static final Logger logger = LogUtil.getLogger();
|
||||
public static final String SESSION_USERMESSAGE_KEY = "AJAX_USER_MESSAGES";
|
||||
|
||||
/**
|
||||
* Is the different types of messages
|
||||
*/
|
||||
public enum MessageType{
|
||||
ERROR, WARNING, INFO
|
||||
}
|
||||
/**
|
||||
* This class represents a single message to a user
|
||||
*/
|
||||
protected class Message{
|
||||
MessageType type;
|
||||
String msg;
|
||||
}
|
||||
/** is the queue that contains the messages **/
|
||||
private Queue<Message> msg_queue;
|
||||
/** is the current message **/
|
||||
private Message current;
|
||||
|
||||
|
||||
public UserMessage(){
|
||||
msg_queue = new LinkedList<>();
|
||||
}
|
||||
|
||||
//******** Queue methods
|
||||
|
||||
/**
|
||||
* Adds a new message to the queue
|
||||
*
|
||||
* @param type is the type of the message
|
||||
* @param msg is the message itself
|
||||
*/
|
||||
public void add(MessageType type, String msg){
|
||||
Message m = new Message();
|
||||
m.type = type;
|
||||
m.msg = msg;
|
||||
msg_queue.add( m );
|
||||
logger.finer("Queueing(Size: "+msg_queue.size()+") user message: "+type+"= \""+msg+"\"");
|
||||
}
|
||||
|
||||
/**
|
||||
* @return if there is more messages in the queue
|
||||
*/
|
||||
public boolean hasNext(){
|
||||
return msg_queue.size() != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Polls a new message from the Queue
|
||||
*
|
||||
* @return if the poll was successful
|
||||
*/
|
||||
public boolean next(){
|
||||
boolean tmp = hasNext();
|
||||
current = msg_queue.poll();
|
||||
return tmp;
|
||||
}
|
||||
|
||||
public int size(){
|
||||
return msg_queue.size();
|
||||
}
|
||||
|
||||
public void clear(){
|
||||
msg_queue.clear();
|
||||
}
|
||||
|
||||
//******** Message Methods
|
||||
|
||||
/**
|
||||
* @return the type of the current message
|
||||
*/
|
||||
public MessageType getType(){
|
||||
return current.type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the message of the current one
|
||||
*/
|
||||
public String getMessage(){
|
||||
return current.msg;
|
||||
}
|
||||
|
||||
//******** Static methods
|
||||
|
||||
public static UserMessage getUserMessage(HttpSession session){
|
||||
if( session.getAttribute(SESSION_USERMESSAGE_KEY) == null ){
|
||||
UserMessage msg = new UserMessage();
|
||||
msg.setSession( session );
|
||||
return msg;
|
||||
}
|
||||
return (UserMessage) session.getAttribute(SESSION_USERMESSAGE_KEY);
|
||||
}
|
||||
|
||||
public void setSession(HttpSession session) {
|
||||
session.setAttribute(SESSION_USERMESSAGE_KEY, this);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue