📄 extractdeploysite.java
字号:
dom = grpServ.getGroupsAsDOM(0); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, ExtDepSiteConstants.SERVERADMINGROUP_FILE); } // EXTRACT SERVER ADMIN GROUP PROPS dom = null; dom = grpServ.getGroupPropsAsDOM(0); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, ExtDepSiteConstants.SERVERADMINGROUPPROPS_FILE); } // EXTRACT USER GROUP ACCESS dom = null; for ( int i=0 ; i<size ; i++ ){ usrProviderBean = (UserManagerProviderBean)usrProviders.get(i); dom = usrProviderBean.getInstance().getUserGroupAccessAsDOM(0); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, usrProviderBean.getKey() + "_" + ExtDepSiteConstants.USERGROUPACCESS_FILE); } } /* dom = null; dom = grpServ.getUserGroupAccessAsDOM(0); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, ExtDepSiteConstants.USERGROUPACCESS_FILE); } */ // EXTRACT APPLICATION GROUP ACCESS dom = null; dom = grpServ.getAppGroupAccessAsDOM(0); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, ExtDepSiteConstants.APPGROUPACCESS_FILE); } // EXTRACT AUTO IDS dom = null; dom = dbIncServ.getAutoIdsAsDOM(); if ( dom != null ){ saveDOMDocument(dom,xmlDocFolder, ExtDepSiteConstants.AUTOIDS_FILE); } dom = null; xmlDocFolder = null; } catch ( Throwable t ){ JahiaConsole.println(CLASS_NAME+".extractServerInfo"," exception " + t.getMessage()); t.printStackTrace(); throw new JahiaException("Error occured while processing your request", CLASS_NAME+"extractServerInfo: " + t.toString(), JahiaException.ERROR, JahiaException.ERROR); } } //-------------------------------------------------------------------------- /** * Extract Big Text for a gived Site * * @author Khue Nguyen * * @param JahiaSite the site. * @return false on error */ private boolean extractBigText(JahiaSite site) throws JahiaException { // start the chrono... long startTime = JahiaChrono.getInstance().start(); JahiaTextFileService fileServ = sReg.getJahiaTextFileService(); if ( site == null || fileServ == null ){ return false; } File f = new File(mSiteExtractionFolder +File.separator +site.getSiteKey() +File.separator +mDATA); f.mkdirs(); if ( !f.isDirectory() ){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Cannot create directory to store big text", JahiaException.FILE_ERROR, JahiaException.ERROR); } try { if ( fileServ.copySiteBigText(site.getID(),f.getAbsolutePath())<0){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Error copying big text files", JahiaException.FILE_ERROR, JahiaException.ERROR); } } catch ( IOException ioe ){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Error copying big text files", JahiaException.FILE_ERROR, JahiaException.ERROR); } JahiaConsole.finalPrintln( "ExtractDeploySite", "Bigtext extraction time [" +JahiaChrono.getInstance().read(startTime)+"ms]"); return true; } //-------------------------------------------------------------------------- /** * Extract Search indexes for a given Site * * @author Khue Nguyen * * @param JahiaSite the site. * @return false on error */ private boolean extractSearchIndex(JahiaSite site) throws JahiaException { if ( site == null ){ return false; } JahiaSearchService searchServ = ServicesRegistry.getInstance().getJahiaSearchService(); if ( searchServ == null ){ return false; } String indexPath = searchServ.getSiteIndex(site.getID()); if ( indexPath == null ){ return false; } File f = null; f = new File(indexPath); if ( f.isDirectory() && f.canRead() ){ StringBuffer destFolder = new StringBuffer(mSiteExtractionFolder); destFolder.append(File.separator); destFolder.append(site.getSiteKey()); destFolder.append(File.separator); destFolder.append(mSEARCHINDEX); destFolder.append(File.separator); destFolder.append(site.getSiteKey()); try { File dest = new File(destFolder.toString()); dest.mkdirs(); dest = null; JahiaTools.copyFolderContent(f.getAbsolutePath(),destFolder.toString()); } catch ( IOException ioe ){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Exception while copying files from " + f.getAbsolutePath(), JahiaException.FILE_ERROR, JahiaException.ERROR); } } f = null; return true; } //-------------------------------------------------------------------------- /** * Extract Files for a gived Site * * @author Khue Nguyen * * @param JahiaSite the site. * @return false on error */ private boolean extractFiles(JahiaSite site) throws JahiaException { // start the chrono... long startTime = JahiaChrono.getInstance().start(); if ( site == null ){ return false; } File f = null; f = new File(mFilemanagerFullPath+File.separator+site.getSiteKey()); if ( f.isDirectory() && f.canRead() ){ StringBuffer destFolder = new StringBuffer(mSiteExtractionFolder); destFolder.append(File.separator); destFolder.append(site.getSiteKey()); destFolder.append(File.separator); destFolder.append(mFILEMANAGER); destFolder.append(File.separator); destFolder.append(site.getSiteKey()); try { File dest = new File(destFolder.toString()); dest.mkdirs(); dest = null; JahiaTools.copyFolderContent(f.getAbsolutePath(),destFolder.toString()); } catch ( IOException ioe ){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Exception while copying files from " + f.getAbsolutePath(), JahiaException.FILE_ERROR, JahiaException.ERROR); } } f = null; JahiaConsole.finalPrintln( "ExtractDeploySite", "Files extraction time [" +JahiaChrono.getInstance().read(startTime)+"ms]"); return true; } //-------------------------------------------------------------------------- /** * Extract Field definitions for a gived Site * * @author Khue Nguyen * * @param JahiaSite the site. * @return false on error */ private boolean extractFieldDefinitions(JahiaSite site) throws JahiaException { // start the chrono... long startTime = JahiaChrono.getInstance().start(); if ( site == null ){ return false; } File f = null; f = new File(ServicesRegistry.getInstance().getJahiaFieldService().getFieldDefinitionsDiskPath()); if ( f.isDirectory() && f.canRead() ){ StringBuffer destFolder = new StringBuffer(mSiteExtractionFolder); destFolder.append(File.separator); destFolder.append(site.getSiteKey()); destFolder.append(File.separator); destFolder.append(mFIELD_DEFINITIONS); try { File dest = new File(destFolder.toString()); dest.mkdirs(); File[] files = f.listFiles(); File aFile = null; for ( int i=0 ; i<files.length ; i++ ){ aFile = files[i]; if ( aFile.isFile() && aFile.getName().startsWith(site.getID()+"_") ) { File destFile = new File(dest.getAbsolutePath() + File.separator + aFile.getName() ); destFile.createNewFile(); JahiaTools.copyStream(new FileInputStream(aFile),new FileOutputStream(destFile)); } } } catch ( IOException ioe ){ throw new JahiaException("Error occured while processing your request", CLASS_NAME+": Exception while copying file definition ", JahiaException.FILE_ERROR, JahiaException.ERROR); } } f = null; JahiaConsole.finalPrintln( "ExtractDeploySite", "Files extraction time [" +JahiaChrono.getInstance().read(startTime)+"ms]"); return true; } //-------------------------------------------------------------------------- /** * Extract a site's applications for Tomcat server. * * @author Khue Nguyen * * @param JahiaSite the site. * @return false on error */ private boolean extractTomcatApplications(JahiaSite site) throws JahiaException { // start the chrono... long startTime = JahiaChrono.getInstance().start(); //JahiaConsole.println(CLASS_NAME+".extractTomcatApplications","started"); JahiaApplicationsManagerService appServ = sReg.getJahiaApplicationsManagerService(); if ( site == null || appServ == null ){ return false; } String serverPath = properties.getProperty("serverHomeDiskPath").trim(); if ( (serverPath == null) || serverPath.equals("") ){ return false; } File f = new File(serverPath); if ( !f.isDirectory() ){ return false; } // create the extraction folder for web applications f = null; StringBuffer buff = new StringBuffer(mSiteExtractionFolder); buff.append(File.separator); buff.append(site.getSiteKey()); buff.append(File.separator); buff.append(mAPPS); buff.append(File.separator); // create the extract folder String appsExtractFolder = buff.toString(); f = new File(appsExtract
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -