package org.mobicents.slee.services.sip.common; import javax.management.MBeanServer; import javax.management.ObjectInstance; import javax.management.ObjectName; import org.mobicents.slee.container.SleeContainer; public class ConfigurationProvider { /** * Creates a copy of current proxy configuration MBean - its values are copied, so for we can have its image * which can be used during whole call. Subsequent calls can return different copy. * @return */ public static Object getCopy(String prefix,String name) { return getCopy(prefix+name); } public static Object getCopy(String mBeanName) { MBeanServer mbs = SleeContainer.lookupFromJndi().getMBeanServer(); try { ObjectName on=new ObjectName(mBeanName); ObjectInstance oi=mbs.getObjectInstance(on); Object o=mbs.invoke(on, "clone", null, null); return o; } catch (Exception e) { e.printStackTrace(); } return null; } }