package br.mp.mprj.portal.portlet.gestaomensagens.service.service;

import com.liferay.portal.kernel.bean.PortletBeanLocatorUtil;
import com.liferay.portal.kernel.util.ReferenceRegistry;
import com.liferay.portal.service.InvokableService;

/**
 * Provides the remote service utility for Template. This utility wraps
 * {@link br.mp.mprj.portal.portlet.gestaomensagens.service.service.impl.TemplateServiceImpl} and is the
 * primary access point for service operations in application layer code running
 * on a remote server. Methods of this service are expected to have security
 * checks based on the propagated JAAS credentials because this service can be
 * accessed remotely.
 *
 * @author Henrique Simoes
 * @see TemplateService
 * @see br.mp.mprj.portal.portlet.gestaomensagens.service.service.base.TemplateServiceBaseImpl
 * @see br.mp.mprj.portal.portlet.gestaomensagens.service.service.impl.TemplateServiceImpl
 * @generated
 */
public class TemplateServiceUtil {
    private static TemplateService _service;

    /*
     * NOTE FOR DEVELOPERS:
     *
     * Never modify this class directly. Add custom service methods to {@link br.mp.mprj.portal.portlet.gestaomensagens.service.service.impl.TemplateServiceImpl} and rerun ServiceBuilder to regenerate this class.
     */

    /**
    * Returns the Spring bean ID for this bean.
    *
    * @return the Spring bean ID for this bean
    */
    public static java.lang.String getBeanIdentifier() {
        return getService().getBeanIdentifier();
    }

    /**
    * Sets the Spring bean ID for this bean.
    *
    * @param beanIdentifier the Spring bean ID for this bean
    */
    public static void setBeanIdentifier(java.lang.String beanIdentifier) {
        getService().setBeanIdentifier(beanIdentifier);
    }

    public static java.lang.Object invokeMethod(java.lang.String name,
        java.lang.String[] parameterTypes, java.lang.Object[] arguments)
        throws java.lang.Throwable {
        return getService().invokeMethod(name, parameterTypes, arguments);
    }

    public static br.mp.mprj.portal.portlet.gestaomensagens.ws.vo.ModeloRetorno getTemplatePorNome(
        java.lang.String nome) {
        return getService().getTemplatePorNome(nome);
    }

    public static void clearService() {
        _service = null;
    }

    public static TemplateService getService() {
        if (_service == null) {
            InvokableService invokableService = (InvokableService) PortletBeanLocatorUtil.locate(ClpSerializer.getServletContextName(),
                    TemplateService.class.getName());

            if (invokableService instanceof TemplateService) {
                _service = (TemplateService) invokableService;
            } else {
                _service = new TemplateServiceClp(invokableService);
            }

            ReferenceRegistry.registerReference(TemplateServiceUtil.class,
                "_service");
        }

        return _service;
    }

    /**
     * @deprecated As of 6.2.0
     */
    public void setService(TemplateService service) {
    }
}
