cmsimportexportconfiguration.java
来自「找了很久才找到到源代码」· Java 代码 · 共 999 行 · 第 1/3 页
JAVA
999 行
+ N_PRINCIPALTRANSLATION, 0, A_TYPE);
digester.addCallParam("*/"
+ N_IMPORTEXPORT
+ "/"
+ N_IMPORT
+ "/"
+ N_PRINCIPALTRANSLATIONS
+ "/"
+ N_PRINCIPALTRANSLATION, 1, A_FROM);
digester.addCallParam("*/"
+ N_IMPORTEXPORT
+ "/"
+ N_IMPORT
+ "/"
+ N_PRINCIPALTRANSLATIONS
+ "/"
+ N_PRINCIPALTRANSLATION, 2, A_TO);
// add rules for the ignored properties
digester.addCallMethod(
"*/" + N_IMPORTEXPORT + "/" + N_IMPORT + "/" + N_IGNOREDPROPERTIES + "/" + N_PROPERTY,
"addIgnoredProperty",
1);
digester.addCallParam(
"*/" + N_IMPORTEXPORT + "/" + N_IMPORT + "/" + N_IGNOREDPROPERTIES + "/" + N_PROPERTY,
0,
A_NAME);
// creation of the static export manager
digester.addObjectCreate("*/" + N_STATICEXPORT, CmsStaticExportManager.class);
// static export manager finished
digester.addSetNext("*/" + N_STATICEXPORT, "setStaticExportManager");
// export enabled role
digester.addCallMethod("*/" + N_STATICEXPORT, "setExportEnabled", 1);
digester.addCallParam("*/" + N_STATICEXPORT, 0, A_ENABLED);
// export handler rule
digester.addCallMethod("*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_HANDLER, "setHandler", 0);
// link substitution handler rule
digester.addCallMethod(
"*/" + N_STATICEXPORT + "/" + N_LINKSUBSTITUTION_HANDLER,
"setLinkSubstitutionHandler",
0);
// exportpath rule
digester.addCallMethod("*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_EXPORTPATH, "setExportPath", 0);
// exportworkpath rule
digester.addCallMethod("*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_EXPORTWORKPATH, "setExportWorkPath", 0);
// exportbackups rule
digester.addCallMethod("*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_EXPORTBACKUPS, "setExportBackups", 0);
// default property rule
digester.addCallMethod("*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_DEFAULT, "setDefault", 0);
// export suffix rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_DEFAULTSUFFIXES
+ "/"
+ N_STATICEXPORT_SUFFIX, "setExportSuffix", 1);
digester.addCallParam("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_DEFAULTSUFFIXES
+ "/"
+ N_STATICEXPORT_SUFFIX, 0, A_KEY);
// header rule
digester.addCallMethod(
"*/" + N_STATICEXPORT + "/" + N_STATICEXPORT_EXPORTHEADERS + "/" + N_STATICEXPORT_HEADER,
"setExportHeader",
0);
// accept-language rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_REQUESTHEADERS
+ "/"
+ N_STATICEXPORT_ACCEPTLANGUAGE, "setAcceptLanguageHeader", 0);
// accept-charset rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_REQUESTHEADERS
+ "/"
+ N_STATICEXPORT_ACCEPTCHARSET, "setAcceptCharsetHeader", 0);
// accept-charset rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_REQUESTHEADERS
+ "/"
+ N_STATICEXPORT_REMOTEADDR, "setRemoteAddr", 0);
// rfs-prefix rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_RFS_PREFIX, "setRfsPrefix", 0);
// vfs-prefix rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_VFS_PREFIX, "setVfsPrefix", 0);
// relative links rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_RELATIVELINKS, "setRelativeLinks", 0);
// exporturl rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_EXPORTURL, "setExportUrl", 0);
// plain export optimization rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_PLAINOPTIMIZATION, "setPlainExportOptimization", 0);
// test resource rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_TESTRESOURCE, "setTestResource", 1);
digester.addCallParam("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_TESTRESOURCE, 0, A_URI);
// resources to export rule
digester.addCallMethod("*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_RESOURCESTORENDER
+ "/"
+ N_STATICEXPORT_REGEX, "setExportFolderPattern", 0);
// export-rules configuration
String exportRulePath = "*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_RESOURCESTORENDER
+ "/"
+ N_STATICEXPORT_EXPORTRULES
+ "/"
+ N_STATICEXPORT_EXPORTRULE;
digester.addCallMethod(exportRulePath, "addExportRule", 2);
digester.addCallParam(exportRulePath + "/" + N_STATICEXPORT_NAME, 0);
digester.addCallParam(exportRulePath + "/" + N_STATICEXPORT_DESCRIPTION, 1);
digester.addCallMethod(
exportRulePath + "/" + N_STATICEXPORT_MODIFIED + "/" + N_STATICEXPORT_REGEX,
"addExportRuleRegex",
1);
digester.addCallParam(exportRulePath + "/" + N_STATICEXPORT_MODIFIED + "/" + N_STATICEXPORT_REGEX, 0);
digester.addCallMethod(
exportRulePath + "/" + N_STATICEXPORT_EXPORT + "/" + N_STATICEXPORT_URI,
"addExportRuleUri",
1);
digester.addCallParam(exportRulePath + "/" + N_STATICEXPORT_EXPORT + "/" + N_STATICEXPORT_URI, 0);
// rfs-rules configuration
String rfsRulePath = "*/"
+ N_STATICEXPORT
+ "/"
+ N_STATICEXPORT_RENDERSETTINGS
+ "/"
+ N_STATICEXPORT_RFS_RULES
+ "/"
+ N_STATICEXPORT_RFS_RULE;
digester.addCallMethod(rfsRulePath, "addRfsRule", 8);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_NAME, 0);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_DESCRIPTION, 1);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_SOURCE, 2);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_RFS_PREFIX, 3);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_EXPORTPATH, 4);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_EXPORTWORKPATH, 5);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_EXPORTBACKUPS, 6);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_RELATIVELINKS, 7);
// rfs-rule related system resources
digester.addCallMethod(
rfsRulePath + "/" + N_STATICEXPORT_RELATED_SYSTEM_RES + "/" + N_STATICEXPORT_REGEX,
"addRfsRuleSystemRes",
1);
digester.addCallParam(rfsRulePath + "/" + N_STATICEXPORT_RELATED_SYSTEM_RES + "/" + N_STATICEXPORT_REGEX, 0);
// add rules for the user data export
digester.addObjectCreate("*/" + N_USERCSVEXPORT, CmsUserExportSettings.class);
digester.addCallMethod("*/" + N_USERCSVEXPORT + "/" + N_SEPARATOR, "setSeparator", 0);
digester.addCallMethod("*/" + N_USERCSVEXPORT + "/" + N_COLUMNS + "/" + N_COLUMN, "addColumn", 0);
digester.addSetNext("*/" + N_USERCSVEXPORT, "setUserExportSettings");
// creation of the static repository manager
digester.addObjectCreate("*/" + N_REPOSITORIES, CmsRepositoryManager.class);
digester.addCallMethod("*/" + N_REPOSITORIES, I_CmsConfigurationParameterHandler.INIT_CONFIGURATION_METHOD);
digester.addSetNext("*/" + N_REPOSITORIES, "setRepositoryManager");
// repository
digester.addObjectCreate("*/" + N_REPOSITORIES + "/" + N_REPOSITORY, A_CLASS, CmsConfigurationException.class);
// repository name
digester.addCallMethod("*/" + N_REPOSITORIES + "/" + N_REPOSITORY, "setName", 1);
digester.addCallParam("*/" + N_REPOSITORIES + "/" + N_REPOSITORY, 0, A_NAME);
// repository params
digester.addCallMethod(
"*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_PARAMS + "/" + N_PARAM,
I_CmsConfigurationParameterHandler.ADD_PARAMETER_METHOD,
2);
digester.addCallParam(
"*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_PARAMS + "/" + N_PARAM,
0,
I_CmsXmlConfiguration.A_NAME);
digester.addCallParam("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_PARAMS + "/" + N_PARAM, 1);
// repository filter
digester.addObjectCreate("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER, CmsRepositoryFilter.class);
// repository filter type
digester.addCallMethod("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER, "setType", 1);
digester.addCallParam("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER, 0, A_TYPE);
// repository filter rules
digester.addCallMethod(
"*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER + "/" + N_REGEX,
"addFilterRule",
1);
digester.addCallParam("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER + "/" + N_REGEX, 0);
digester.addSetNext("*/" + N_REPOSITORIES + "/" + N_REPOSITORY + "/" + N_FILTER, "setFilter");
digester.addSetNext("*/" + N_REPOSITORIES + "/" + N_REPOSITORY, "addRepositoryClass");
// create at least a repository manager though no repositories are configured
if (m_repositoryManager == null) {
m_repositoryManager = new CmsRepositoryManager(false);
}
}
/**
* @see org.opencms.configuration.I_CmsXmlConfiguration#generateXml(org.dom4j.Element)
*/
public Element generateXml(Element parent) {
// generate import/export node and subnodes
Element importexportElement = parent.addElement(N_IMPORTEXPORT);
Element resourceloadersElement = importexportElement.addElement(N_IMPORTEXPORTHANDLERS);
List handlers = m_importExportManager.getImportExportHandlers();
Iterator i = handlers.iterator();
while (i.hasNext()) {
I_CmsImportExportHandler handler = (I_CmsImportExportHandler)i.next();
// add the handler node
Element loaderNode = resourceloadersElement.addElement(N_IMPORTEXPORTHANDLER);
loaderNode.addAttribute(A_CLASS, handler.getClass().getName());
}
Element importElement = importexportElement.addElement(N_IMPORT);
// <overwrite> node
importElement.addElement(N_OVERWRITE).setText(
String.valueOf(m_importExportManager.overwriteCollidingResources()));
// <convert> node
importElement.addElement(N_CONVERT).setText(String.valueOf(m_importExportManager.convertToXmlPage()));
// <oldwebappurl> node
if (m_importExportManager.getOldWebAppUrl() != null) {
importElement.addElement(N_OLDWEBAPPURL).setText(m_importExportManager.getOldWebAppUrl());
}
// <importversions> node
Element resourcetypesElement = importElement.addElement(N_IMPORTVERSIONS);
i = m_importExportManager.getImportVersionClasses().iterator();
while (i.hasNext()) {
resourcetypesElement.addElement(N_IMPORTVERSION).addAttribute(A_CLASS, i.next().getClass().getName());
}
// <immutables> node
Element immutablesElement = importElement.addElement(N_IMMUTABLES);
i = m_importExportManager.getImmutableResources().iterator();
while (i.hasNext()) {
String uri = (String)i.next();
immutablesElement.addElement(N_RESOURCE).addAttribute(A_URI, uri);
}
// <principaltranslations> node
Element principalsElement = importElement.addElement(N_PRINCIPALTRANSLATIONS);
i = m_importExportManager.getImportUserTranslations().keySet().iterator();
while (i.hasNext()) {
String from = (String)i.next();
String to = (String)m_importExportManager.getImportUserTranslations().get(from);
principalsElement.addElement(N_PRINCIPALTRANSLATION).addAttribute(A_TYPE, I_CmsPrincipal.PRINCIPAL_USER).addAttribute(
A_FROM,
from).addAttribute(A_TO, to);
}
i = m_importExportManager.getImportGroupTranslations().keySet().iterator();
while (i.hasNext()) {
String from = (String)i.next();
String to = (String)m_importExportManager.getImportGroupTranslations().get(from);
principalsElement.addElement(N_PRINCIPALTRANSLATION).addAttribute(A_TYPE, I_CmsPrincipal.PRINCIPAL_GROUP).addAttribute(
A_FROM,
from).addAttribute(A_TO, to);
}
// <ignoredproperties> node
Element propertiesElement = importElement.addElement(N_IGNOREDPROPERTIES);
i = m_importExportManager.getIgnoredProperties().iterator();
while (i.hasNext()) {
String property = (String)i.next();
propertiesElement.addElement(N_PROPERTY).addAttribute(A_NAME, property);
}
// <staticexport> node
Element staticexportElement = parent.addElement(N_STATICEXPORT);
staticexportElement.addAttribute(A_ENABLED, m_staticExportManager.getExportEnabled());
// <staticexporthandler> node
staticexportElement.addElement(N_STATICEXPORT_HANDLER).addText(
m_staticExportManager.getHandler().getClass().getName());
// <linksubstitutionhandler> node
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?