001
014
015 package com.liferay.portal.kernel.management.jmx;
016
017 import com.liferay.portal.kernel.bean.PortalBeanLocatorUtil;
018 import com.liferay.portal.kernel.management.ManageAction;
019
020 import java.util.concurrent.atomic.AtomicReference;
021
022 import javax.management.MBeanServer;
023
024
027 public abstract class BaseJMXManageAction<T> implements ManageAction<T> {
028
029 protected MBeanServer getMBeanServer() {
030 MBeanServer mBeanServer = _mBeanServerReference.get();
031
032 if (mBeanServer == null) {
033 mBeanServer = (MBeanServer)PortalBeanLocatorUtil.locate(
034 "mBeanServer");
035
036 _mBeanServerReference.compareAndSet(null, mBeanServer);
037 }
038
039 return mBeanServer;
040 }
041
042 private static AtomicReference<MBeanServer> _mBeanServerReference =
043 new AtomicReference<MBeanServer>();
044
045 }