📄 testcmsimportexport.java
字号:
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/mysite/importtest/index.html"));
assertTrue(links.contains("/sites/mysite/importtest/linktest.html"));
// test "/importtest/page2.html"
file = cms.readFile("/importtest/page2.html");
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
}
assertEquals(2, links.size());
assertTrue(links.contains("/system/galleries/pics/_anfang/bg_teaser_test2.jpg"));
assertTrue(links.contains("/sites/mysite/importtest/index.html"));
// test "/importtest/linktest.html" (sibling of "/importtest/index.html")
file = cms.readFile("/importtest/linktest.html");
assertEquals(CmsResourceTypeXmlPage.getStaticTypeId(), file.getTypeId());
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
System.out.println("Link: " + link.toString());
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/mysite/importtest/page2.html"));
assertTrue(links.contains("/sites/mysite/importtest/page3.html"));
siblings = cms.readSiblings("/importtest/linktest.html", CmsResourceFilter.ALL);
i = siblings.iterator();
links = new ArrayList();
while (i.hasNext()) {
CmsResource sibling = (CmsResource)i.next();
links.add(sibling.getRootPath());
System.out.println("Sibling: " + sibling.toString());
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/mysite/importtest/index.html"));
assertTrue(links.contains("/sites/mysite/importtest/linktest.html"));
// now switch to "othersite"
cms.getRequestContext().setSiteRoot("/sites/othersite/");
// test "/othertest/index.html"
file = cms.readFile("/index.html");
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
System.out.println("Link: " + link.toString());
}
assertTrue(links.size() == 2);
assertTrue(links.contains("/sites/mysite/importtest/page2.html"));
assertTrue(links.contains("/sites/mysite/importtest/page3.html"));
// reset the translation rules
OpenCms.getResourceManager().setTranslators(
oldFolderTranslator,
OpenCms.getResourceManager().getFileTranslator());
}
/**
* Tests the resource translation during import.<p>
*
* @throws Exception if something goes wrong
*/
public void testImportResourceTranslator() throws Exception {
echo("Testing resource translator for import");
CmsObject cms = getCmsObject();
cms.getRequestContext().setSiteRoot("/");
// need to create the "galleries" folder manually
cms.createResource("/system/galleries", CmsResourceTypeFolder.RESOURCE_TYPE_ID);
cms.unlockResource("/system/galleries");
CmsResourceTranslator oldFolderTranslator = OpenCms.getResourceManager().getFolderTranslator();
CmsResourceTranslator folderTranslator = new CmsResourceTranslator(new String[] {
"s#^/sites/default/content/bodys(.*)#/system/bodies$1#",
"s#^/sites/default/pics/system(.*)#/system/workplace/resources$1#",
"s#^/sites/default/pics(.*)#/system/galleries/pics$1#",
"s#^/sites/default/download(.*)#/system/galleries/download$1#",
"s#^/sites/default/externallinks(.*)#/system/galleries/externallinks$1#",
"s#^/sites/default/htmlgalleries(.*)#/system/galleries/htmlgalleries$1#",
"s#^/sites/default/content(.*)#/system$1#"}, false);
// set modified folder translator
OpenCms.getResourceManager().setTranslators(folderTranslator, OpenCms.getResourceManager().getFileTranslator());
// update OpenCms context to ensure new translator is used
cms = getCmsObject();
cms.getRequestContext().setSiteRoot("/sites/default");
// import the files
String importFile = OpenCms.getSystemInfo().getAbsoluteRfsPathRelativeToWebInf("packages/testimport01.zip");
OpenCms.getImportExportManager().importData(
cms,
importFile,
"/",
new CmsShellReport(cms.getRequestContext().getLocale()));
// check the results of the import
CmsXmlPage page;
CmsFile file;
CmsLinkTable table;
List links;
Iterator i;
List siblings;
// test "/importtest/index.html"
file = cms.readFile("/importtest/index.html");
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
}
assertTrue(links.size() == 2);
assertTrue(links.contains("/sites/default/importtest/page2.html"));
assertTrue(links.contains("/sites/default/importtest/page3.html"));
siblings = cms.readSiblings("/importtest/index.html", CmsResourceFilter.ALL);
i = siblings.iterator();
links = new ArrayList();
while (i.hasNext()) {
CmsResource sibling = (CmsResource)i.next();
links.add(sibling.getRootPath());
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/default/importtest/index.html"));
assertTrue(links.contains("/sites/default/importtest/linktest.html"));
// test "/importtest/page2.html"
file = cms.readFile("/importtest/page2.html");
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
System.out.println("Link: " + link.toString());
}
assertEquals(2, links.size());
assertTrue(links.contains("/system/galleries/pics/_anfang/bg_teaser_test2.jpg"));
assertTrue(links.contains("/sites/default/importtest/index.html"));
// test "/importtest/linktest.html" (sibling of "/importtest/index.html")
file = cms.readFile("/importtest/linktest.html");
assertEquals(CmsResourceTypeXmlPage.getStaticTypeId(), file.getTypeId());
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
System.out.println("Link: " + link.toString());
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/default/importtest/page2.html"));
assertTrue(links.contains("/sites/default/importtest/page3.html"));
siblings = cms.readSiblings("/importtest/linktest.html", CmsResourceFilter.ALL);
i = siblings.iterator();
links = new ArrayList();
while (i.hasNext()) {
CmsResource sibling = (CmsResource)i.next();
links.add(sibling.getRootPath());
}
assertEquals(2, links.size());
assertTrue(links.contains("/sites/default/importtest/index.html"));
assertTrue(links.contains("/sites/default/importtest/linktest.html"));
// test "/othertest/index.html"
file = cms.readFile("/othertest/index.html");
page = CmsXmlPageFactory.unmarshal(cms, file);
table = page.getLinkTable("body", CmsLocaleManager.getDefaultLocale());
links = new ArrayList();
i = table.iterator();
while (i.hasNext()) {
CmsLink link = (CmsLink)i.next();
links.add(link.toString());
System.out.println("Link: " + link.toString());
}
assertTrue(links.size() == 2);
assertTrue(links.contains("/sites/default/importtest/page2.html"));
assertTrue(links.contains("/sites/default/importtest/page3.html"));
// clean up for the next test
cms.getRequestContext().setSiteRoot("/");
cms.lockResource("/sites/default");
cms.lockResource("/system");
cms.deleteResource("/sites/default/importtest", CmsResource.DELETE_PRESERVE_SIBLINGS);
cms.deleteResource("/system/bodies", CmsResource.DELETE_PRESERVE_SIBLINGS);
cms.deleteResource("/system/galleries/pics", CmsResource.DELETE_PRESERVE_SIBLINGS);
cms.unlockResource("/sites/default");
cms.unlockResource("/system");
cms.publishProject();
// reset the translation rules
OpenCms.getResourceManager().setTranslators(
oldFolderTranslator,
OpenCms.getResourceManager().getFileTranslator());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -