Example usage for com.liferay.portal.kernel.xml Node compactString

List of usage examples for com.liferay.portal.kernel.xml Node compactString

Introduction

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

Prototype

public String compactString() throws IOException;

Source Link

Usage

From source file:com.beorn.onlinepayment.messaging.messageprocessor.RegisterMessageProcessor.java

License:Open Source License

private PaymentPlugin registerPaymentPlugin(Document document, String applicationId,
        ServletContext servletContext, ServiceContext serviceContext) throws PortalException, SystemException {

    Node nameNode = document.selectSingleNode("/plugin/name");
    Node pluginConfigParametersNode = document.selectSingleNode("/plugin/pluginConfig");
    Node sellerConfigParametersNode = document.selectSingleNode("/plugin/sellerConfig");

    rewriteConfigurationForLocalization(pluginConfigParametersNode);
    rewriteConfigurationForLocalization(sellerConfigParametersNode);

    checkConfigDescription(pluginConfigParametersNode, sellerConfigParametersNode);

    Map<Locale, String> nameMap = getLocalizationMap(nameNode);

    String pluginConfigParameters = null;
    String sellerConfigParameters = null;
    try {//from w  w w.j a va 2 s . c  o  m
        if (pluginConfigParametersNode != null)
            pluginConfigParameters = XML_VERSION_1_0 + pluginConfigParametersNode.compactString();

        if (sellerConfigParametersNode != null)
            sellerConfigParameters = XML_VERSION_1_0 + sellerConfigParametersNode.compactString();

    } catch (IOException e) {
        throw new SystemException(e);
    }

    PaymentPlugin paymentPlugin;
    try {
        paymentPlugin = PaymentPluginLocalServiceUtil.getPaymentPluginByApplicationId(applicationId);

        PaymentSystemPluginSender paymentSystemPluginSender = PaymentSystemUtil.getMessagingContext()
                .getPaymentSystemPluginSender();

        boolean configured = paymentPlugin.isConfigured();
        if (Validator.isNull(pluginConfigParameters)) {
            configured = true;

        } else if (paymentPlugin.isConfigured() && !paymentSystemPluginSender.validateConfig(applicationId,
                paymentPlugin.getPluginConfig(), false)) {

            configured = false;

            _log.info("Payment plugin config for plugin " + paymentPlugin.getPaymentPluginId()
                    + " is now invalid.");
        }

        paymentPlugin = PaymentPluginLocalServiceUtil.updatePaymentPlugin(paymentPlugin.getPaymentPluginId(),
                applicationId, nameMap, pluginConfigParameters, sellerConfigParameters,
                paymentPlugin.getPluginConfig(), configured, serviceContext);

        revalidatePaymentPluginConfigs(applicationId, paymentPlugin, paymentSystemPluginSender, serviceContext);

    } catch (NoSuchPluginException e) {
        paymentPlugin = PaymentPluginLocalServiceUtil.addPaymentPlugin(serviceContext.getUserId(),
                applicationId, nameMap, pluginConfigParameters, sellerConfigParameters, serviceContext);
    }

    return paymentPlugin;
}