List of usage examples for com.liferay.portal.kernel.xml Element attributeValue
public String attributeValue(String name);
From source file:com.liferay.exportimport.portlet.preferences.processor.capability.ReferencedStagedModelImporterCapability.java
License:Open Source License
@Override public PortletPreferences process(PortletDataContext portletDataContext, PortletPreferences portletPreferences) throws PortletDataException { Element importDataRootElement = portletDataContext.getImportDataRootElement(); Element referencesElement = importDataRootElement.element("references"); if (referencesElement == null) { return portletPreferences; }//from w w w . java 2s .c o m List<Element> referenceElements = referencesElement.elements(); long originalScopeGroupId = portletDataContext.getScopeGroupId(); for (Element referenceElement : referenceElements) { try { String className = referenceElement.attributeValue("class-name"); long classPK = GetterUtil.getLong(referenceElement.attributeValue("class-pk")); String scopeLayoutUuid = GetterUtil.getString(referenceElement.attributeValue("scope-layout-uuid")); if (Validator.isNotNull(scopeLayoutUuid)) { try { Layout scopeLayout = _layoutLocalService.getLayoutByUuidAndGroupId(scopeLayoutUuid, portletDataContext.getGroupId(), portletDataContext.isPrivateLayout()); Group scopeGroup = _groupLocalService.checkScopeGroup(scopeLayout, portletDataContext.getUserId(null)); portletDataContext.setScopeGroupId(scopeGroup.getGroupId()); } catch (PortalException pe) { StringBundler sb = new StringBundler(9); sb.append("Unable to import the layout scoped "); sb.append("element with class name "); sb.append(className); sb.append(" and class primary key "); sb.append(classPK); sb.append(" because the layout with UUID "); sb.append(scopeLayoutUuid); sb.append(" is missing from group "); sb.append(portletDataContext.getGroupId()); if (_log.isDebugEnabled()) { _log.debug(sb.toString(), pe); } if (pe instanceof NoSuchLayoutException) { continue; } throw new PortletDataException(sb.toString(), pe); } } StagedModelDataHandlerUtil.importReferenceStagedModel(portletDataContext, className, classPK); } finally { portletDataContext.setScopeGroupId(originalScopeGroupId); } } return portletPreferences; }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public void updateLastImportSettings(Element layoutElement, Layout layout, PortletDataContext portletDataContext) { Map<String, String[]> parameterMap = portletDataContext.getParameterMap(); String cmd = MapUtil.getString(parameterMap, Constants.CMD); if (!cmd.equals(Constants.PUBLISH_TO_LIVE) && !cmd.equals("schedule_publish_to_live")) { return;/* ww w . j a v a 2 s .co m*/ } UnicodeProperties typeSettingsProperties = layout.getTypeSettingsProperties(); typeSettingsProperties.setProperty("last-import-date", String.valueOf(System.currentTimeMillis())); String layoutRevisionId = GetterUtil.getString(layoutElement.attributeValue("layout-revision-id")); typeSettingsProperties.setProperty("last-import-layout-revision-id", layoutRevisionId); String layoutSetBranchId = MapUtil.getString(parameterMap, "layoutSetBranchId"); typeSettingsProperties.setProperty("last-import-layout-set-branch-id", layoutSetBranchId); String layoutSetBranchName = MapUtil.getString(parameterMap, "layoutSetBranchName"); typeSettingsProperties.setProperty("last-import-layout-set-branch-name", layoutSetBranchName); String lastImportUserName = MapUtil.getString(parameterMap, "lastImportUserName"); typeSettingsProperties.setProperty("last-import-user-name", lastImportUserName); String lastImportUserUuid = MapUtil.getString(parameterMap, "lastImportUserUuid"); typeSettingsProperties.setProperty("last-import-user-uuid", lastImportUserUuid); String layoutBranchId = GetterUtil.getString(layoutElement.attributeValue("layout-branch-id")); typeSettingsProperties.setProperty("last-import-layout-branch-id", layoutBranchId); String layoutBranchName = GetterUtil.getString(layoutElement.attributeValue("layout-branch-name")); typeSettingsProperties.setProperty("last-import-layout-branch-name", layoutBranchName); layout.setTypeSettingsProperties(typeSettingsProperties); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testCleanUpMissingReferences() throws Exception { _portletDataContext.setPortletId(JournalContentPortletKeys.JOURNAL_CONTENT); Portlet portlet = PortletLocalServiceUtil.getPortletById(JournalContentPortletKeys.JOURNAL_CONTENT); AssetVocabulary assetVocabulary = AssetTestUtil.addVocabulary(_group.getGroupId()); AssetCategory assetCategory = AssetTestUtil.addCategory(_group.getGroupId(), assetVocabulary.getVocabularyId()); _portletDataContext.addReferenceElement(portlet, _portletDataContext.getExportDataRootElement(), assetCategory, PortletDataContext.REFERENCE_TYPE_DEPENDENCY, true); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertFalse(missingReferenceElements.toString(), missingReferenceElements.isEmpty()); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); StagedModelDataHandlerUtil.exportStagedModel(_portletDataContext, assetCategory); missingReferenceElements = missingReferencesElement.elements(); Assert.assertFalse(missingReferenceElements.toString(), missingReferenceElements.isEmpty()); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); Element missingReferenceElement = missingReferenceElements.get(0); Assert.assertNull(missingReferenceElement.attribute("missing")); Assert.assertFalse(Validator.isBlank(missingReferenceElement.attributeValue("element-path"))); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testMissingNotMissingReference() throws Exception { _portletDataContext.setPortletId(BookmarksPortletKeys.BOOKMARKS); Element bookmarksEntryElement = _portletDataContext.getExportDataElement(_bookmarksEntry); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, true); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, false); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertFalse(missingReferenceElements.toString(), missingReferenceElements.isEmpty()); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); Element missingReferenceElement = missingReferenceElements.get(0); Assert.assertNull(missingReferenceElement.attribute("missing")); Assert.assertFalse(Validator.isBlank(missingReferenceElement.attributeValue("element-path"))); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testMissingReference() throws Exception { Element bookmarksEntryElement = _portletDataContext.getExportDataElement(_bookmarksEntry); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, true); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); Element missingReferenceElement = missingReferenceElements.get(0); Assert.assertEquals(_bookmarksFolder.getModelClassName(), missingReferenceElement.attributeValue("class-name")); Assert.assertEquals(String.valueOf(_bookmarksFolder.getPrimaryKeyObj()), missingReferenceElement.attributeValue("class-pk")); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testMultipleMissingNotMissingReference() throws Exception { _portletDataContext.setPortletId(BookmarksPortletKeys.BOOKMARKS); Element bookmarksEntryElement1 = _portletDataContext.getExportDataElement(_bookmarksEntry); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement1, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, true); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement1, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, false); BookmarksEntry bookmarksEntry = BookmarksTestUtil.addEntry(_bookmarksFolder.getFolderId(), true, _serviceContext);// ww w.jav a 2 s. c o m Element bookmarksEntryElement2 = _portletDataContext.getExportDataElement(bookmarksEntry); _portletDataContext.addReferenceElement(bookmarksEntry, bookmarksEntryElement2, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_PARENT, true); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertFalse(missingReferenceElements.toString(), missingReferenceElements.isEmpty()); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); Element missingReferenceElement = missingReferenceElements.get(0); Assert.assertNull(missingReferenceElement.attribute("missing")); Assert.assertFalse(Validator.isBlank(missingReferenceElement.attributeValue("element-path"))); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testMultipleMissingReferences() throws Exception { Portlet portlet = PortletLocalServiceUtil.getPortletById(JournalContentPortletKeys.JOURNAL_CONTENT); _portletDataContext.addReferenceElement(portlet, _portletDataContext.getExportDataRootElement(), _bookmarksEntry, PortletDataContext.REFERENCE_TYPE_DEPENDENCY, true); _portletDataContext.addReferenceElement(portlet, _portletDataContext.getExportDataRootElement(), _bookmarksEntry, PortletDataContext.REFERENCE_TYPE_DEPENDENCY, true); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertFalse(missingReferenceElements.toString(), missingReferenceElements.isEmpty()); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); Element missingReferenceElement = missingReferenceElements.get(0); Assert.assertEquals(BookmarksEntry.class.getName(), missingReferenceElement.attributeValue("class-name")); Assert.assertEquals(String.valueOf(_bookmarksEntry.getPrimaryKeyObj()), missingReferenceElement.attributeValue("class-pk")); }
From source file:com.liferay.exportimport.test.PortletDataContextReferencesTest.java
License:Open Source License
@Test public void testSameMissingReferenceMultipleTimes() throws Exception { Element bookmarksEntryElement = _portletDataContext.getExportDataElement(_bookmarksEntry); bookmarksEntryElement.addAttribute("path", ExportImportPathUtil.getModelPath(_bookmarksEntry)); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_DEPENDENCY, true); _portletDataContext.addReferenceElement(_bookmarksEntry, bookmarksEntryElement, _bookmarksFolder, PortletDataContext.REFERENCE_TYPE_DEPENDENCY, true); Element missingReferencesElement = _portletDataContext.getMissingReferencesElement(); List<Element> missingReferenceElements = missingReferencesElement.elements(); Assert.assertEquals(missingReferenceElements.toString(), 1, missingReferenceElements.size()); List<Element> referencesElements = _portletDataContext.getReferenceElements(_bookmarksEntry, BookmarksFolder.class); Assert.assertEquals(referencesElements.toString(), 2, referencesElements.size()); for (Element referenceElement : referencesElements) { Assert.assertTrue(GetterUtil.getBoolean(referenceElement.attributeValue("missing"))); }// w w w. j a v a 2 s . c om }
From source file:com.liferay.exportimport.test.util.lar.BaseStagedModelDataHandlerTestCase.java
License:Open Source License
protected void validateExport(PortletDataContext portletDataContext, StagedModel stagedModel, Map<String, List<StagedModel>> dependentStagedModelsMap) throws Exception { Element rootElement = portletDataContext.getExportDataRootElement(); List<Element> stagedModelGroupElements = new ArrayList<>(); Class<?> stagedModelClass = getStagedModelClass(); String stagedModelClassSimpleName = stagedModelClass.getSimpleName(); stagedModelGroupElements.addAll(rootElement.elements(stagedModelClassSimpleName)); for (String dependentStagedModelClassSimpleName : dependentStagedModelsMap.keySet()) { stagedModelGroupElements.addAll(rootElement.elements(dependentStagedModelClassSimpleName)); }/*w ww .j ava 2s . co m*/ for (Element stagedModelGroupElement : stagedModelGroupElements) { String className = stagedModelGroupElement.getName(); if (className.equals("missing-references")) { continue; } List<StagedModel> dependentStagedModels = dependentStagedModelsMap.get(className); if (dependentStagedModels == null) { dependentStagedModels = new ArrayList<>(); } else { dependentStagedModels = ListUtil.copy(dependentStagedModels); } if (className.equals(stagedModelClassSimpleName)) { dependentStagedModels.add(stagedModel); } List<Element> elements = stagedModelGroupElement.elements(); Assert.assertEquals(elements.toString(), dependentStagedModels.size(), elements.size()); for (Element element : elements) { String path = element.attributeValue("path"); Assert.assertNotNull(path); Iterator<StagedModel> iterator = dependentStagedModels.iterator(); while (iterator.hasNext()) { StagedModel dependentStagedModel = iterator.next(); String dependentStagedModelPath = ExportImportPathUtil.getModelPath(dependentStagedModel); if (path.equals(dependentStagedModelPath)) { iterator.remove(); } } } Assert.assertTrue("There is more than one element exported with the same path", dependentStagedModels.isEmpty()); } }
From source file:com.liferay.google.apps.connector.GetNextItems.java
License:Open Source License
public GetNextItems(String url, Element atomFeedElement) throws GoogleAppsException { List<Element> atomLinkElements = atomFeedElement.elements(GHelperUtil.getAtomQName("link")); for (Element atomLinkElement : atomLinkElements) { String rel = atomLinkElement.attributeValue("rel"); if (rel.equals("next")) { String href = atomLinkElement.attributeValue("href"); if (!href.equals(url)) { getNextItems(href);//w w w.j av a 2s. co m } break; } } }