⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 generaladmintaskswebhandler.java

📁 解觖java技术中后台无法上传数给的情况
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
/*
 * $Header: /cvsroot/mvnforum/mvnforum/src/com/mvnforum/admin/GeneralAdminTasksWebHandler.java,v 1.73 2006/04/14 17:05:25 minhnn Exp $
 * $Author: minhnn $
 * $Revision: 1.73 $
 * $Date: 2006/04/14 17:05:25 $
 *
 * ====================================================================
 *
 * Copyright (C) 2002-2006 by MyVietnam.net
 *
 * All copyright notices regarding mvnForum MUST remain 
 * intact in the scripts and in the outputted HTML.
 * The "powered by" text/logo with a link back to
 * http://www.mvnForum.com and http://www.MyVietnam.net in 
 * the footer of the pages MUST remain visible when the pages
 * are viewed on the internet or intranet.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 * Support can be obtained from support forums at:
 * http://www.mvnForum.com/mvnforum/index
 *
 * Correspondence and Marketing Questions can be sent to:
 * info at MyVietnam net
 *
 * @author: Minh Nguyen  
 * @author: Mai  Nguyen  
 * @author: Igor Manic   
 */
package com.mvnforum.admin;

import java.io.*;
import java.sql.Timestamp;
import java.util.*;
import java.util.Date;

import javax.mail.MessagingException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.mvnforum.*;
import com.mvnforum.auth.*;
import com.mvnforum.common.SendMailUtil;
import com.mvnforum.db.*;
import com.mvnforum.search.company.CompanyIndexer;
import com.mvnforum.search.member.MemberIndexer;
import com.mvnforum.search.post.PostIndexer;
import com.mvnforum.search.post.RebuildPostIndexTask;
import freemarker.template.*;
import net.myvietnam.mvncore.exception.*;
import net.myvietnam.mvncore.filter.HtmlNewLineFilter;
import net.myvietnam.mvncore.util.*;
import net.myvietnam.mvncore.web.GenericRequest;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class GeneralAdminTasksWebHandler {

    private static Log log = LogFactory.getLog(GeneralAdminTasksWebHandler.class);

    private OnlineUserManager onlineUserManager = OnlineUserManager.getInstance();

    public GeneralAdminTasksWebHandler() {
    }

    public void prepareShowIndex(GenericRequest request)
        throws DatabaseException, AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        Timestamp now = DateUtil.getCurrentGMTTimestamp();
        Timestamp startTimestamp = MVNForumContextListener.getInstance().getStartTimestamp();
        long upTime = now.getTime() - startTimestamp.getTime();

        request.setAttribute("StartTime", onlineUser.getGMTTimestampFormat(startTimestamp));
        request.setAttribute("NowTime", onlineUser.getGMTTimestampFormat(now));
        request.setAttribute("UpTime", DateUtil.formatDuration(upTime));
    }

    public void prepareTestSystem(GenericRequest request)
        throws DatabaseException, AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();
    }

    public void changeShowUserArea(GenericRequest request)
        throws DatabaseException, AuthenticationException,
        BadInputException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        String mode = GenericParamUtil.getParameterSafe(request, "mode", true);

        if (mode.equals("on")) {
            MVNForumConfig.setShouldShowUserArea(true);
        } else if (mode.equals("off")) {
            MVNForumConfig.setShouldShowUserArea(false);
        } else {
            throw new BadInputException("Not support this mode " + mode);
        }
    }

    public void processClearCache(GenericRequest request)
        throws BadInputException, AuthenticationException, DatabaseException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        String target = GenericParamUtil.getParameterSafe(request, "target", true);

        if (target.equals("member")) {
            MemberCache.getInstance().clear();
        } else if (target.equals("post")) {
            PostCache.getInstance().clear();
        } else if (target.equals("thread")) {
            ThreadCache.getInstance().clear();
        } else if (target.equals("forum")) {
            ForumCache.getInstance().clear();
        } else if (target.equals("category")) {
            CategoryCache.getInstance().clear();
        } else if (target.equals("all")) {
            MemberCache.getInstance().clear();
            PostCache.getInstance().clear();
            ThreadCache.getInstance().clear();
            ForumCache.getInstance().clear();
            CategoryCache.getInstance().clear();
        } else {
            throw new BadInputException("Not support this target " + target);
        }
    }

    public void prepareImportExport(HttpServletRequest request)
        throws DatabaseException, AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        request.setAttribute("BackupFilesOnServer", ImportWebHandler.getBackupFilesOnServer());
    }

    public void importXmlZip(HttpServletRequest request, HttpServletResponse response)
        throws DatabaseException, AssertionException, AuthenticationException, ImportException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        ImportWebHandler.importXmlZip(request, response);
    }

    public void exportXmlZip(HttpServletRequest request)
        throws DatabaseException, AssertionException, AuthenticationException, ExportException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        ExportWebHandler.exportXmlZip(request);
    }

    public void getExportXmlZip(HttpServletRequest request, HttpServletResponse response)
        throws BadInputException, DatabaseException, AssertionException, AuthenticationException, IOException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        ExportWebHandler.getExportXmlZip(request, response);
    }

    public void deleteExportXmlZip(GenericRequest request)
        throws BadInputException, DatabaseException, AssertionException, AuthenticationException, IOException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        ExportWebHandler.deleteExportXmlZip(request);
        //now prepare all for redirection to "/importexport"
        request.setAttribute("BackupFilesOnServer", ImportWebHandler.getBackupFilesOnServer());
    }

    public void prepareRebuildIndex(GenericRequest request)
        throws DatabaseException, AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        int postNumDocs = PostIndexer.getNumDocs();
        int memberNumDocs = MemberIndexer.getNumDocs();
        int companyNumDocs = -1;
        if (MVNForumConfig.getEnableCompany()) {
            companyNumDocs = CompanyIndexer.getNumDocs();
        }

        int postCount = DAOFactory.getPostDAO().getNumberOfPosts();
        int memberCount = DAOFactory.getMemberDAO().getNumberOfMembers();
        int companyCount = 0;
        if (MVNForumConfig.getEnableCompany()) {
            companyCount = DAOFactory.getCompanyDAO().getNumberOfCompanies();
        }

        request.setAttribute("PostNumDocs", new Integer(postNumDocs));
        request.setAttribute("PostCount", new Integer(postCount));

        request.setAttribute("MemberNumDocs", new Integer(memberNumDocs));
        request.setAttribute("MemberCount", new Integer(memberCount));

        request.setAttribute("CompanyNumDocs", new Integer(companyNumDocs));
        request.setAttribute("CompanyCount", new Integer(companyCount));
    }

    public void rebuildIndex(GenericRequest request)
        throws DatabaseException, AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        String target = GenericParamUtil.getParameter(request, "target");

        if (target.equalsIgnoreCase("post")) {
            if ( !RebuildPostIndexTask.isRebuilding()) {
                PostIndexer.scheduleRebuildIndexTask();
            }
        } else if (target.equalsIgnoreCase("member")) {
            MemberIndexer.scheduleRebuildIndexTask();
        } else if (target.equalsIgnoreCase("company") && MVNForumConfig.getEnableCompany()) {
            CompanyIndexer.scheduleRebuildIndexTask();
        } else if (target.length() == 0) {
            PostIndexer.scheduleRebuildIndexTask();
            MemberIndexer.scheduleRebuildIndexTask();
            if (MVNForumConfig.getEnableCompany()) {
                CompanyIndexer.scheduleRebuildIndexTask();
            }
        }
    }

    public void prepareSendMail(GenericRequest request)
        throws BadInputException, DatabaseException,
        AuthenticationException, AssertionException, ObjectNotFoundException {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -