Example usage for com.liferay.portal.kernel.portlet PortletBag clone

List of usage examples for com.liferay.portal.kernel.portlet PortletBag clone

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.portlet PortletBag clone.

Prototype

public Object clone();

Source Link

Usage

From source file:com.liferay.opensocial.service.impl.GadgetLocalServiceImpl.java

License:Open Source License

protected Portlet getPortlet(String uuid, long companyId, String name) throws Exception {

    Portlet portlet = _portletsPool.get(uuid);

    if (portlet != null) {
        return portlet;
    }// w  ww.j  av a  2s.  c o m

    String portletId = getPortletId(uuid);

    portlet = PortletLocalServiceUtil.clonePortlet(_GADGET_PORTLET_ID);

    portlet.setCompanyId(companyId);
    portlet.setPortletId(portletId);

    PortletApp portletApp = PortletLocalServiceUtil.getPortletApp(ClpSerializer.getServletContextName());

    portlet.setPortletApp(portletApp);

    portlet.setPortletName(portletId);
    portlet.setDisplayName(portletId);
    portlet.setPortletClass(GadgetPortlet.class.getName());

    Map<String, String> initParams = portlet.getInitParams();

    initParams.put(InvokerPortlet.INIT_INVOKER_PORTLET_NAME, _GADGET_PORTLET_NAME);

    addPortletExtraInfo(portlet, portletApp, name);

    _portletsPool.put(uuid, portlet);

    PortletBag portletBag = PortletBagPool.get(_GADGET_PORTLET_ID);

    portletBag = (PortletBag) portletBag.clone();

    portletBag.setPortletName(portletId);
    portletBag.setPortletInstance(new GadgetPortlet());

    PortletBagPool.put(portletId, portletBag);

    return portlet;
}

From source file:com.liferay.wsrp.service.impl.WSRPConsumerPortletLocalServiceImpl.java

License:Open Source License

protected Portlet getPortlet(long companyId, long wsrpConsumerId, String wsrpConsumerPortletUuid, String name,
        String portletHandle) throws Exception {

    Portlet portlet = _portletsPool.get(wsrpConsumerPortletUuid);

    if ((portlet != null) && portlet.isActive()) {
        return portlet;
    }//from  w w w.  ja v a2  s.  c om

    String portletId = getPortletId(wsrpConsumerPortletUuid);

    portlet = PortletLocalServiceUtil.clonePortlet(_CONSUMER_PORTLET_ID);

    portlet.setCompanyId(companyId);
    portlet.setPortletId(portletId);

    PortletApp portletApp = PortletLocalServiceUtil.getPortletApp(ClpSerializer.getServletContextName());

    portlet.setPortletApp(portletApp);

    portlet.setPortletName(portletId);
    portlet.setDisplayName(portletId);

    Map<String, String> initParams = portlet.getInitParams();

    initParams.put(InvokerPortlet.INIT_INVOKER_PORTLET_NAME, _CONSUMER_PORTLET_NAME);

    WSRPConsumer wsrpConsumer = wsrpConsumerPersistence.findByPrimaryKey(wsrpConsumerId);

    PortletDescription portletDescription = null;

    try {
        WSRPConsumerManager wsrpConsumerManager = WSRPConsumerManagerFactory
                .getWSRPConsumerManager(wsrpConsumer);

        portletDescription = wsrpConsumerManager.getPortletDescription(portletHandle);
    } catch (Exception e) {
        if (_log.isWarnEnabled()) {
            _log.warn("Unable to connect to WSRP producer for portlet " + wsrpConsumerPortletUuid, e);
        }
    }

    if (portletDescription != null) {
        addPortletExtraInfo(portlet, portletApp, portletDescription, name);

        portlet.setActive(true);
    } else {
        PortletInfo portletInfo = new PortletInfo(name, name, StringPool.BLANK, StringPool.BLANK);

        portlet.setPortletInfo(portletInfo);
    }

    _portletsPool.put(wsrpConsumerPortletUuid, portlet);

    PortletBag portletBag = PortletBagPool.get(_CONSUMER_PORTLET_ID);

    portletBag = (PortletBag) portletBag.clone();

    portletBag.setPortletName(portletId);

    ConsumerPortlet consumerPortletInstance = getConsumerPortletInstance(portlet);

    portletBag.setPortletInstance(consumerPortletInstance);

    PortletBagPool.put(portletId, portletBag);

    return portlet;
}