List of usage examples for com.liferay.portal.kernel.xml Element attributeValue
public String attributeValue(String name);
From source file:com.liferay.journal.exportimport.data.handler.JournalArticleStagedModelDataHandler.java
License:Open Source License
@Override protected void doRestoreStagedModel(PortletDataContext portletDataContext, JournalArticle article) throws Exception { long userId = portletDataContext.getUserId(article.getUserUuid()); Element articleElement = portletDataContext.getImportDataStagedModelElement(article); String articleResourceUuid = articleElement.attributeValue("article-resource-uuid"); boolean preloaded = GetterUtil.getBoolean(articleElement.attributeValue("preloaded")); JournalArticle existingArticle = fetchExistingArticle(article.getUuid(), articleResourceUuid, portletDataContext.getScopeGroupId(), article.getArticleId(), article.getArticleId(), article.getVersion(), preloaded); if ((existingArticle == null) || !existingArticle.isInTrash()) { return;// w w w.ja va2s . com } TrashHandler trashHandler = existingArticle.getTrashHandler(); if (trashHandler.isRestorable(existingArticle.getResourcePrimKey())) { trashHandler.restoreTrashEntry(userId, existingArticle.getResourcePrimKey()); } }
From source file:com.liferay.journal.exportimport.data.handler.JournalFolderStagedModelDataHandler.java
License:Open Source License
protected void importFolderDDMStructures(PortletDataContext portletDataContext, JournalFolder folder, JournalFolder importedFolder) throws Exception { List<Long> currentFolderDDMStructureIds = new ArrayList<>(); List<Element> referenceElements = portletDataContext.getReferenceElements(folder, DDMStructure.class); for (Element referenceElement : referenceElements) { long referenceDDMStructureId = GetterUtil.getLong(referenceElement.attributeValue("class-pk")); Map<Long, Long> ddmStructureIds = (Map<Long, Long>) portletDataContext .getNewPrimaryKeysMap(DDMStructure.class); long ddmStructureId = MapUtil.getLong(ddmStructureIds, referenceDDMStructureId, referenceDDMStructureId); DDMStructure existingDDMStructure = _ddmStructureLocalService.fetchDDMStructure(ddmStructureId); if (existingDDMStructure == null) { continue; }/*from w w w .j a v a2 s .c o m*/ currentFolderDDMStructureIds.add(existingDDMStructure.getStructureId()); } if (!currentFolderDDMStructureIds.isEmpty()) { importedFolder.setRestrictionType(JournalFolderConstants.RESTRICTION_TYPE_DDM_STRUCTURES_AND_WORKFLOW); _journalFolderLocalService.updateJournalFolder(importedFolder); _journalFolderLocalService.updateFolderDDMStructures(importedFolder, ArrayUtil.toLongArray(currentFolderDDMStructureIds)); } }
From source file:com.liferay.journal.exportimport.data.handler.JournalPortletDataHandler.java
License:Open Source License
@Override protected PortletPreferences doImportData(PortletDataContext portletDataContext, String portletId, PortletPreferences portletPreferences, String data) throws Exception { portletDataContext.importPortletPermissions(JournalPermission.RESOURCE_NAME); if (portletDataContext.getBooleanParameter(NAMESPACE, "feeds")) { Element feedsElement = portletDataContext.getImportDataGroupElement(JournalFeed.class); List<Element> feedElements = feedsElement.elements(); for (Element feedElement : feedElements) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, feedElement); }/* w ww .j av a 2 s .c o m*/ } if (portletDataContext.getBooleanParameter(NAMESPACE, "folders")) { Element foldersElement = portletDataContext.getImportDataGroupElement(JournalFolder.class); List<Element> folderElements = foldersElement.elements(); for (Element folderElement : folderElements) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, folderElement); } } Element articlesElement = portletDataContext.getImportDataGroupElement(JournalArticle.class); List<Element> articleElements = articlesElement.elements(); if (portletDataContext.getBooleanParameter(NAMESPACE, "structures")) { Element ddmStructuresElement = portletDataContext.getImportDataGroupElement(DDMStructure.class); List<Element> ddmStructureElements = ddmStructuresElement.elements(); for (Element ddmStructureElement : ddmStructureElements) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, ddmStructureElement); } // Importing DDM structure default values for (Element articleElement : articleElements) { String className = articleElement.attributeValue("class-name"); if (Validator.isNotNull(className) && className.equals(DDMStructure.class.getName())) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, articleElement); } } } if (portletDataContext.getBooleanParameter(NAMESPACE, "templates")) { Element ddmTemplatesElement = portletDataContext.getImportDataGroupElement(DDMTemplate.class); List<Element> ddmTemplateElements = ddmTemplatesElement.elements(); for (Element ddmTemplateElement : ddmTemplateElements) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, ddmTemplateElement); } } if (portletDataContext.getBooleanParameter(NAMESPACE, "web-content")) { for (Element articleElement : articleElements) { StagedModelDataHandlerUtil.importStagedModel(portletDataContext, articleElement); } _journalContent.clearCache(); } return portletPreferences; }
From source file:com.liferay.journal.internal.exportimport.content.processor.JournalArticleArticleExportImportContentProcessor.java
License:Open Source License
protected String replaceImportJournalArticleReferences(PortletDataContext portletDataContext, JournalArticle article, String content) throws Exception { List<Element> referenceElements = portletDataContext.getReferenceElements(article, JournalArticle.class); for (Element referenceElement : referenceElements) { long classPK = GetterUtil.getLong(referenceElement.attributeValue("class-pk")); Map<Long, Long> articlePrimaryKeys = (Map<Long, Long>) portletDataContext .getNewPrimaryKeysMap(JournalArticle.class + ".primaryKey"); long articlePrimaryKey = MapUtil.getLong(articlePrimaryKeys, classPK, classPK); JournalArticle journalArticle = _journalArticleLocalService.fetchJournalArticle(articlePrimaryKey); if (journalArticle == null) { if (_log.isWarnEnabled()) { _log.warn("Unable to get journal article with primary key " + articlePrimaryKey); }/*from ww w . j a va2 s . co m*/ throw new NoSuchArticleException( "No JournalArticle exists with the key {id= " + articlePrimaryKey + "}"); } else { String journalArticleReference = "[$journal-article-reference=" + classPK + "$]"; JSONObject jsonObject = _jsonFactory.createJSONObject(); jsonObject.put("className", JournalArticle.class.getName()); jsonObject.put("classPK", journalArticle.getResourcePrimKey()); content = StringUtil.replace(content, journalArticleReference, jsonObject.toString()); } } return content; }
From source file:com.liferay.journal.internal.exportimport.content.processor.JournalArticleExportImportContentProcessor.java
License:Open Source License
protected String replaceImportJournalArticleReferences(PortletDataContext portletDataContext, StagedModel stagedModel, String content) throws Exception { List<Element> referenceElements = portletDataContext.getReferenceElements(stagedModel, JournalArticle.class); for (Element referenceElement : referenceElements) { long classPK = GetterUtil.getLong(referenceElement.attributeValue("class-pk")); Map<Long, Long> articlePrimaryKeys = (Map<Long, Long>) portletDataContext .getNewPrimaryKeysMap(JournalArticle.class + ".primaryKey"); long articlePrimaryKey = MapUtil.getLong(articlePrimaryKeys, classPK, classPK); JournalArticle journalArticle = _journalArticleLocalService.fetchJournalArticle(articlePrimaryKey); if (journalArticle == null) { if (_log.isWarnEnabled()) { _log.warn("Unable to get journal article with primary key " + articlePrimaryKey); }//w ww . j a va 2 s . c o m throw new NoSuchArticleException( "No JournalArticle exists with the key {id= " + articlePrimaryKey + "}"); } else { String journalArticleReference = "[$journal-article-reference=" + classPK + "$]"; JSONObject jsonObject = _jsonFactory.createJSONObject(); jsonObject.put("className", JournalArticle.class.getName()); jsonObject.put("classPK", journalArticle.getResourcePrimKey()); content = StringUtil.replace(content, journalArticleReference, jsonObject.toString()); } } return content; }
From source file:com.liferay.journal.internal.upgrade.v0_0_5.UpgradeJournal.java
License:Open Source License
protected String convertStaticContentToDynamic(String content) throws Exception { Document document = SAXReaderUtil.read(content); Document newDocument = SAXReaderUtil.createDocument(); Element rootElement = document.getRootElement(); String availableLocales = GetterUtil.getString(rootElement.attributeValue("available-locales"), _getDefaultLanguageId());/*from w w w .ja v a 2 s.c o m*/ String defaultLocale = GetterUtil.getString(rootElement.attributeValue("default-locale"), _getDefaultLanguageId()); Element newRootElement = SAXReaderUtil.createElement("root"); newRootElement.addAttribute("available-locales", availableLocales); newRootElement.addAttribute("default-locale", defaultLocale); newDocument.add(newRootElement); Element dynamicElementElement = SAXReaderUtil.createElement("dynamic-element"); dynamicElementElement.addAttribute("name", "content"); dynamicElementElement.addAttribute("type", "text_area"); dynamicElementElement.addAttribute("index-type", "text"); dynamicElementElement.addAttribute("index", String.valueOf(0)); newRootElement.add(dynamicElementElement); List<Element> staticContentElements = rootElement.elements("static-content"); for (Element staticContentElement : staticContentElements) { String languageId = GetterUtil.getString(staticContentElement.attributeValue("language-id"), _getDefaultLanguageId()); String text = staticContentElement.getText(); Element dynamicContentElement = SAXReaderUtil.createElement("dynamic-content"); dynamicContentElement.addAttribute("language-id", languageId); dynamicContentElement.addCDATA(text); dynamicElementElement.add(dynamicContentElement); } return XMLUtil.formatXML(newDocument); }
From source file:com.liferay.journal.internal.upgrade.v0_0_5.UpgradeJournal.java
License:Open Source License
protected Set<String> getArticleDynamicElements(Element rootElement) { List<String> dynamicElementNames = new ArrayList<>(); List<Element> dynamicElementElements = rootElement.elements("dynamic-element"); for (Element element : dynamicElementElements) { dynamicElementNames.add(element.attributeValue("name")); dynamicElementNames.addAll(getArticleDynamicElements(element)); }/* w ww . j a v a 2s . co m*/ return SetUtil.fromList(dynamicElementNames); }
From source file:com.liferay.journal.internal.upgrade.v0_0_5.UpgradeJournal.java
License:Open Source License
protected void transformDateFieldValues(List<Element> dynamicElementElements) { if ((dynamicElementElements == null) || dynamicElementElements.isEmpty()) { return;/*from w ww .j av a 2 s .co m*/ } for (Element dynamicElementElement : dynamicElementElements) { String type = GetterUtil.getString(dynamicElementElement.attributeValue("type")); if (type.equals("ddm-date")) { List<Element> dynamicContentElements = dynamicElementElement.elements("dynamic-content"); for (Element dynamicContentElement : dynamicContentElements) { transformDateFieldValue(dynamicContentElement); } } List<Element> childDynamicElementElements = dynamicElementElement.elements("dynamic-element"); transformDateFieldValues(childDynamicElementElements); } }
From source file:com.liferay.journal.internal.upgrade.v0_0_6.UpgradeImageTypeContentAttributes.java
License:Open Source License
protected String addImageContentAttributes(String content) throws Exception { Document contentDocument = SAXReaderUtil.read(content); contentDocument = contentDocument.clone(); XPath xPath = SAXReaderUtil.createXPath("//dynamic-element[@type='image']"); List<Node> imageNodes = xPath.selectNodes(contentDocument); for (Node imageNode : imageNodes) { Element imageEl = (Element) imageNode; List<Element> dynamicContentEls = imageEl.elements("dynamic-content"); String id = null;// www .ja v a2 s. c o m for (Element dynamicContentEl : dynamicContentEls) { id = dynamicContentEl.attributeValue("id"); dynamicContentEl.addAttribute("alt", StringPool.BLANK); dynamicContentEl.addAttribute("name", id); dynamicContentEl.addAttribute("title", id); dynamicContentEl.addAttribute("type", "journal"); } if (Validator.isNotNull(id)) { imageEl.addAttribute("instance-id", getImageInstanceId(id)); } } return contentDocument.formattedString(); }
From source file:com.liferay.journal.internal.upgrade.v1_0_0.UpgradeImageTypeContentAttributes.java
License:Open Source License
protected String addImageContentAttributes(String content) throws Exception { Document contentDocument = SAXReaderUtil.read(content); contentDocument = contentDocument.clone(); XPath xPath = SAXReaderUtil.createXPath("//dynamic-element[@type='image']"); List<Node> imageNodes = xPath.selectNodes(contentDocument); for (Node imageNode : imageNodes) { Element imageEl = (Element) imageNode; List<Element> dynamicContentEls = imageEl.elements("dynamic-content"); for (Element dynamicContentEl : dynamicContentEls) { String id = dynamicContentEl.attributeValue("id"); dynamicContentEl.addAttribute("alt", StringPool.BLANK); dynamicContentEl.addAttribute("name", id); dynamicContentEl.addAttribute("title", id); dynamicContentEl.addAttribute("type", "journal"); }/*from w w w. j a v a 2s .c om*/ } return contentDocument.formattedString(); }