亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cmsupdatebean.java

?? cms是開源的框架
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/*
 * File   : $Source: /usr/local/cvs/opencms/src/org/opencms/setup/CmsUpdateBean.java,v $
 * Date   : $Date: 2006/03/27 14:52:51 $
 * Version: $Revision: 1.6 $
 *
 * This library is part of OpenCms -
 * the Open Source Content Mananagement System
 *
 * Copyright (c) 2005 Alkacon Software GmbH (http://www.alkacon.com)
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library 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
 * Lesser General Public License for more details.
 *
 * For further information about Alkacon Software GmbH, please see the
 * company website: http://www.alkacon.com
 *
 * For further information about OpenCms, please see the
 * project website: http://www.opencms.org
 * 
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

package org.opencms.setup;

import org.opencms.configuration.CmsConfigurationManager;
import org.opencms.configuration.CmsModuleConfiguration;
import org.opencms.file.CmsResource;
import org.opencms.i18n.CmsEncoder;
import org.opencms.main.CmsLog;
import org.opencms.main.CmsSystemInfo;
import org.opencms.main.OpenCms;
import org.opencms.module.CmsModule;
import org.opencms.module.CmsModuleVersion;
import org.opencms.module.CmsModuleXmlHandler;
import org.opencms.report.CmsShellReport;
import org.opencms.report.I_CmsReport;
import org.opencms.util.CmsStringUtil;
import org.opencms.xml.CmsXmlException;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import javax.servlet.jsp.JspWriter;

import org.apache.commons.logging.Log;

/**
 * A java bean as a controller for the OpenCms update wizard.<p>
 * 
 * @author  Michael Moossen
 * 
 * @version $Revision: 1.6 $ 
 * 
 * @since 6.0.0 
 */
public class CmsUpdateBean extends CmsSetupBean {

    /** name of the update folder. */
    public static final String FOLDER_UPDATE = "update" + File.separatorChar;

    /** replace pattern constant for the cms script. */
    private static final String C_ADMIN_GROUP = "@ADMIN_GROUP@";

    /** replace pattern constant for the cms script. */
    private static final String C_ADMIN_PWD = "@ADMIN_PWD@";

    /** replace pattern constant for the cms script. */
    private static final String C_ADMIN_USER = "@ADMIN_USER@";

    /** replace pattern constant for the cms script. */
    private static final String C_UPDATE_PROJECT = "@UPDATE_PROJECT@";

    /** replace pattern constant for the cms script. */
    private static final String C_UPDATE_SITE = "@UPDATE_SITE@";

    /** The static log object for this class. */
    private static final Log LOG = CmsLog.getLog(CmsUpdateBean.class);

    /** The used admin user name. */
    private String m_adminGroup = "_tmpUpdateGroup" + (System.currentTimeMillis() % 1000);

    /** the admin user password. */
    private String m_adminPwd = "admin";

    /** The used admin user name. */
    private String m_adminUser = "Admin";

    /** List of module to be updated. */
    private List m_modulesToUpdate;

    /** the update project. */
    private String m_updateProject = "_tmpUpdateProject" + (System.currentTimeMillis() % 1000);

    /** the site for update. */
    private String m_updateSite = CmsResource.VFS_FOLDER_SITES + "/default/";

    /** Cache for the up-to-date module names. */
    private List m_uptodateModules;

    /** The workplace import thread. */
    private CmsUpdateThread m_workplaceUpdateThread;

    /** 
     * Default constructor.<p>
     */
    public CmsUpdateBean() {

        super();
        m_modulesFolder = FOLDER_UPDATE + CmsSystemInfo.FOLDER_MODULES;
        m_logFile = FOLDER_WEBINF + CmsLog.FOLDER_LOGS + "update.log";
    }

    /**
     * Returns html code to display an error.<p> 
     * 
     * @param pathPrefix to adjust the path
     * 
     * @return html code
     */
    public String displayError(String pathPrefix) {

        if (pathPrefix == null) {
            pathPrefix = "";
        }
        StringBuffer html = new StringBuffer(512);
        html.append("<table border='0' cellpadding='5' cellspacing='0' style='width: 100%; height: 100%;'>");
        html.append("\t<tr>");
        html.append("\t\t<td style='vertical-align: middle; height: 100%;'>");
        html.append(getHtmlPart("C_BLOCK_START", "Error"));
        html.append("\t\t\t<table border='0' cellpadding='0' cellspacing='0' style='width: 100%;'>");
        html.append("\t\t\t\t<tr>");
        html.append("\t\t\t\t\t<td><img src='").append(pathPrefix).append("resources/error.png' border='0'></td>");
        html.append("\t\t\t\t\t<td>&nbsp;&nbsp;</td>");
        html.append("\t\t\t\t\t<td style='width: 100%;'>");
        html.append("\t\t\t\t\t\tThe Alkacon OpenCms update wizard has not been started correctly!<br>");
        html.append("\t\t\t\t\t\tPlease click <a href='").append(pathPrefix);
        html.append("index.jsp'>here</a> to restart the wizard.");
        html.append("\t\t\t\t\t</td>");
        html.append("\t\t\t\t</tr>");
        html.append("\t\t\t</table>");
        html.append(getHtmlPart("C_BLOCK_END"));
        html.append("\t\t</td>");
        html.append("\t</tr>");
        html.append("</table>");
        return html.toString();
    }

    /**
     * Returns the admin Pwd.<p>
     *
     * @return the admin Pwd
     */
    public String getAdminPwd() {

        return m_adminPwd;
    }

    /**
     * Returns the admin User.<p>
     *
     * @return the admin User
     */
    public String getAdminUser() {

        return m_adminUser;
    }

    /**
     * Returns a map of all previously installed modules.<p>
     * 
     * @return a map of <code>[String, {@link org.opencms.module.CmsModuleVersion}]</code> objects
     * 
     * @see org.opencms.module.CmsModuleManager#getAllInstalledModules()
     */
    public Map getInstalledModules() {

        String file = CmsModuleConfiguration.DEFAULT_XML_FILE_NAME;
        // /opencms/modules/module[?]
        String basePath = new StringBuffer("/").append(CmsConfigurationManager.N_ROOT).append("/").append(
            CmsModuleConfiguration.N_MODULES).append("/").append(CmsModuleXmlHandler.N_MODULE).append("[?]/").toString();
        Map modules = new HashMap();
        String name = "";
        for (int i = 1; name != null; i++) {
            if (i > 1) {
                String ver = CmsModuleVersion.DEFAULT_VERSION;
                try {
                    ver = getXmlHelper().getValue(
                        file,
                        CmsStringUtil.substitute(basePath, "?", "" + (i - 1)) + CmsModuleXmlHandler.N_VERSION);
                } catch (CmsXmlException e) {
                    // ignore
                }
                modules.put(name, new CmsModuleVersion(ver));
            }
            try {
                name = getXmlHelper().getValue(
                    file,
                    CmsStringUtil.substitute(basePath, "?", "" + i) + CmsModuleXmlHandler.N_NAME);
            } catch (CmsXmlException e) {
                // ignore
            }
        }
        return modules;
    }

    /**
     * List of modules to be updated.<p>
     * 
     * @return a list of module names
     */
    public List getModulesToUpdate() {

        if (m_modulesToUpdate == null) {
            getUptodateModules();
        }
        return m_modulesToUpdate;
    }

    /**
     * Returns the update Project.<p>
     *
     * @return the update Project
     */
    public String getUpdateProject() {

        return m_updateProject;
    }

    /**
     * Returns the update site.<p>
     *
     * @return the update site
     */
    public String getUpdateSite() {

        return m_updateSite;
    }

    /**
     * Returns the modules that does not need to be updated.<p>
     * 
     * @return a list of module names
     */
    public List getUptodateModules() {

        if (m_uptodateModules == null) {
            m_uptodateModules = new ArrayList();
            m_modulesToUpdate = new ArrayList();
            Map installedModules = getInstalledModules();
            Map availableModules = getAvailableModules();
            Iterator itMods = availableModules.keySet().iterator();
            while (itMods.hasNext()) {
                String name = (String)itMods.next();
                CmsModuleVersion instVer = (CmsModuleVersion)installedModules.get(name);
                CmsModuleVersion availVer = ((CmsModule)availableModules.get(name)).getVersion();
                boolean uptodate = (instVer != null && instVer.compareTo(availVer) >= 0);
                if (uptodate) {
                    m_uptodateModules.add(name);
                } else {
                    m_modulesToUpdate.add(name);
                }
                if (LOG.isDebugEnabled()) {
                    LOG.debug(name
                        + " --- installed: "
                        + instVer
                        + " available: "
                        + availVer
                        + " --- uptodate: "
                        + uptodate);
                }
            }
        }
        return m_uptodateModules;
    }

    /**
     * Returns the workplace update thread.<p>
     * 
     * @return the workplace update thread
     */
    public CmsUpdateThread getWorkplaceUpdateThread() {

        return m_workplaceUpdateThread;
    }

    /**
     * @see org.opencms.setup.CmsSetupBean#htmlModules()
     */
    public String htmlModules() {

        StringBuffer html = new StringBuffer(1024);
        Set uptodate = new HashSet(getUptodateModules());
        Iterator itModules = sortModules(getAvailableModules().values()).iterator();
        boolean hasModules = false;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区在线播| 狠狠色2019综合网| 久久综合狠狠综合久久激情 | 亚洲综合久久久久| 久久女同精品一区二区| 欧美三级一区二区| www.欧美.com| 国产一区二区0| 日本不卡的三区四区五区| 亚洲精品综合在线| 欧美激情一区二区三区蜜桃视频 | 国产精品乱人伦中文| 欧美一区二区三区视频| 在线看一区二区| 成人免费三级在线| 国模娜娜一区二区三区| 爽好多水快深点欧美视频| 亚洲九九爱视频| 亚洲婷婷国产精品电影人久久| 2022国产精品视频| 欧美一卡2卡3卡4卡| 欧美电影一区二区| 欧美日韩一区在线| 欧美日韩在线播放三区| 欧美中文字幕一区| 欧美在线视频你懂得| 91福利精品视频| 91视频xxxx| 99精品视频在线免费观看| 成人免费毛片app| 丁香五精品蜜臀久久久久99网站| 国产剧情一区在线| 国产乱理伦片在线观看夜一区| 国内精品写真在线观看| 精品一区二区三区久久久| 青青草97国产精品免费观看无弹窗版| 婷婷综合在线观看| 日本美女视频一区二区| 日本成人在线网站| 韩国精品主播一区二区在线观看| 青青草精品视频| 蜜臀va亚洲va欧美va天堂| 蜜乳av一区二区| 九色|91porny| 成人免费的视频| 91无套直看片红桃| 欧美在线一区二区三区| 欧美乱妇20p| 26uuu另类欧美| 国产日韩欧美精品在线| 国产精品福利影院| 一区二区三区在线观看动漫| 亚洲国产另类精品专区| 美腿丝袜亚洲综合| 国产成人av福利| 91小视频免费观看| 欧美女孩性生活视频| 欧美xxxxxxxxx| 中文av一区特黄| 亚洲国产中文字幕在线视频综合| 午夜视频在线观看一区| 久热成人在线视频| 国产成人精品影视| 91精品福利视频| 日韩欧美国产电影| 国产精品美女www爽爽爽| 一区二区三区日韩| 蜜臀av一区二区在线免费观看| 国产精品一区二区黑丝| 91麻豆免费观看| 91精品国产综合久久婷婷香蕉| 26uuu另类欧美| 亚洲天堂中文字幕| 久久99在线观看| 色综合欧美在线视频区| 精品久久久久久最新网址| 国产精品美女久久久久久久 | 高清视频一区二区| 一本大道久久a久久综合| 91精品国产美女浴室洗澡无遮挡| xfplay精品久久| 亚洲欧美日韩综合aⅴ视频| 蜜臀久久99精品久久久久久9 | 久久国产精品99久久久久久老狼| 国产精品亚洲第一| 欧美三级三级三级爽爽爽| 久久久www免费人成精品| 亚洲综合色网站| 福利一区二区在线观看| 欧美午夜影院一区| 国产欧美一区二区精品仙草咪| 亚洲小说欧美激情另类| 国产成人日日夜夜| 日韩亚洲欧美一区二区三区| 中文字幕在线一区| 经典一区二区三区| 欧美日韩高清影院| 亚洲欧美影音先锋| 黄色日韩三级电影| 3751色影院一区二区三区| 亚洲青青青在线视频| 国产精品一级片| 日韩三级高清在线| 亚洲成人免费在线| 色噜噜久久综合| 国产欧美日韩在线视频| 久草中文综合在线| 欧美顶级少妇做爰| 亚洲成人777| 91网址在线看| 中文字幕亚洲精品在线观看| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲成人av一区二区三区| 99re在线精品| 国产精品精品国产色婷婷| 激情伊人五月天久久综合| 制服丝袜亚洲播放| 亚洲一区二区四区蜜桃| 99vv1com这只有精品| 国产精品免费久久| 成人黄色片在线观看| 国产女同性恋一区二区| 国产乱妇无码大片在线观看| 精品国产乱码91久久久久久网站| 免费在线观看一区二区三区| 精品视频全国免费看| 亚洲一区二区精品视频| 欧洲色大大久久| 亚洲最色的网站| 在线观看欧美日本| 亚洲国产精品久久一线不卡| 色8久久人人97超碰香蕉987| 亚洲欧美日韩一区| 欧美性猛片xxxx免费看久爱| 亚洲另类春色国产| 欧美在线观看一区二区| 一区二区三区欧美视频| 精品视频在线免费看| 日精品一区二区| 3d成人h动漫网站入口| 久久国产剧场电影| 久久夜色精品一区| 国产 欧美在线| 18成人在线视频| 欧美亚洲国产bt| 日日夜夜一区二区| 日韩精品一区二区三区四区| 国产精品一区免费在线观看| 欧美激情一区二区| 色哟哟在线观看一区二区三区| 一区二区三区四区在线播放 | 在线观看日韩国产| 婷婷成人激情在线网| 欧美一区二区福利视频| 韩国午夜理伦三级不卡影院| 国产精品女主播在线观看| 91女人视频在线观看| 午夜亚洲福利老司机| 精品久久人人做人人爰| zzijzzij亚洲日本少妇熟睡| 亚洲综合在线五月| 日韩欧美三级在线| 99视频一区二区| 日日欢夜夜爽一区| 欧美激情在线看| 欧美在线不卡一区| 蜜乳av一区二区| 亚洲欧洲av一区二区三区久久| 欧美图片一区二区三区| 久草精品在线观看| 亚洲蜜臀av乱码久久精品 | 国产亚洲精品中文字幕| 91麻豆蜜桃一区二区三区| 日韩二区在线观看| 欧美国产精品v| 欧美亚洲图片小说| 国产福利视频一区二区三区| 亚洲尤物在线视频观看| 久久嫩草精品久久久久| 在线国产电影不卡| 国产一区二区三区电影在线观看 | www国产成人| 欧美在线影院一区二区| 国产精选一区二区三区| 亚洲永久精品大片| 国产亚洲一区二区在线观看| 欧美午夜精品一区二区三区| 国产一区二区三区免费| 午夜国产精品一区| 亚洲丝袜美腿综合| 久久女同互慰一区二区三区| 欧美人牲a欧美精品| 91偷拍与自偷拍精品| 久久国产福利国产秒拍| 午夜久久久久久电影| 亚洲人成影院在线观看| xnxx国产精品| 日韩欧美一二三区| 欧美日本一区二区| 日本福利一区二区|