org.apache.solr.core
Class JmxMonitoredMap<K,V>

java.lang.Object
  extended by java.util.AbstractMap<K,V>
      extended by java.util.concurrent.ConcurrentHashMap<String,SolrInfoMBean>
          extended by org.apache.solr.core.JmxMonitoredMap<K,V>
All Implemented Interfaces:
Serializable, ConcurrentMap<String,SolrInfoMBean>, Map<String,SolrInfoMBean>

public class JmxMonitoredMap<K,V>
extends ConcurrentHashMap<String,SolrInfoMBean>

Responsible for finding (or creating) a MBeanServer from given configuration and registering all SolrInfoMBean objects with JMX.

Please see http://wiki.apache.org/solr/SolrJmx for instructions on usage and configuration

Since:
solr 1.3
See Also:
SolrConfig.JmxConfiguration, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
JmxMonitoredMap(String coreName, String coreHashCode, SolrConfig.JmxConfiguration jmxConfig)
           
 
Method Summary
 void clear()
          Clears the map and unregisters all SolrInfoMBeans in the map from MBeanServer
 MBeanServer getServer()
          For test verification
 SolrInfoMBean put(String key, SolrInfoMBean infoBean)
          Adds the SolrInfoMBean to the map and registers the given SolrInfoMBean instance with the MBeanServer defined for this core.
 SolrInfoMBean remove(Object key)
          Removes the SolrInfoMBean object at the given key and unregisters it from MBeanServer
 
Methods inherited from class java.util.concurrent.ConcurrentHashMap
contains, containsKey, containsValue, elements, entrySet, get, isEmpty, keys, keySet, putAll, putIfAbsent, remove, replace, replace, size, values
 
Methods inherited from class java.util.AbstractMap
clone, equals, hashCode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

JmxMonitoredMap

public JmxMonitoredMap(String coreName,
                       String coreHashCode,
                       SolrConfig.JmxConfiguration jmxConfig)
Method Detail

clear

public void clear()
Clears the map and unregisters all SolrInfoMBeans in the map from MBeanServer

Specified by:
clear in interface Map<String,SolrInfoMBean>
Overrides:
clear in class ConcurrentHashMap<String,SolrInfoMBean>

put

public SolrInfoMBean put(String key,
                         SolrInfoMBean infoBean)
Adds the SolrInfoMBean to the map and registers the given SolrInfoMBean instance with the MBeanServer defined for this core. If a SolrInfoMBean is already registered with the MBeanServer then it is unregistered and then re-registered.

Specified by:
put in interface Map<String,SolrInfoMBean>
Overrides:
put in class ConcurrentHashMap<String,SolrInfoMBean>
Parameters:
key - the JMX type name for this SolrInfoMBean
infoBean - the SolrInfoMBean instance to be registered

remove

public SolrInfoMBean remove(Object key)
Removes the SolrInfoMBean object at the given key and unregisters it from MBeanServer

Specified by:
remove in interface Map<String,SolrInfoMBean>
Overrides:
remove in class ConcurrentHashMap<String,SolrInfoMBean>
Parameters:
key - the JMX type name for this SolrInfoMBean

getServer

public MBeanServer getServer()
For test verification



Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.