List of usage examples for com.liferay.portal.kernel.bean ClassLoaderBeanHandler getBean
public Object getBean()
From source file:com.bvakili.portlet.integration.box.service.impl.BoxRepositoryLocalServiceImpl.java
License:Open Source License
protected BoxRepository getBoxRepository(long repositoryId) throws PortalException, SystemException { Repository repositoryImpl = repositoryLocalService.getRepositoryImpl(repositoryId); BoxRepositoryHandler repo = null;/*from w ww .ja v a 2 s . c om*/ BoxRepository retVal = null; // CMISRepositoryHandler cmisRepositoryHandler = null; // // if (repositoryImpl instanceof CMISRepositoryHandler) { // cmisRepositoryHandler = (CMISRepositoryHandler)repositoryImpl; // } // else if (repositoryImpl instanceof BaseRepositoryProxyBean) { // BaseRepositoryProxyBean baseRepositoryProxyBean = // (BaseRepositoryProxyBean)repositoryImpl; // // ClassLoaderBeanHandler classLoaderBeanHandler = // (ClassLoaderBeanHandler)ProxyUtil.getInvocationHandler( // baseRepositoryProxyBean.getProxyBean()); // // Object bean = classLoaderBeanHandler.getBean(); // // if (bean instanceof CMISRepositoryHandler) { // cmisRepositoryHandler = (CMISRepositoryHandler)bean; // } // } // // BoxRepository cmisRepository = // (BoxRepository)cmisRepositoryHandler.getCmisRepository(); // // return cmisRepository; if (repositoryImpl instanceof BoxRepository) { repo = (BoxRepositoryHandler) repositoryImpl; } else if (repositoryImpl instanceof BaseRepositoryProxyBean) { BaseRepositoryProxyBean baseRepositoryProxyBean = (BaseRepositoryProxyBean) repositoryImpl; ClassLoaderBeanHandler classLoaderBeanHandler = (ClassLoaderBeanHandler) ProxyUtil .getInvocationHandler(baseRepositoryProxyBean.getProxyBean()); Object bean = classLoaderBeanHandler.getBean(); if (bean instanceof BoxRepositoryHandler) { repo = (BoxRepositoryHandler) bean; } } retVal = (BoxRepository) repo.getBoxRepository(); return retVal; }
From source file:com.liferay.osb.scv.connector.internal.jsonws.SCVUserJSONWS.java
License:Open Source License
protected void initServiceTracker() throws Exception { _serviceTracker = ServiceTrackerFactory.open(_bundleContext, SCVModel.class, new ServiceTrackerCustomizer<SCVModel, SCVModel>() { @Override/* w w w . j a va2 s. c o m*/ public SCVModel addingService(ServiceReference<SCVModel> serviceReference) { SCVModel scvModel = _bundleContext.getService(serviceReference); Class<?> clazz = getModelClass(scvModel); _scvModelMap.put(clazz.getSimpleName(), scvModel); _modelClasses.put(clazz.getSimpleName(), getModelClass(scvModel)); ModelListenerRegistrationUtil.register(scvModel); return scvModel; } @Override public void modifiedService(ServiceReference<SCVModel> serviceReference, SCVModel scvModel) { removedService(serviceReference, scvModel); addingService(serviceReference); } @Override public void removedService(ServiceReference<SCVModel> serviceReference, SCVModel scvModel) { Class<?> clazz = getModelClass(scvModel); _scvModelMap.remove(clazz.getSimpleName(), scvModel); _modelClasses.remove(clazz.getSimpleName(), getModelClass(scvModel)); ModelListenerRegistrationUtil.unregister(scvModel); _bundleContext.ungetService(serviceReference); } protected Class<?> getModelClass(SCVModel scvModel) { Class<?> clazz = scvModel.getClass(); if (ProxyUtil.isProxyClass(clazz)) { InvocationHandler invocationHandler = ProxyUtil.getInvocationHandler(scvModel); if (invocationHandler instanceof ClassLoaderBeanHandler) { ClassLoaderBeanHandler classLoaderBeanHandler = (ClassLoaderBeanHandler) invocationHandler; Object bean = classLoaderBeanHandler.getBean(); clazz = bean.getClass(); } } return ReflectionUtil.getGenericSuperType(clazz); } }); }
From source file:com.liferay.portlet.display.template.internal.PortletDisplayTemplateImpl.java
License:Open Source License
@Override public List<TemplateHandler> getPortletDisplayTemplateHandlers() { List<TemplateHandler> templateHandlers = TemplateHandlerRegistryUtil.getTemplateHandlers(); List<TemplateHandler> portletDisplayTemplateHandlers = new ArrayList<>(); for (TemplateHandler templateHandler : templateHandlers) { if (templateHandler instanceof BasePortletDisplayTemplateHandler) { portletDisplayTemplateHandlers.add(templateHandler); } else if (ProxyUtil.isProxyClass(templateHandler.getClass())) { InvocationHandler invocationHandler = ProxyUtil.getInvocationHandler(templateHandler); if (invocationHandler instanceof ClassLoaderBeanHandler) { ClassLoaderBeanHandler classLoaderBeanHandler = (ClassLoaderBeanHandler) invocationHandler; Object bean = classLoaderBeanHandler.getBean(); if (bean instanceof BasePortletDisplayTemplateHandler) { portletDisplayTemplateHandlers.add(templateHandler); }/*from www. ja v a 2 s .c o m*/ } } } return portletDisplayTemplateHandlers; }
From source file:jorgediazest.util.reflection.ReflectionUtil.java
License:Open Source License
public static Object unWrapProxy(Object object) { if (object == null) { return null; }/*w ww . ja va 2s .c om*/ if (object instanceof Proxy) { try { ClassLoaderBeanHandler classLoaderBeanHandler = (ClassLoaderBeanHandler) Proxy .getInvocationHandler(object); object = classLoaderBeanHandler.getBean(); } catch (Exception e) { if (_log.isDebugEnabled()) { _log.debug(e, e); } } } return object; }