Example usage for com.liferay.portal.kernel.xml SAXReaderUtil read

List of usage examples for com.liferay.portal.kernel.xml SAXReaderUtil read

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.xml SAXReaderUtil read.

Prototype

public static Document read(URL url) throws DocumentException 

Source Link

Usage

From source file:com.liferay.portlet.rss.lar.RSSPortletDataHandlerImpl.java

License:Open Source License

@Override
protected PortletPreferences doImportData(PortletDataContext portletDataContext, String portletId,
        PortletPreferences portletPreferences, String data) throws Exception {

    if (Validator.isNull(data)) {
        return null;
    }/*from ww w . j av  a2  s  . c  o  m*/

    Document document = SAXReaderUtil.read(data);

    Element rootElement = document.getRootElement();

    JournalPortletDataHandlerImpl.importReferencedData(portletDataContext, rootElement);

    List<Element> structureElements = rootElement.elements("structure");

    for (Element structureElement : structureElements) {
        JournalPortletDataHandlerImpl.importStructure(portletDataContext, structureElement);
    }

    List<Element> templateElements = rootElement.elements("template");

    for (Element templateElement : templateElements) {
        JournalPortletDataHandlerImpl.importTemplate(portletDataContext, templateElement);
    }

    Map<String, String> articleIds = (Map<String, String>) portletDataContext
            .getNewPrimaryKeysMap(JournalArticle.class);

    Layout layout = LayoutLocalServiceUtil.getLayout(portletDataContext.getPlid());

    Element footerArticleElement = rootElement.element("footer-article");

    if (footerArticleElement != null) {
        JournalPortletDataHandlerImpl.importArticle(portletDataContext, footerArticleElement);
    }

    String[] footerArticleValues = portletPreferences.getValues("footerArticleValues",
            new String[] { "0", "" });

    String footerArticleId = footerArticleValues[1];

    if (Validator.isNotNull(footerArticleId)) {
        footerArticleId = MapUtil.getString(articleIds, footerArticleId, footerArticleId);

        portletPreferences.setValues("footerArticleValues",
                new String[] { String.valueOf(portletDataContext.getScopeGroupId()), footerArticleId });

        JournalContentSearchLocalServiceUtil.updateContentSearch(portletDataContext.getScopeGroupId(),
                layout.isPrivateLayout(), layout.getLayoutId(), portletId, footerArticleId, true);
    }

    Element headerArticleElement = rootElement.element("header-article");

    if (headerArticleElement != null) {
        JournalPortletDataHandlerImpl.importArticle(portletDataContext, headerArticleElement);
    }

    String[] headerArticleValues = portletPreferences.getValues("headerArticleValues",
            new String[] { "0", "" });

    String headerArticleId = headerArticleValues[1];

    if (Validator.isNotNull(headerArticleId)) {
        headerArticleId = MapUtil.getString(articleIds, headerArticleId, headerArticleId);

        portletPreferences.setValues("headerArticleValues",
                new String[] { String.valueOf(portletDataContext.getScopeGroupId()), headerArticleId });

        JournalContentSearchLocalServiceUtil.updateContentSearch(portletDataContext.getScopeGroupId(),
                layout.isPrivateLayout(), layout.getLayoutId(), portletId, headerArticleId, true);
    }

    return portletPreferences;
}

From source file:com.liferay.portlet.social.util.SocialConfigurationUtil.java

License:Open Source License

private static void _read(ClassLoader classLoader, String xml, List<Object> objects) throws Exception {

    if (xml == null) {
        return;/*from w  w w. j  a  v  a 2 s .c  o  m*/
    }

    xml = JavaFieldsParser.parse(classLoader, xml);

    Document document = SAXReaderUtil.read(xml);

    Element rootElement = document.getRootElement();

    List<Element> activityElements = rootElement.elements("activity");

    for (Element activityElement : activityElements) {
        _readActivity(classLoader, objects, activityElement);
    }
}

From source file:com.liferay.portlet.wiki.importers.mediawiki.MediaWikiImporter.java

License:Open Source License

@Override
public void importPages(long userId, WikiNode node, InputStream[] inputStreams, Map<String, String[]> options)
        throws PortalException {

    if ((inputStreams.length < 1) || (inputStreams[0] == null)) {
        throw new PortalException("The pages file is mandatory");
    }//from  w w  w . j  a  va2 s .  c om

    InputStream pagesInputStream = inputStreams[0];
    InputStream usersInputStream = inputStreams[1];
    InputStream imagesInputStream = inputStreams[2];

    try {
        Document document = SAXReaderUtil.read(pagesInputStream);

        Map<String, String> usersMap = readUsersFile(usersInputStream);

        Element rootElement = document.getRootElement();

        List<String> specialNamespaces = readSpecialNamespaces(rootElement);

        processSpecialPages(userId, node, rootElement, specialNamespaces);
        processRegularPages(userId, node, rootElement, specialNamespaces, usersMap, imagesInputStream, options);
        processImages(userId, node, imagesInputStream);

        moveFrontPage(userId, node, options);
    } catch (DocumentException de) {
        throw new ImportFilesException("Invalid XML file provided");
    } catch (IOException ioe) {
        throw new ImportFilesException("Error reading the files provided");
    } catch (PortalException pe) {
        throw pe;
    } catch (Exception e) {
        throw new PortalException(e);
    }
}

From source file:com.liferay.portlet.wiki.lar.WikiDisplayPortletDataHandlerImpl.java

License:Open Source License

@Override
protected PortletPreferences doImportData(PortletDataContext portletDataContext, String portletId,
        PortletPreferences portletPreferences, String data) throws Exception {

    portletDataContext.importPermissions("com.liferay.portlet.wiki", portletDataContext.getSourceGroupId(),
            portletDataContext.getScopeGroupId());

    if (Validator.isNull(data)) {
        return null;
    }//  ww w . ja v  a  2  s  .c om

    Document document = SAXReaderUtil.read(data);

    Element rootElement = document.getRootElement();

    Element nodesElement = rootElement.element("nodes");

    for (Element nodeElement : nodesElement.elements("node")) {
        String path = nodeElement.attributeValue("path");

        if (!portletDataContext.isPathNotProcessed(path)) {
            continue;
        }

        WikiNode node = (WikiNode) portletDataContext.getZipEntryAsObject(path);

        WikiPortletDataHandlerImpl.importNode(portletDataContext, node);
    }

    Element pagesElement = rootElement.element("pages");

    JournalPortletDataHandlerImpl.importReferencedData(portletDataContext, pagesElement);

    for (Element pageElement : pagesElement.elements("page")) {
        String path = pageElement.attributeValue("path");

        if (!portletDataContext.isPathNotProcessed(path)) {
            continue;
        }

        WikiPage page = (WikiPage) portletDataContext.getZipEntryAsObject(path);

        WikiPortletDataHandlerImpl.importPage(portletDataContext, pageElement, page);
    }

    Map<Long, Long> nodePKs = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(WikiNode.class);

    for (long nodeId : nodePKs.values()) {
        WikiCacheUtil.clearCache(nodeId);
    }

    long nodeId = GetterUtil.getLong(portletPreferences.getValue("nodeId", StringPool.BLANK));

    if (nodeId > 0) {
        nodeId = MapUtil.getLong(nodePKs, nodeId, nodeId);

        portletPreferences.setValue("nodeId", String.valueOf(nodeId));
    }

    return portletPreferences;
}

From source file:com.liferay.portlet.wiki.lar.WikiPortletDataHandlerImpl.java

License:Open Source License

@Override
protected PortletPreferences doImportData(PortletDataContext portletDataContext, String portletId,
        PortletPreferences portletPreferences, String data) throws Exception {

    portletDataContext.importPermissions("com.liferay.portlet.wiki", portletDataContext.getSourceGroupId(),
            portletDataContext.getScopeGroupId());

    Document document = SAXReaderUtil.read(data);

    Element rootElement = document.getRootElement();

    Element nodesElement = rootElement.element("nodes");

    for (Element nodeElement : nodesElement.elements("node")) {
        String path = nodeElement.attributeValue("path");

        if (!portletDataContext.isPathNotProcessed(path)) {
            continue;
        }//from   w ww.ja  v a 2 s .  c  o  m

        WikiNode node = (WikiNode) portletDataContext.getZipEntryAsObject(path);

        importNode(portletDataContext, node);
    }

    Element pagesElement = rootElement.element("pages");

    JournalPortletDataHandlerImpl.importReferencedData(portletDataContext, pagesElement);

    for (Element pageElement : pagesElement.elements("page")) {
        String path = pageElement.attributeValue("path");

        if (!portletDataContext.isPathNotProcessed(path)) {
            continue;
        }

        WikiPage page = (WikiPage) portletDataContext.getZipEntryAsObject(path);

        importPage(portletDataContext, pageElement, page);
    }

    Map<Long, Long> nodePKs = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(WikiNode.class);

    for (long nodeId : nodePKs.values()) {
        WikiCacheUtil.clearCache(nodeId);
    }

    return null;
}

From source file:com.liferay.randombibleverse.util.RBVUtil.java

License:Open Source License

private RBVUtil() {
    Document document = null;//from   w  w w  . j  a v  a  2 s .  c om

    try {
        ClassLoader classLoader = getClass().getClassLoader();

        URL url = classLoader
                .getResource("com/liferay/randombibleverse/dependencies/" + "random_bible_verse.xml");

        document = SAXReaderUtil.read(url);
    } catch (Exception e) {
        _log.error(e, e);
    }

    _bibles = new LinkedHashMap<String, Bible>();
    _verses = new ArrayList<String>();

    Element rootElement = document.getRootElement();

    Element biblesElement = rootElement.element("bibles");

    List<Element> bibleElements = biblesElement.elements("bible");

    for (Element bibleElement : bibleElements) {
        _bibles.put(bibleElement.attributeValue("language"), new Bible(bibleElement.attributeValue("language"),
                bibleElement.attributeValue("language-name"), bibleElement.attributeValue("version-id")));
    }

    _bibles = Collections.unmodifiableMap(_bibles);

    Element versesElement = rootElement.element("verses");

    List<Element> verseElements = versesElement.elements("verse");

    for (Element verseElement : verseElements) {
        _verses.add(verseElement.attributeValue("location"));
    }

    _verses = Collections.unmodifiableList(_verses);
}

From source file:com.liferay.resourcesimporter.util.FileSystemImporter.java

License:Open Source License

protected boolean isJournalStructureXSD(String xsd) throws Exception {
    Document document = SAXReaderUtil.read(xsd);

    Element rootElement = document.getRootElement();

    Attribute availableLocalesAttribute = rootElement.attribute("available-locales");

    if (availableLocalesAttribute == null) {
        return true;
    }// w w w  .  j  a va 2 s .c o  m

    return false;
}

From source file:com.liferay.roles.admin.demo.data.creator.internal.BaseRoleDemoDataCreator.java

License:Open Source License

public void addPermissions(Role role, String permissionsXML, int scope, String primKey) throws PortalException {

    try {//from   w w w  .j a  v  a2s  .  co m
        Document document = SAXReaderUtil.read(permissionsXML);

        Element rootElement = document.getRootElement();

        List<Element> resources = rootElement.elements("resource");

        for (Element resource : resources) {
            String resourceName = resource.elementText("resource-name");

            List<Element> actionIds = resource.elements("action-id");

            for (Element actionId : actionIds) {
                addResourcePermission(role, resourceName, scope, primKey, actionId.getText());
            }
        }
    } catch (Exception e) {
        throw new PortalException(e);
    }
}

From source file:com.liferay.sample.adt.hook.events.StartupAction.java

License:Open Source License

public List<Element> getSampleTemplateElements() throws Exception {
    Class<?> clazz = getClass();

    String xml = StringUtil.read(clazz.getClassLoader(), _TEMPLATES_CONFIG_PATH, false);

    Document document = SAXReaderUtil.read(xml);

    Element rootElement = document.getRootElement();

    return rootElement.elements("template");
}

From source file:com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.java

License:Open Source License

protected void importSitePortlets(PortletDataContext portletDataContext, List<Element> sitePortletElements)
        throws Exception {

    Map<Long, Layout> layouts = (Map<Long, Layout>) portletDataContext
            .getNewPrimaryKeysMap(Layout.class + ".layout");

    Map<String, String[]> parameterMap = portletDataContext.getParameterMap();

    boolean permissions = MapUtil.getBoolean(parameterMap, PortletDataHandlerKeys.PERMISSIONS);

    ServiceContext serviceContext = ServiceContextThreadLocal.getServiceContext();

    LayoutCache layoutCache = new LayoutCache();

    for (Element portletElement : sitePortletElements) {
        String portletPath = portletElement.attributeValue("path");
        String portletId = portletElement.attributeValue("portlet-id");
        long layoutId = GetterUtil.getLong(portletElement.attributeValue("layout-id"));
        long oldPlid = GetterUtil.getLong(portletElement.attributeValue("old-plid"));

        Portlet portlet = _portletLocalService.getPortletById(portletDataContext.getCompanyId(), portletId);

        if (!portlet.isActive() || portlet.isUndeployedPortlet()) {
            continue;
        }//from ww w. j  ava 2s  .  c o  m

        Layout layout = layouts.get(layoutId);

        long plid = LayoutConstants.DEFAULT_PLID;

        if (layout != null) {
            if (SitesUtil.isLayoutModifiedSinceLastMerge(layout)) {
                continue;
            }

            plid = layout.getPlid();
        }

        portletDataContext.setPlid(plid);
        portletDataContext.setOldPlid(oldPlid);
        portletDataContext.setPortletId(portletId);

        if (BackgroundTaskThreadLocal.hasBackgroundTask()) {
            _portletDataHandlerStatusMessageSender.sendStatusMessage("portlet", portletId,
                    portletDataContext.getManifestSummary());
        }

        Document portletDocument = SAXReaderUtil.read(portletDataContext.getZipEntryAsString(portletPath));

        portletElement = portletDocument.getRootElement();

        // The order of the import is important. You must always import the
        // portlet preferences first, then the portlet data, then the
        // portlet permissions. The import of the portlet data assumes that
        // portlet preferences already exist.

        _exportImportHelper.setPortletScope(portletDataContext, portletElement);

        long portletPreferencesGroupId = portletDataContext.getGroupId();

        Element portletDataElement = portletElement.element("portlet-data");

        Map<String, Boolean> importPortletControlsMap = _exportImportHelper.getImportPortletControlsMap(
                portletDataContext.getCompanyId(), portletId, portletDataContext.getParameterMap(),
                portletDataElement, portletDataContext.getManifestSummary());

        if (layout != null) {
            portletPreferencesGroupId = layout.getGroupId();
        }

        try {
            _exportImportLifecycleManager.fireExportImportLifecycleEvent(EVENT_PORTLET_IMPORT_STARTED,
                    getProcessFlag(), portletDataContext.getExportImportProcessId(),
                    _portletDataContextFactory.clonePortletDataContext(portletDataContext));

            // Portlet preferences

            _portletImportController.importPortletPreferences(portletDataContext,
                    portletDataContext.getCompanyId(), portletPreferencesGroupId, layout, portletElement, false,
                    importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_ARCHIVED_SETUPS),
                    importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_DATA),
                    importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_SETUP),
                    importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_USER_PREFERENCES));

            // Portlet data

            if (importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_DATA)) {

                _portletImportController.importPortletData(portletDataContext, portletDataElement);
            }

            _exportImportLifecycleManager.fireExportImportLifecycleEvent(EVENT_PORTLET_IMPORT_SUCCEEDED,
                    getProcessFlag(), portletDataContext.getExportImportProcessId(),
                    _portletDataContextFactory.clonePortletDataContext(portletDataContext));
        } catch (Throwable t) {
            _exportImportLifecycleManager.fireExportImportLifecycleEvent(EVENT_PORTLET_IMPORT_FAILED,
                    getProcessFlag(), portletDataContext.getExportImportProcessId(),
                    _portletDataContextFactory.clonePortletDataContext(portletDataContext), t);

            throw t;
        } finally {
            _portletImportController.resetPortletScope(portletDataContext, portletPreferencesGroupId);
        }

        // Portlet permissions

        if (permissions) {
            _permissionImporter.importPortletPermissions(layoutCache, portletDataContext.getCompanyId(),
                    portletDataContext.getGroupId(), serviceContext.getUserId(), layout, portletElement,
                    portletId);
        }

        // Archived setups

        _portletImportController.importPortletPreferences(portletDataContext, portletDataContext.getCompanyId(),
                portletDataContext.getGroupId(), null, portletElement, false,
                importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_ARCHIVED_SETUPS),
                importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_DATA),
                importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_SETUP),
                importPortletControlsMap.get(PortletDataHandlerKeys.PORTLET_USER_PREFERENCES));
    }
}