org.javasimon.spring
Class ManagerFactoryBean

java.lang.Object
  extended by org.javasimon.spring.ManagerFactoryBean
All Implemented Interfaces:
org.springframework.beans.factory.FactoryBean<Manager>

public class ManagerFactoryBean
extends Object
implements org.springframework.beans.factory.FactoryBean<Manager>

Factory bean which produces Simon manager. Spring configuration:

<bean id="jmxServer" class="org.springframework.jmx.support.MBeanServerFactoryBean">
     <property name="locateExistingServerIfPossible" value="true"/>
 </bean>
 <bean id="simonManager" class="org.javasimon.spring.ManagerFactoryBean">
     <property name="callbacks">
         <list>
             <bean class="org.javasimon.jmx.JmxRegisterCallback">
                 <constructor-arg ref="jmxServer"/>
                 <constructor-arg value="org.javasimon"/>
             </bean>
             <bean class="org.javasimon.utils.LoggingCallback"/>
         </list>
     </property>
 </bean>
 <bean id="simonInterceptor" class="org.javasimon.spring.MonitoringInterceptor">
     <property name="manager" ref="simonManager"/>
 </bean>
 

Author:
gquintana

Field Summary
private  List<Callback> callbacks
          List of callbacks to add to the manager
private  boolean enabled
          Flag indicated whether Simon manager should enabled or not.
private  boolean singleton
          Flag indicating whether Simon manager singleton should be used.
 
Constructor Summary
ManagerFactoryBean()
           
 
Method Summary
private  void configureEnabled(Manager manager)
          When needed toggle the enabled flag of given Simon manager
 List<Callback> getCallbacks()
           
 Manager getObject()
          Get simon manager instance.
 Class<?> getObjectType()
           
 boolean isEnabled()
           
 boolean isSingleton()
           
private  void registerCallbacks(Manager manager)
          Register callbacks in given manager
 void setCallbacks(List<Callback> callbacks)
           
 void setEnabled(boolean enabled)
           
 void setSingleton(boolean singleton)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

singleton

private boolean singleton
Flag indicating whether Simon manager singleton should be used. Defaults to true.


callbacks

private List<Callback> callbacks
List of callbacks to add to the manager


enabled

private boolean enabled
Flag indicated whether Simon manager should enabled or not. Defaults to true.

Constructor Detail

ManagerFactoryBean

public ManagerFactoryBean()
Method Detail

getObject

public Manager getObject()
                  throws Exception
Get simon manager instance. If singleton is enabled SimonManager.manager() is invoked else new Manager is created. Then callbacks are appended to this manager

Specified by:
getObject in interface org.springframework.beans.factory.FactoryBean<Manager>
Returns:
Simon manager
Throws:
Exception

getObjectType

public Class<?> getObjectType()
Specified by:
getObjectType in interface org.springframework.beans.factory.FactoryBean<Manager>
Returns:
Always Manager class

isSingleton

public boolean isSingleton()
Specified by:
isSingleton in interface org.springframework.beans.factory.FactoryBean<Manager>

setSingleton

public void setSingleton(boolean singleton)

registerCallbacks

private void registerCallbacks(Manager manager)
Register callbacks in given manager

Parameters:
manager - Manager

getCallbacks

public List<Callback> getCallbacks()

setCallbacks

public void setCallbacks(List<Callback> callbacks)

configureEnabled

private void configureEnabled(Manager manager)
When needed toggle the enabled flag of given Simon manager

Parameters:
manager - Simon manager

isEnabled

public boolean isEnabled()

setEnabled

public void setEnabled(boolean enabled)


Copyright © 2012. All Rights Reserved.