📄 getbookshelfevent.java
字号:
package eols.event.user;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import eols.bean.system.*;
import eols.tools.*;
import eols.bean.course.*;
import eols.storage.user.UserStorageManager;
import eols.event.system.*;
import eols.bean.user.UserData;
public class GetBookShelfEvent
extends EventHandlerBase {
/**
* 事件的处理逻辑
*/
public void process(ServletContext sc, HttpServletRequest request,
HttpServletResponse response, HashMap bean) {
String loginID = SessionUtils.getStringSessionAttribute(request,
"loginID", null);
if (loginID == null) {
throw new RuntimeException(
"Can not get your login information, please login");
}
// Get book list
String booklist = UserStorageManager.getBookShelfList(loginID);
StringTokenizer st = new StringTokenizer(booklist, ",");
Set all = new HashSet();
while (st.hasMoreTokens()) {
all.add(st.nextToken());
}
// Get category and courses
List c = new ArrayList();
Map result = new HashMap();
Set cids = new HashSet();
List categories = (List) SessionUtils.getSessionAttribute(request,
"categoriescourses");
Map courses = new HashMap();
if (categories != null && !categories.isEmpty()) {
courses = (Map) categories.get(categories.size() - 1);
}
int index = 0;
// Locate category and courses
Iterator iter1 = all.iterator();
while (iter1.hasNext()) {
String courseID = (String) iter1.next();
if (categories != null && !categories.isEmpty()) {
for (int i = 0; i < categories.size() - 1; i++) {
Category cat = (Category) categories.get(i);
Iterator iter = courses.keySet().iterator();
while (iter.hasNext()) {
Course course = (Course) courses.get(iter.next());
if (course.getId() == Long.parseLong(courseID) &&
course.getCategoryID() == cat.getId()) {
cids.add(new Long(cat.getId()));
result.put("course" + (index++), course);
}
}
}
}
}
// Get categories
iter1 = cids.iterator();
while (iter1.hasNext()) {
long catID = ( (Long) iter1.next()).longValue();
if (categories != null && !categories.isEmpty()) {
for (int i = 0; i < categories.size() - 1; i++) {
Category cat = (Category) categories.get(i);
if (cat.getId() == catID) {
c.add(cat);
}
}
}
}
if (c.isEmpty()) {
Result r = new Result();
r.setHandleResult("No courses are added in your book shelf.");
request.setAttribute("result", r);
((SysFunction)request.getAttribute("sysFunction")).setSysFunctionLink("/jsp/result.jsp");
return;
} else {
((SysFunction)request.getAttribute("sysFunction")).setSysFunctionLink("/jsp/bookshelf.jsp");
}
c.add(result);
// Save to be the attribute
request.setAttribute("categoriescourses", c);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -